1.2.3 解决办法:
可以在WEB-INF下面建一个weblogic.xml配置文件,文件内容如下:
部署描述符元素 参数列表 说明 如果
Container-descriptor prefer-web-inf-classes
servlet-reload-check-secs 定义 WebLogic Server 是否执行 servlet 检查以查看 servlet 是否已更改,如果已更改,是否重新加载。值 -1 表示永不检查 servlet。该值为生产环境中的默认值。 值 0 表示总是检查 servlet。 值 1 表示每秒检查一次 servlet。该值为开发环境中的默认值。 控制台中指定的值将始终优先于手工指定的值。 charset-params 用于定义非 unicode 操作的代码集行为。 context-root 定义该独立 Web 应用程序的上下文根。 jsp-descriptor page-check-seconds 设置 WebLogic Server 检查 JSP 文件的时间间隔(秒),以便查看 JSP 文件是否已更改以及是否需要重新编译。如果已发生更改,还会检查依赖关系并递归重新加载。 ? 值 -1 表示永不检查页面。该值为生产环境中的默认值。 ? 值 0 表示总是检查页面。 ? 值 1 表示每秒检查一次页面。该值为开发环境中的默认值。 在生产环境下,很少发生 JSP 更改,可考虑根据您的调整要求将
pageCheckSeconds 的值更改为 60 或更大。 verbose 设置为 true 时,将向浏览器、命令提示和 WebLogic Server 日志文件中输出调试信息。 encoding 指定 JSP 页面中使用的默认字符集。 如果没有设置,则此特性默认为平台编码。 JSP 页面指令(包含于 JSP 代码中)会替代此设置。例如: <%@ page contentType=\charset=custom-encoding\ keepgenerated 在 JSP 编译过程中保存作为中间步骤生成的 Java 文件。除非此参数设置为 true,否则编译完成后将删除所有中间 Java 文件。 这配置文件的作用是:使weblogic强制先加载web-inf/lib下的jar。 网上很多资料介绍weblogic与hibernate的antlr-2.7.7.jar包冲突的解决办法,使用上面强制优先加载项目的jar包也可以解决问题。
1.3 报错weblogic跟JSTL包冲突 1.3.1 报错原因:
因为weblogic和JSTL的包冲突了
1.3.2 报错现象
<2012-7-11 下午12时49分32秒 CST>
weblogic.servlet.jsp.CompilationException: Failed to compile JSP /adsfw/404.jsp
404.jsp:1:1: The validator class: \following exception: \java.lang.ClassCastException: weblogic.xml.jaxp.RegistrySAXParserFactory cannot be cast to javax.xml.parsers.SAXParserFactory\
<%@ page contentType=\^------------------------------------------------------------------^ at
weblogic.servlet.jsp.JavelinxJSPStub.reportCompilationErrorIfNeccessary(JavelinxJSPStub.java:226) at weblogic.servlet.jsp.JavelinxJSPStub.compilePage(JavelinxJSPStub.java:162) at weblogic.servlet.jsp.JspStub.prepareServlet(JspStub.java:256) at weblogic.servlet.jsp.JspStub.prepareServlet(JspStub.java:216) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243) Truncated. see log file for complete stacktrace >
1.3.3 解决办法:
这个也是因为包冲突引起的,把项目的selenium-server-standalone-2.3.0.jar测试包去掉,重新部署问题就解决了。网上很多资料说把 xml_apis.jar包删除,但是ads的项目里面没有这个jar包。也可以把页面的JSTL的${}符号换掉就可以了(ADS项目里面太多引用这个东西了,这样改不实际)。
1.4 报错:零配置的action不起作用 1.4.1 报错原因:
因为ads框架里面的struts用的是零配置,weblogic部署的时候不起作用,所以访问action就直接跳转到404页面了。
1.4.2 报错现象:
直接跳转到项目的404页面,后台没有报错。

