异常:Error 500--Internal Server Error、Unknown constant tag另类解决方法
今天把一个基于tomcat开发的项目转到weblogic9.2,出现如下的异常
Error 500--Internal Server Error
javax.servlet.ServletException: [HTTP:101249][weblogic.servlet.internal.WebAppServletContext@b471fe - appName: 'nsgis', name: 'nsgis', context-path: '/nsgis']: Servlet class jsp_servlet.__specialpage for servlet /specialPage.jsp could not be loaded because the requested class was not found in the classpath .
java.lang.ClassFormatError: Unknown constant tag 104 in class file jsp_servlet/__specialpage.
at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:516)
at weblogic.servlet.jsp.JspStub.prepareServlet(JspStub.java:225)
at weblogic.servlet.jsp.JspStub.prepareServlet(JspStub.java:164)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:235)
at weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:391)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:309)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
at com.augurit.pygis.action.ChartFilter.doFilter(ChartFilter.java:31)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3212)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:1983)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:1890)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1344)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
原因:网上很多人认为是JDK或者JRE版本不兼容的问题,但真正具体原因不明
解决方法:在.jsp页面的头部加一行<%int i=0;%>
然后每隔几十行插入一句<%i++;%>就可以了。(视具体情况而定,我每隔十几行插入一句,插入了五句后就解决了,需要调试才知道要插入多少) 1 楼 wander312 2010-04-27 为什么? 2 楼 coolzhi 2010-04-27 wander312 写道 为什么?
不好意思,我也不知道为什么