问题列表 - 第12338页

Tomcat6 webapp使用log4j进行日志记录,无法登录到syslog

我正在尝试将我的webapp日志记录到local4级别的syslog中.环境:Tomcat6,OpenSolaris,Struts2,log4j.我的log4j.properties的内容如下 -

log4j.rootLogger=INFO, SYSLOG
log4j.appender.SYSLOG=org.apache.log4j.net.SyslogAppender
log4j.appender.SYSLOG.syslogHost=localhost
log4j.appender.SYSLOG.layout=org.apache.log4j.PatternLayout
log4j.appender.SYSLOG.layout.ConversionPattern=%d [%t] %-5p - %m%n
log4j.appender.SYSLOG.Facility=local4
Run Code Online (Sandbox Code Playgroud)

我编辑了/etc/syslog.conf并在最后添加了以下行 -

local4.notice              /var/log/mylog.log
Run Code Online (Sandbox Code Playgroud)

在此之后,我重新启动了syslog服务.当我从shell运行以下命令时,它会正确记录在/var/log/mylog.log中.这主要意味着系统日志服务正常运行 -

logger -i -p local4.notice -t "check  log" "test message"
Run Code Online (Sandbox Code Playgroud)

但我完全不明白为什么来自webapp的日志永远不会到达/var/log/mylog.log.我的log4j配置对SysLogAppender是否正确?

当我尝试普通的appender,如"DailyRollingFileAppender"等,日志工作正常..但我只是无法让SyslogAppender工作..

谢谢!-Keshav

java log4j struts2 syslog opensolaris

3
推荐指数
1
解决办法
3284
查看次数

从Ms Ms复制并粘贴到Rich Textbox问题

将ms word内容粘贴到richtextbox时出现问题.

当我复制word文档的内容并将其粘贴到使用C#编写的Windows应用程序中的richtextbox时.链接显示如此;

这是测试..转到谷歌. <http://www.google.com>
邮件:项目 <mailto:cbn@test.com>

也可以通过从word中加载保存的RTF文档来创建该问题.

我怎么能纠正这个,请帮忙..

提前致谢.

ms-word copy-paste richtextbox

6
推荐指数
2
解决办法
2855
查看次数

通用构造函数的好处

为非泛型类设置泛型构造函数有什么好处?Java规范允许以下内容:

class NonGeneric {
  <T> NonGeneric() { }
  ...
  NonGeneric ref = new <String> NonGeneric();
}
Run Code Online (Sandbox Code Playgroud)

可以提出一个现实的例子来说明它何时提升了班级的类型安全性?首先如何比使用Generic更好.

我知道Java设计者希望构造函数与方法更加一致.鉴于构造函数可能有副作用,泛型构造函数可以使用泛型来改变一些不保留引用的参数,如

<T> NonGeneric(T obj, List<T> list) {
  list.add(obj);
  // Don't hold a reference to list
}
Run Code Online (Sandbox Code Playgroud)

java generics polymorphism

9
推荐指数
1
解决办法
3818
查看次数

将byte []数组转换为DataTable

我在类型为varbinary的字段中将DataTable类型的对象保存到SQL 2005数据库中.我想要找回它,但我无法输入它.这就是我拯救它的方式.

MemoryStream memStream = new MemoryStream();
    StreamWriter sw = new StreamWriter(memStream);

sw.Write(dt);
con.Open();
using (SqlCommand cmd = new SqlCommand("INSERT INTO Tables(TableName, TableData, QuestionID) VALUES (@TableName, @TableData, @QuestionID)", con))
{
    cmd.Parameters.Add("@TableName", SqlDbType.VarChar).Value = "a new table";
    cmd.Parameters.Add("@TableData", SqlDbType.VarBinary,Int32.MaxValue).Value = memStream.GetBuffer();
    cmd.Parameters.Add("@QuestionID", SqlDbType.VarChar).Value = "2";
    cmd.ExecuteNonQuery();

}
Run Code Online (Sandbox Code Playgroud)

'dt'是DataTable对象实例.

c# sql ado.net binary-serialization

4
推荐指数
1
解决办法
3万
查看次数

如何从VB.net(或C#)调用sqlserver函数?是否有一些像存储过程的语法?

Public Sub cleanTables(ByVal prOKDel As Short)
     Dim sqlParams(1) As SqlParameter
     Dim sqlProcName As String
     sqlProcName = "db.dbo.sp_mySP"
     sqlParams(1) = New SqlParameter("@OKDel", prOKDel)
     Try
         dbConn.SetCommandTimeOut(0)
         dbConn.ExecuteNonQuery(CommandType.StoredProcedure, sqlProcName, sqlParams)
     Catch ex As Exception

     Finally

     End Try
End Sub
Run Code Online (Sandbox Code Playgroud)

在那儿

 CommandType.StoredProcedure...CommandType.Function
sqlParams(1) = New SqlParameter("@OKDel", prOKDel)...
Run Code Online (Sandbox Code Playgroud)

最后是datatable dt = dbConn.Execute(CommandType.StoredProcedure,sqlProcName,sqlParams)

谢谢

c# vb.net sql-server function

6
推荐指数
2
解决办法
3万
查看次数

Internet Explorer 6模拟器建议

可以推荐哪种好的工具来模拟Internet Explorer 6?我宁愿不必去某处安装Windows XP的旧版本.

testing emulation internet-explorer-6

51
推荐指数
3
解决办法
6万
查看次数

Distinct()与lambda?

是的,所以我有一个可枚举的,并希望从中获得不同的值.

使用System.Linq,当然有一个名为的扩展方法Distinct.在简单的情况下,它可以在没有参数的情况下使用,例如:

var distinctValues = myStringList.Distinct();
Run Code Online (Sandbox Code Playgroud)

好的,但如果我有一个可以指定相等性的可枚举对象,唯一可用的重载是:

var distinctValues = myCustomerList.Distinct(someEqualityComparer);
Run Code Online (Sandbox Code Playgroud)

equality comparer参数必须是.的实例IEqualityComparer<T>.当然,我可以做到这一点,但它有点冗长,而且很有说服力.

我所期望的是一个需要lambda的重载,比如Func <T,T,bool>:

var distinctValues
    = myCustomerList.Distinct((c1, c2) => c1.CustomerId == c2.CustomerId);
Run Code Online (Sandbox Code Playgroud)

任何人都知道是否存在某些此类扩展或某些等效的解决方法?或者我错过了什么?

或者,有没有一种方法可以指定IEqualityComparer内联(embarass me)?

更新

我找到了Anders Hejlsberg对MSDN论坛中关于这个主题的帖子的回复.他说:

您将遇到的问题是,当两个对象比较相等时,它们必须具有相同的GetHashCode返回值(否则Distinct内部使用的哈希表将无法正常运行).我们使用IEqualityComparer,因为它将Equals和GetHashCode的兼容实现打包到一个接口中.

我认为那是有道理的..

c# lambda extension-methods c#-3.0

714
推荐指数
8
解决办法
37万
查看次数

需要gmail如functionailty - jquery autocomplete来包含名称和电子邮件地址 - 在字符串搜索中

我最近问了这个问题并使用jquery获得了一个很好的解决方案来实现自动完成:

需要一种好方法让用户选择"收件人"进行电子邮件发送

解决方案是使用以下语法:

$("#suggest3").autocomplete(someArray, {
    multiple: true,
    mustMatch: true,
    autoFill: true
Run Code Online (Sandbox Code Playgroud)

});

我现在在电子邮件地址列表上有自动完成功能,我需要更进一步映射到gmail之类的功能,其中我在列表中包含"真实"名称和电子邮件地址,以便用户可以输入名称或电子邮件地址,它会找到条目:

因此列表看起来与此类似,用户可以通过键入"Firs ..."进行搜索.或"emailAdd ..."

"First Last" <emailAddress>   
"First1 Las1t" <emailAddress1>   
"First2 Last2" <emailAddress2>   
Run Code Online (Sandbox Code Playgroud)

search jquery autocomplete

6
推荐指数
1
解决办法
1万
查看次数

C#:Shell/Console框架

我正在寻找一个.NET框架来创建一个模拟shell(如cmd)的控制台应用程序,即带有一个输入命令的输入(由我定义).

有人知道这样做的编程示例或框架吗?

c#

-1
推荐指数
1
解决办法
3032
查看次数

WaitHandle.WaitAny和Semaphore类

编辑:我甚至想提出这个问题暂时疯狂,但当时有意义(见下面的编辑2).

对于.NET 3.5项目,我有两种类型的资源(R1R2),我需要检查它的可用性.每种资源类型可以随时(例如)有10个实例.

当其中一种资源可用时,我的工作线程需要唤醒(存在可变数量的线程).在早期的实现中,只有一种资源类型,我使用Semaphore来检查可用性.

现在我需要等待两个单独的信号量(S1S2)来跟踪资源的可用性.

WaitHandle[] waitHandles = new WaitHandle[] { s1, s2 };
int signalledHandle = WaitHandle.WaitAny(waitHandles);

switch (signalledHandle)
{
    case 0:
        // Do stuff
        s1.Release();
    case 1:
        // Do stuff
        s2.Release();
}
Run Code Online (Sandbox Code Playgroud)

然而,这有一个问题.从MSDN文档WaitAny:

如果在调用期间发出多个对象的信号,则返回值是具有所有信号通知对象的索引值最小的信号通知对象的数组索引.

这表明我可能会在打电话后将我的信号量计数减少1 WaitAny.因为signalledHandle将指示s1已发出信号,我将开始使用资源R1,并在完成后释放它.但是,由于我不知道S2是否已发出信号,因此此资源的可用性计数现在可能已关闭.如果发生这种情况10次,我的信号量将永久"空",资源R2将不再使用.

处理这个问题的最佳方法是什么?我是否应该从使用两个信号量切换到简单计数器,并在任何一个计数器更改时发出AutoResetEvent信号?我错过了一些更优雅的方法吗?

编辑1:
根据Ravadre的说法,之后只有一个信号量会被改变WaitAny.略微修改他的例子似乎证实了这一点,但有没有人可以指出我指出这个的一些官方文件?

编辑2:
我在回家的路上想着这个.只有这样,我才意识到,WaitAny任何用途都必须如此.这个问题不仅限于信号量,而是几乎任何类型的同步对象,WaitAny几乎没用.

.net c# multithreading waithandle

6
推荐指数
1
解决办法
6968
查看次数