浏览 7466 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-04-29
原来的基于weblogic8的应用,后来部署到weblogic 9 上面,所有的web应用都能正常部署,而且不需要经过太多修改,就是有一个应用出现乱码,原因是我直接在JSP文件中写汉字,而没有使用国际化。后来将weblogic.xml配置成如下方式解决了该问题: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN" "http://www.bea.com/servers/wls810/dtd/weblogic810-web-jar.dtd"> <weblogic-web-app> <jsp-descriptor> <jsp-param> <param-name>encoding</param-name> <param-value>GBK</param-value> </jsp-param> <jsp-param> <param-name>compilerSupportsEncoding</param-name> <param-value>true</param-value> </jsp-param> </jsp-descriptor> <context-root>/james</context-root> </weblogic-web-app> 2、jsp的相对路径问题 jsp的前面有如下所示声明代码: <%@ include file="include/header.jsp" %> 如果在weblogic 8 中,即使该相对当前jsp的文件不存在,也就是说上面的路径有问题,也不会报任何错误。 而在9.2上部署则不允许通过。 3、EJB 部署问题 这个实际与webloigc的版本无关,EJB使用了JNI调用一个dll,而部署好以后,当访问的时候老是报如下错误: java.rmi.RemoteException: EJB Exception: ; nested exception is: java.lang.NoClassDefFoundError: com/jamesby/SessionBean_n66q2o_Impl at weblogic.ejb.container.internal.EJBRuntimeUtils.throwRemoteException(EJBRuntimeUtils.java:95) at weblogic.ejb.container.internal.BaseEJBObject.handleSystemException(BaseEJBObject.java:724) at weblogic.ejb.container.internal.BaseEJBObject.handleSystemException(BaseEJBObject.java:681) at weblogic.ejb.container.internal.BaseEJBObject.preInvoke(BaseEJBObject.java:229) 搞的我百思不得其解,而这个错误只有发布到服务器上才出现如上错误,而本地没有任何问题,后在服务器建立一个Develop Mode方式的domain,后启动server报一个又一个的dll 找不到。而product mode方式不会报这个错误,因为我的系统需要通过JNI调用一个DLL,而该DLL需要访问一个C/S模式的软件的客户端的dll。而客户端我并没有安装。 我气愤地是对于Product mode weblogic竟然如此严重的错误也不报,而报什么class 找不到,害的我忙了好长时间。 4、sqlserver 2005数据库驱动问题 用微软发布1.1的驱动,Bea的Connection Pool出现如下问题: com.microsoft.sqlserver.jdbc.SQLServerException: 服务器无法继续执行该事务。说明: 3c000005b9。 at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(Lcom.microsoft.sqlserver.jdbc.SQLServerConnection;Lcom.microsoft.sqlserver.jdbc.IOBuffer;Ljava.lang.String;Lcom.microsoft.sqlserver.jdbc.StreamError;Z)V(Unknown Source) at com.microsoft.sqlserver.jdbc.IOBuffer.processPackets(Lcom.microsoft.sqlserver.jdbc.SQLServerConnection;[Lcom.microsoft.sqlserver.jdbc.PacketRequestor;ILjava.lang.String;Z)Lcom.microsoft.sqlserver.jdbc.StreamPacket;(Unknown Source) at com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult()Z(Unknown Source) at com.microsoft.sqlserver.jdbc.SQLServerStatement.doExecuteStatement(Lcom.microsoft.sqlserver.jdbc.SQLServerStatement$StatementExecutionRequest;Lcom.microsoft.sqlserver.jdbc.TDSWriter;)V(Unknown Source) at com.microsoft.sqlserver.jdbc.SQLServerStatement$StatementExecutionRequest.executeStatement(Lcom.microsoft.sqlserver.jdbc.TDSWriter;)V(Unknown Source) at com.microsoft.sqlserver.jdbc.CancelableRequest.execute(Lcom.microsoft.sqlserver.jdbc.TDSWriter;)V(Unknown Source) at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeRequest(Lcom.microsoft.sqlserver.jdbc.ExecutableRequest;I)V(Unknown Source) at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeQuery(Ljava.lang.String;)Ljava.sql.ResultSet;(Unknown Source) at weblogic.jdbc.wrapper.Statement.executeQuery(Statement.java:412) 原因不清楚,也懒的找,后来改用Bea的驱动,到目前为止比较正常. 5、JSP文件名大小写问题 系统部署在windows操作系统,系统的web层采用Spring MVC 并采用ResourceBundleViewResolver,urlMapping 采用SimpleUrlHandlerMapping,本来在weblogic8 上的时候如果在jamesby.properties配置为viewName.url=/WEB-INF/jsp/Abc.jsp 而实际的jsp的文件名为abc.jsp的时候,是没有任何问题的. 而在weblogic 9上则文件名必须为Abc.jsp才可以,否则报404错误. 当然unix或者linux是区分大小写肯定有这个要求的.但是windows系统的weblogic 9平台也有这个要求 以上就是我的一次升级经历,希望对大家有帮助。另外weblogic 9耗资源好高,本来PC跑weblogic8很轻松的,跑weblogic 9则根本跑不动. 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-04-30
jamesby 写道 2、jsp的相对路径问题 jsp的前面有如下所示声明代码: <%@ include file="include/header.jsp" %> 如果在weblogic 8 中,即使该相对当前jsp的文件不存在,也就是说上面的路径有问题,也不会报任何错误。 而在9.2上部署则不允许通过。 请问这个问题你是怎样解决的呢? |
|
返回顶楼 | |
发表时间:2007-04-30
dy.f 写道 jamesby 写道 2、jsp的相对路径问题 jsp的前面有如下所示声明代码: <%@ include file="include/header.jsp" %> 如果在weblogic 8 中,即使该相对当前jsp的文件不存在,也就是说上面的路径有问题,也不会报任何错误。 而在9.2上部署则不允许通过。 请问这个问题你是怎样解决的呢? 用这种 <%@ include file="/WEB-INF/jsp/include/header.jsp" %> 绝对路径的方式最好,所有的JSP的头都基本一致。 |
|
返回顶楼 | |