![]() |
1
2
这可能有点晚,但问题似乎不是日志记录本身是在axis中完成的(通过system.out和commons日志记录),而是 LogHandler 存在于处理程序链中。这就是记录运行时间的方式。 您可以从 Axis configuration file (S)-server-config.wsdd和/或client-config.wsdd,取决于您是将axis用作服务器还是客户机。 在控制台中看到消息的原因可能是loghandler.writeToConsole属性设置为true。如果将loghandler.writetoconsole设置为false,则它应写入由loghandler.filename属性定义的文件中。默认情况下,文件名为axis.log。 |
![]() |
2
1
好的,在试图找到更好的解决方案后,唯一真正的方法是检查旧的遗留代码,并将所有System.Out调用转换为真实的日志语句(无论如何都要好得多),然后简单地将剩余的stdout消息筛选成不同的日志文件。 其中一个主要原因似乎是JBoss本身。 This discussion 从axis2邮件列表中可以解释为什么: 啊,但是你没有提到你在使用JBoss!它几乎是力量 您可以使用它们的父级log4配置。忽略此中的axis2日志记录 案例,见: ~/jboss/server/default/conf/log4j.xml 在那里你必须限制类别。例如,您有:
您可以保持原样,只需将日志从server.log中取出。 我试着设置类别,但没有成功。我想这是因为轴和轴2之间的差异。所以剩下的唯一解决方案就是采用良好的编码方式,不要在自己的代码中使用stdout;-) |
![]() |
3
0
首先,您要检查您的log4j配置实际上是正在读取的配置-我记得在过去,至少有一个axis jar(我认为它可能是
您可以启用系统属性
另外,我不认为这会导致您的问题,但是为什么您要将additivity设置为false? |
![]() |
4
0
问题是,axis没有使用log4j来记录该消息,因此尝试更改该类上的log4j日志级别是不相关的。axis正在使用system.out.println。 我能想到的唯一一件事(考虑到副作用,这确实不太好)是完全关闭stdout注销。可能将优先级设置为“关”就行了。 唯一真正的解决方案是修复axis并修补代码,以避免将XML泵送到system.out,而是使用日志机制-然后您可以控制它。 |
![]() |
5
0
知道正在读取哪个log4j.properties文件或log4j.xml非常重要。正如马特指出的,这对于知道你的调整努力为什么不起作用至关重要。 |