1

WindowsXPProfessionalでWebLogic9.2を実行しています。

「acme」ウェブアプリ(acme.war)をデプロイすると、以下のエラーが発生します。ただし、同じacme.warをTomcat6または7にデプロイしても問題はありません。

そのグーグルの間に、weblogicに古いライブラリがいくつかあることが原因である可能性があると思います。

これらのライブラリと、それらを格納するweblogicディレクトリを特定するのに役立つことを感謝します。

よろしくお願いします。

Error 500--Internal Server Error

java.lang.NoClassDefFoundError: javax/el/ValueExpression
    at org.apache.taglibs.standard.tag.common.core.SetSupport.doEndTag(SetSupport.java:155)
    at jsp_servlet._jsp.__header._jsp__tag12(__header.java:610)
    at jsp_servlet._jsp.__header._jsp__tag11(__header.java:575)
    at jsp_servlet._jsp.__header._jsp__tag2(__header.java:271)
    at jsp_servlet._jsp.__header._jspService(__header.java:145)
    at weblogic.servlet.jsp.JspBase.service(JspBase.java:34)
    at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
    at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:283)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
    at weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:530)
    at weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:459)
    at weblogic.servlet.jsp.PageContextImpl.include(PageContextImpl.java:159)
    at jsp_servlet._jsp.__login._jspService(__login.java:77)
    at weblogic.servlet.jsp.JspBase.service(JspBase.java:34)
    at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
    at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:283)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
    at weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:530)
    at weblogic.servlet.internal.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:266)
    at org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:238)
    at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:262)
    at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1180)
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:950)
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)
    at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
    at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:283)
    at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
    at gov.noaa.nsd.controller.security.AuthenticationFilter.doFilter(AuthenticationFilter.java:83)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3270)
    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:2019)
    at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:1925)
    at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1394)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
4

1 に答える 1

3

WebアプリにはJSTL1.2ライブラリが含まれているようです。JSTL 1.2には、サーブレット2.5 /JSP2.1が必要です。上記の欠落しているクラスは、JSP /EL2.1の一部です。ただし、Weblogic9.2は古いサーブレット2.4/ JSP 2.0コンテナです(Tomcat 6はサーブレット2.5コンテナであり、Tomcat 7はサーブレット3.0コンテナです)。

実際、サーブレット2.4コンテナにデプロイする場合は、JSTL1.1を使用する必要があります。しかし、「本格的な」Java EEアプリケーションサーバーであるWeblogic自体は、すでにJSTLがバンドルされた状態で出荷されています。したがって、WebアプリケーションにJSTLライブラリをバンドルする必要はありません。したがって、この特定の問題を修正するには、WebアプリケーションからJSTL 1.2ライブラリを削除する必要があります(該当する場合web.xmlは、サーブレット2.5ではなくサーブレット2.4に準拠するように変更します)。Webアプリケーションは、WeblogicにバンドルされているJSTL1.1を使用します。

于 2012-05-30T02:44:16.120 に答える