记一个神奇的WAS问题:sibuswsgw-sibuswsgw_console.jar invalid LOC header (bad signature) 分类: WebSphere 2015-08-06 23:21 9人阅读 评论(0) 收藏
今天晚上,出现了一个神奇的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遍的……
版权声明:本文为博主原创文章,未经博主允许不得转载。
记一个神奇的WAS问题:sibuswsgw-sibuswsgw_console.jar invalid LOC header (bad signature) 分类: WebSphere 2015-08-06 23:21 9人阅读 评论(0) 收藏的更多相关文章
- sql 视图 按where条件多个字段取一个 分类: SQL Server 2014-12-01 14:09 308人阅读 评论(0) 收藏
首先介绍一下 Case ..When...Then..End 的用法: CASEJiXiaoFind_RowID WHEN '1' THENJiXiao_Money1 WHEN '2' THEN ...
- c/c++,输入一个字符 2014-11-20 07:00 30人阅读 评论(0) 收藏
getch().getche()和getchar()函数 (1) getch()和getche()函数 这两个函数都是从键盘上读入一个字符.其调用格式为: getch(); ...
- ZUFE2480: 神奇的序列 2017-05-12 16:45 39人阅读 评论(0) 收藏
2480: 神奇的序列 时间限制: 4 Sec 内存限制: 256 MB 提交: 31 解决: 15 [提交][状态][讨论版] 题目描述 序列a如下: a[0] = A; a[1] = B; a ...
- ZUFE2481 神奇的字符串 2017-05-12 16:41 39人阅读 评论(0) 收藏
2481: 神奇的字符串 时间限制: 3 Sec 内存限制: 256 MB 提交: 8 解决: 3 [提交][状态][讨论版] 题目描述 输入 输出 样例输入 abcb 1000 1100 350 ...
- 调用另一个Activity 分类: H1_ANDROID 2013-09-22 14:11 2217人阅读 评论(0) 收藏
参考自Google官方文档Traning/Getting Started/Building a simple user interface, Startinganother activity,http ...
- winform只允许一个应用程序运行 2014-12-08 09:51 31人阅读 评论(0) 收藏
使用互斥体Mutex类型 导入命名空间 using System.Threading; //声明互斥体 Mutex mutex = new Mutex(false, "ThisShouldO ...
- 网上关于sort结构体排序都不完整,我来写一个完整版的 2014-08-09 16:50 60人阅读 评论(0) 收藏
主要参考sort函数_百度文库, 但是那篇有错误 2.结构体排序,a升,b降,c降 平板视图 打印? 01 #include <iostream> 02 #include <algo ...
- 运行一个Hadoop Job所需要指定的属性 分类: A1_HADOOP 2015-02-02 21:33 231人阅读 评论(0) 收藏
1.设置job的基础属性 Job job = new Job(); job.setJarByClass(***.class); job.setJobName("job name") ...
- Pygame:编写一个小游戏 标签: pythonpygame游戏 2017-06-20 15:06 103人阅读 评论(0)
大学最后的考试终于结束了,迎来了暑假和大四的漫长的"自由"假期.当然要自己好好"玩玩"了. 我最近在学习Python,本意是在机器学习深度学习上使用Python ...
随机推荐
- node+koa2 向页面传值方式
1. router.post('/form',async(ctx,next)=>{ const form = ctx.request.body; console.log('用户名:'+form. ...
- zabbix 官方文档
https://www.zabbix.com/documentation/3.4/manual
- ELASTIC API
运维常用API. curl -XGET 'localhost:9200/_cat/indices?v&pretty' #查看索引 curl -XGET 'localhost:9200/_cat ...
- Python:内置函数
Python所有的内置函数 Built-in Functions abs() divmod() input() open() staticmethod() all() enumerat ...
- IE6的3像素bug
IE6的3像素bug3像素bug是IE6的一个著名的bug,当浮动元素与非浮动元素相邻时,这个3像素的Bug就会出现.看下面这个左列固定,右列液态的例子,css代码如下: body { margin: ...
- Jenkins配置基于角色的项目权限管理
转自: http://www.cnblogs.com/gao241/archive/2013/03/20/2971416.html, 版权归原作者. 本文将介绍如何配置jenkins,使其可以支持基于 ...
- Nodejs后台管理员登录实例
思路: 直接访问后台页面时如果无session则跳转到404 当在登录页的表单提交时对数据库进行匹配,匹配成功生成session,否则提示用户名或密码错误 准备页面 :后台首页.登录页.404页, 步 ...
- apache2.4多站点配置
原来是跑单站,现在想跑多站,配置不算复杂,记录一下: 用默认的httpd.conf修改,去掉两个vhost的注释 servername指定任意一个合法的域名 如果是python,配置wsgi 修改ex ...
- MSVC 12: compiler error in boost/type_traits/common_type.hpp
来自: https://svn.boost.org/trac10/ticket/11885 MSVC 12: compiler error in boost/type_traits/common_ty ...
- 使用SpringBoot的推荐项目目录结构
一.Spring Boot 推荐目录结构 (1)代码层的结构 根目录:com.springboot 1.工程启动类(ApplicationServer.java)置于com.springboot.bu ...