WebSphere Application Server 7 应用程序发布的问题 【jsp页面打不开】

来源:互联网 发布:毕业后悔做程序员 编辑:程序博客网 时间:2024/06/08 01:36
前天折腾的是WAS7上面应用程序发布的问题,到凌晨才解决。
1.jsp页面打不开
把应用程序包部署到WAS之后,jsp页面打不开,报404需要登录的错。其他类型例如html、txt都没问题。
开始的时候怀疑是拦截器对jsp做什么特殊的操作,但检查web.xml,拦截器配的都是/*,并没有特别区分jsp。
后俩看到日志里的报错,google了一下才知道原来是包冲突的问题,把应用程序包的WEB-INF/lib下面的 jsf-api.jar,jsf-impl.jar,jstl-1.2.jar 三个jar文件删掉再发布就可以了。
据说这是用MyEclipse开发打包的时候自动加上的。
报错信息如下(注意com.sun.faces.application.WebappLifecycleListener incompatible with java.util.EventListener这句):
[11-8-18 15:17:41:079 CST] 00000010 webapp E com.ibm.ws.webcontainer.webapp.WebApp initializeExtensionProcessors SRVE0280E: 扩展处理器无法在工厂 [com.ibm.ws.jsp.webcontainerext.ws.WASJSPExtensionFactory@2bec2bec] 中进行初始化:java.lang.ClassCastException: com.sun.faces.application.WebappLifecycleListener incompatible with java.util.EventListener …… [10-8-18 15:17:41:562 CST] 00000010 config I Initializing Sun's JavaServer Faces implementation (1.2_07-b03-FCS) for context '/jw' [10-8-18 15:17:44:579 CST] 00000010 webapp W com.ibm.ws.webcontainer.webapp .WebApp initializeTargetMappings SRVE0269W: 找不到用于处理 JSP 的扩展处理器。
详细的问题描述见此页面:
http://www.ibm.com/developerworks/cn/websphere/library/techarticles/1111_zhangt_opensource/1111_zhangt_opensource.html
教训:找问题的时候要细心再细心地看日志,不要错过任何细微的信息。之前因为日志滚得太快,所以忽略了这一段,而且一直往拦截器的问题上考虑(因为同时在配单点登录),所以多花了不少时间。
2.中文查询关键字不生效
在页面输入中文查询关键字,搜索均无结果,用PL/SQL登录数据库查询正常,后台日志显示SQL语句中的中文表面正常,实际上偶尔会少两个字。
这个问题还好以前就遇到过,当时也花了差不多半小时。虽然知道肯定是编码匹配问题,检查JSP页面的编码、web.xml中的字符编码过滤器的配置,都是正常的(UTF-8)。数据库用的是AMERICAN_AMERICA.AL32UTF8,按理说程序在JVM里面跑,跟操作系统的字符集应该没关系,唯一的问题就出在JVM的编码或者ojdbc驱动了。ojdbc驱动肯定做了匹配处理的,所以应该修改JVM的编码。
这回有经验了,马上改。
在WAS管理控制台 https://your server's ip:9043/ibm/console
然后服务器 - 服务器类型 - WebSphere Application Server - server1(或者你自己的server名字)-
Java和进程管理 - 进程定义 - Java虚拟机 - 通用 JVM 参数 
加上:
-Duser.language=zh -Duser.region=CN -Ddefault.client.encoding=GBK -Dclient.encoding.override=GBK -Dfile.encoding=GBK
或者
-Duser.language=zh -Duser.region=CN -Ddefault.client.encoding=UTF-8 -Dclient.encoding.override=UTF-8 -Dfile.encoding=UTF-8
另:这里可以指定Perm大小和其他Java虚拟机参数,用于性能调优。例如
-XX:PermSize=2048M -XX:MaxPermSize=2048M

0 0
原创粉丝点击