今天晚上,出现了一个神奇的WAS问题,详细问题异常信息如下:
[15-8-6 22:13:29:146 CST] 00000013 ApplicationMg A WSVR0203I: 应用程序:isclite 应用程序构建级别:WAS61.WSC [cf471333.01]
[15-8-6 22:13:32:266 CST] 00000013 CompoundClass E WSVR0120E: 处理 E:\IBM\WebSphere\AppServer\systemApps\isclite.ear\isclite.war\WEB-INF\lib\sibuswsgw-sibuswsgw_console.jar 时发生错误
java.lang.InternalError: jzentry == 0,
jzfile = 196639408,
total = 80,
name = E:\IBM\WebSphere\AppServer\systemApps\isclite.ear\isclite.war\WEB-INF\lib\sibuswsgw-sibuswsgw_console.jar,
i = 6,
message = invalid LOC header (bad signature)
at java.util.zip.ZipFile$4.nextElement(ZipFile.java:531)
at java.util.zip.ZipFile$4.nextElement(ZipFile.java:517)
at java.util.jar.JarFile$1.nextElement(JarFile.java:305)
at java.util.jar.JarFile$1.nextElement(JarFile.java:304)
at com.ibm.ws.classloader.SinglePathClassProvider.buildContentsCache(SinglePathClassProvider.java:598)
at com.ibm.ws.classloader.SinglePathClassProvider.<init>(SinglePathClassProvider.java:114)
at com.ibm.ws.classloader.SinglePathClassProvider.create(SinglePathClassProvider.java:141)
at com.ibm.ws.classloader.CompoundClassLoader.addPaths(CompoundClassLoader.java:251)
at com.ibm.ws.classloader.ReloadableClassLoader.createLoader(ReloadableClassLoader.java:108)
at com.ibm.ws.classloader.JarClassLoader.<init>(JarClassLoader.java:53)
at com.ibm.ws.classloader.ClassGraph.processWARModule(ClassGraph.java:375)
at com.ibm.ws.classloader.ClassGraph.createClassLoaders(ClassGraph.java:487)
at com.ibm.ws.classloader.ClassGraph.calculate(ClassGraph.java:247)
at com.ibm.ws.classloader.ClassLoaderManager.initialize(ClassLoaderManager.java:225)
at com.ibm.ws.classloader.ClassLoaderManager.<init>(ClassLoaderManager.java:176)
at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:761)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:945)
at com.ibm.ws.runtime.component.ApplicationMgrImpl$AppInitializer.run(ApplicationMgrImpl.java:2120)
at com.ibm.wsspi.runtime.component.WsComponentImpl$_AsynchInitializer.run(WsComponentImpl.java:342)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1595)
问题现象描述:WAS的控制台无法正常登录,无论是访问9060,还是9043的网址,都提示找不到xxx.jsp,甚至连logonError.jsp也找不到,是不是挺奇怪的?还有奇怪的是,应用程序竟然还是可以正常访问的,说明控制台是出问题了。
invalid LOC header (bad signature),咋一看,还以为是WAS授权到期了呢
之前很早就听说WAS有试用期的问题,于是,网上搜罗了一番,找到如下的试用期过期异常:
WSVR0025I: Creating temporary product license
WSVR0027I: The product will expire in 60 days.
ADMU0116I: Tool information is being logged in file
/usr/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/logs/server1/start
Server.log
ADMU0128I: Starting tool with the AppSrv01 profile
ADMU3100I: Reading configuration for server: server1
ADMU3200I: Server launched. Waiting for initialization status.
ADMU3000I: Server server1 open for e-business; process id is 13756
貌似和我遇到的问题孑然不同,网上也搜不到任何关于sibuswsgw-sibuswsgw_console.jar文件的线索。那么,好吧,好奇心驱使我想弄个明白,于是晚上的业余时间就开始往里搭了
首先,这台服务器上的WebSphere安装了两个AppSrv节点,既然AppSrv01启动失败,那我就试试AppSrv02吧
其实遇到这个问题,也并非纯属巧合,事情的经过是这样的,晚上闲来无事,我登录AppSrv01控制台修改了一些参数设置,具体哪些我还真没详细记录,根据经验能修改的我都扒拉了一遍全部改了,这不一定算是功劳,但肯定不能算恶意搞破坏。
正当我兴致勃勃准备迎接飞奔的AppSrv01时,杯具出现了,重启之后控制台进不去了,各种500,提示找不到logon.jsp,甚至找不到logonError.jsp,这些都是WAS自带的程序,怎么会无缘无故丢了呢,我修改的参数怎么想也不会影响到这里啊
越想越奇怪,但是我修改参数之前的确又都是可以的,无论是控制台,还是应用程序,都是可以正常访问的。并且从时间上来看,晚上22点之后了,该下班的、不该下班的早都下班了,除了我自己,估计是没有第2个人来捣鼓了
一般遇到问题,首先想到的是度娘,如果她帮不到我,再找谷哥,如果还是不行,就只能拍自己脑袋了
既然是在我修改参数之后出现的问题,也有可能是修改的时候出现了手误,如果真的是这样,恢复参数就可以解决问题。于是,我把WAS相关的配置文件都检查了一遍,但是发现常用的那些参数值都没有问题,看来这条路是走不通了
WAS有个很好的设计,日志系统比较完善,除了问题应该是会有日志的吧。
查看了server和ffdc的日志,的确找到一些线索,关键的invalid LOC header (bad signature),网上虽然没有说WAS相关的问题,但很多和Maven相关的,大体意思就是文件被破坏了,日志里也是有大量java.util.zip.ZipFile的异常,大差不离啊
文件被破坏了,那就去看看sibuswsgw-sibuswsgw_console.jar文件吧,显示日期和WAS安装日期完全一样,肉眼看不出来是被人工替换还是被恶意程序篡改,既然这样,那就从别的服务器找一个同名文件替换了试试吧
找了同名的sibuswsgw-sibuswsgw_console.jar文件替换,重启AppSrv01之后,控制台就可以正常访问了。
问题解决之后,写下这篇文章,备忘,备忘,备忘,重要的事情要说3遍的……
<script type="text/javascript">
$(function () {
$('pre.prettyprint code').each(function () {
var lines = $(this).text().split('\n').length;
var $numbering = $('<ul/>').addClass('pre-numbering').hide();
$(this).addClass('has-numbering').parent().append($numbering);
for (i = 1; i <= lines; i++) {
$numbering.append($('<li/>').text(i));
};
$numbering.fadeIn(1700);
});
});
</script>
分享到:
相关推荐
flink-sql-connector-mysql-cdc-2.2.1.jar flink-connector-elasticsearch7-1.15.0.jar flink-1.15.0-bin-scala_2.12.tgz
赠送jar包:netty-resolver-dns-4.1.65.Final.jar; 赠送原API文档:netty-resolver-dns-4.1.65.Final-javadoc.jar; 赠送源代码:netty-resolver-dns-4.1.65.Final-sources.jar; 赠送Maven依赖信息文件:netty-...
gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-guneabi.tar.xz gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-guneabi.tar.xz gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-guneabi.tar.xz gcc-linaro-4.9.4-2017.01-x86_...
invalid LOC header (bad signature)问题解决,快速查找与删除有问题的jar包
赠送jar包:audience-annotations-0.5.0.jar; 赠送原API文档:audience-annotations-0.5.0-javadoc.jar; 赠送源代码:audience-annotations-0.5.0-sources.jar; 赠送Maven依赖信息文件:audience-annotations-...
赠送jar包:jaxb-api-2.3.1.jar; 赠送原API文档:jaxb-api-2.3.1-javadoc.jar; 赠送源代码:jaxb-api-2.3.1-sources.jar; 赠送Maven依赖信息文件:jaxb-api-2.3.1.pom; 包含翻译后的API文档:jaxb-api-2.3.1-...
PyOpenGL是Python的一个扩展库,它为Python程序员提供了一个接口来使用OpenGL图形库。OpenGL是一个跨语言、跨平台的编程接口,用于渲染2D、3D矢量图形,广泛应用于游戏开发、科学可视化以及图像处理等领域。本篇文章...
HP官方还有一个hpasmcli管理工具,可以很详细查看服务器CPU,内存,处理器,电源等的温度信息。 1)安装hpasmcli工具(下载地址:HP hpasmcli管理工具) rpm -ivh hp-health-9.40-1602.44.rhel6.x86_64.rpm 通过...
在XML Schema设计中,"cvc-complex-type.2.4.d: Invalid content was found" 是一个常见的错误信息,这通常意味着在解析XML文档时,遇到了不符合定义的复杂类型的内容。这个错误通常涉及到XML Schema的约束规则,即...
Faster-RCNN在linux tensorflow python3.7下运行时需要的make生成文件
赠送jar包:httpcore-4.4.13.jar; 赠送原API文档:httpcore-4.4.13-javadoc.jar; 赠送源代码:httpcore-4.4.13-sources.jar; 赠送Maven依赖信息文件:httpcore-4.4.13.pom; 包含翻译后的API文档:...
本文将深入探讨标题和描述中提到的问题:“解决dbf Failed to parse Number: For input string: "-.---""”,以及如何在不依赖特定jar包的情况下处理DBF文件。 首先,"Failed to parse Number: For input string: ...
版本opencv4.1.0 cmake3.15 ,以下是所包含的下载内容: ippicv_2019_win_intel64_20180723_general.zip opencv_ffmpeg.dll opencv_ffmpeg_64.dll ffmpeg_version.cmake boostdesc_bgm.i boostdesc_bgm_bi.i ...
bcprov-jdk15on-***.jar中文文档.zip,java,bcprov-jdk15on-***.jar,org.bouncycastle,bcprov-jdk15on,***,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,bouncycastle,bcprov,jdk15on,中文API文档,手册,...
赠送jar包:concurrentlinkedhashmap-lru-1.4.2.jar; 赠送原API文档:concurrentlinkedhashmap-lru-1.4.2-javadoc.jar; 赠送源代码:concurrentlinkedhashmap-lru-1.4.2-sources.jar; 赠送Maven依赖信息文件:...
构建dubbo项目的时候会遇到: 操作步骤: ... Multiple annotations found at this line: - cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'dubbo:...
aws-java-sdk-ec2-1.11.277.jar
注:下文中的 *** 代表文件名中的组件名称。 # 包含: 中文-英文对照文档:【***-javadoc-API文档-中文(简体)... (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
赠送jar包:druid-spring-boot-starter-1.2.8.jar; 赠送原API文档:druid-spring-boot-starter-1.2.8-javadoc.jar; 赠送源代码:druid-spring-boot-starter-1.2.8-sources.jar; 赠送Maven依赖信息文件:druid-...
这是用maven编译好的rocketmq控制台jar包,可以直接用 java -jar xxxx.jar来运行,我配置的端口是8082