IBM Webpshere6(WAS6) bug发现一例

IBM Webpshere6(WAS6) bug发现一例

对于没有EJBJ2EE工程,打包发布都不会遇到太大的问题,因此,在我们项目组,开发测试都只有TOMCAT下进行,而后直接将能用于TOMCAT下的WAR包发布到WAS中(在我前面的文章中曾写过这方面的移植问题),整个过程应该还算简单。但最近我们对原有一个项目进行了一些修改(原项目已在WAS下稳定运行),改得不多,只是用AXIS将其中的一些服务发布成了WEB SERVICES,因此无非是在LIB下加了一些包,在WEB-INF下加了一些配置文件,最多再多加了一些原文件而已,同样打成的WAR包在TOMCAT下一切正常,可再发布到WAS时,发生了意想不到的问题...应该说发布过程(通过管理控制台发布)很正常,甚至应用也启动了,但却无法访问,NOT FOUND!很显然是应用并没启动!(WAS就是这样,很多东西非得看日志才知道真实状态),查看日志,发现有很多SERVLET类没找到,再到installedApp下看应用,怪事,发布的应用下少了很多文件,WEB-INF下的LIB目录不见了,CLASSES下也只有几个类文件,WEB-INF下也只有两个.xml文件,一些自定义的配置文件也不见了,为什么少了这么多文件但还发布正常呢?看看日志,没有任何相关的信息,按以下途径找问题:


1
、看看cells下的ear包,发现里面东西是完整的,因此,打包上传过程应该没有问题
2
、压缩包损坏?不可能,要坏了应该一个文件也出不来
3
、压缩包版本不兼容?(有可能,因为WAS是用IBMJDK),可又不可能,为什么以前的包又可以呢?虽说不可能,但还抱一些希望,分别用SUN jdk142IBM jdk142打包,现象依旧。
4
、怀疑压缩包里文件有问题,导致解压COPY途中出问题(但出了问题为什么没有提示?甚至连日志都没有!),还是试试,先后将lib,classes目录清除,再逐个加入,还真发现了问题,是classes里的文件导致COPY过程中止!那会是什么文件呢?按常理这只是一具COPY过程,即使编译后的.class文件有版本问题或是损坏也不应该中止这个过程呀!试着重编译整个系统再打包,还是同样的问题。
5
、只好瞎看看classes下到底有什么文件,慢着,发现了可疑东西,在一些目录中有几个文件名类似如下的文件:".#Acctount.java.1.12",这是CVS产生的历史版本文件,将这几个文件去掉,打包,发布...一切OK

 

这至少说明一个问题,对于庞大的WAS,存在的问题肯定不少:
1
、为什么在TOMCAT下能顺利解压并拷贝文件(即使有几个特殊文件名的文件),而在WAS下不行?(试用了Window/unix下的WAS
2
、为什么解压拷贝异常中止却不给出任何提示?(控制台说布署成功,日志也显示成功),如果给出了提示,至少我认为这不应该算是一个BUG
3
、照目前的现象,应该是WASBUG!可能是开发WAS的的某位老兄捕获异常后什么也没干,依然成功返回了。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章