wesphere 6.1的时候,是可以将日志写到日志文件的,但给websphere打个小补丁之后,日志文件里没有任何日志,该日志都在system.out.log里,其中有一个日志文件里有内容,该日志文件在程序里写日志的方式是用org.apache.log4j.Logger,其他日志文件没有日志的,在程序里是用org.apache.commons.logging.Log写日志的,请高手指教,这是什么原因引起的???
------解决方案--------------------------------------------------------
没遇到过这种情况,真没办法,帮顶吧~
------解决方案--------------------------------------------------------
没人知道吗?再补充一点,在他升级之后,还装了一个证书。因为以前不能从控制台启停应用。只能用命令去启停,但现在这个问题解决了,就出现日志没有写到日志文件里,跑到system.out.log里面去了。这问题比较级呀,因为现在该系统已上生产了。请高手们赐教。
------解决方案--------------------------------------------------------
不清楚。
怀疑类路径错乱,就是某个东西有多个版本存在。首先我们的程序要保证不要什么东西都往 $WAS_HOME/lib 下面放,如果依赖一个第三方库的集合 (比如,用到 aspectj, spring, hibernate),我们应该创建一个 Shared Library,然后在部署 EAR 时选择为这个 EAR 链接到一个 Shared Library,在 WebSphere V51 上好像是要在这个 server 上创建一个 Class Loader 让它使用这个 Shared Library 里面的 jar 列表并在部署时配置给 EAR,WebSphere V7 上不需要手工创建 Class Loader 而只是在部署时链接到它。
把第3方库全丢到 $WAS_HOME/lib 下可能有隐患,另外手工修改 bat 里面加上 ws.ext.dirs 里面的东西赞同把这些 jar 复制到 $WAS_HOME/lib 下的效果。
------解决方案--------------------------------------------------------
修正: ... ws.ext.dirs 里面的东西“等同”把这些 jar 复制到 $WAS_HOME/lib 下的效果。
------解决方案--------------------------------------------------------
首先很感谢三楼的回复,有一点不明白的地方,就是“另外手工修改 bat ……”这句话的意思,请问该文件在哪里,怎么去修改