1

我尝试了 JSF 2.0、带有 Jdeveloper 的 Spring Securty 3 和 Weblogic server 10.3.5 的示例。我得到这些异常

java.lang.NoClassDefFoundError: javax/faces/context/FacesContext at org.springframework.web.jsf.el.SpringBeanFacesELResolver.getWebApplicationContext(SpringBeanFacesELResolver.java:90) at org.springframework.web.jsf.el.SpringBeanFacesELResolver.getBeanFactory(SpringBeanFacesELResolver .java:79) 在 org.springframework.beans.factory.access.el.SpringBeanELResolver.getValue(SpringBeanELResolver.java:50) 在 com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176) 在 com。 sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203) at org.jboss.el.parser.AstIdentifier.getValue(AstIdentifier.java:44) at org.jboss.el.parser.AstValue.getValue(AstValue. java:63) 在 org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186) 在 com.sun.faces.facelets.el。ELText$ELTextVariable.writeText(ELText.java:224) 在 com.sun.faces.facelets.el.E​​LText$ELTextComposite.writeText(ELText.java:148) 在 com.sun.faces.facelets.compiler.TextInstruction.write( TextInstruction.java:85) 在 com.sun.faces.facelets.compiler.UIInstructions.encodeBegin(UIInstructions.java:82) 在 com.sun.faces.facelets.compiler.UILeaf.encodeAll(UILeaf.java:183) 在 javax .faces.component.UIComponent.encodeAll(UIComponent.java:1655) at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1655) at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java :399) 在 com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:121) 在 com.sun.faces 的 com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)。生命周期。Phase.doPhase(Phase.java:101) at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:313) at weblogic.servlet .internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) 在 weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) 在 weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300) 在weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26) 在 weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) 在 oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter .java:111) 在 oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313) 的 java.security.AccessController.doPrivileged(Native Method) 上。security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413) 在 oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94) 在 oracle.security.jps.ee.http。 JpsAbsFilter.doFilter(JpsAbsFilter.java:161) 在 oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71) 在 weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) 在 oracle .dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136) 在 weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) 在 weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27) 在weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) 在 weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715) 在 weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681) 在 weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) 在 weblogic.security.service.SecurityManager.runAs (SecurityManager.java:120) 在 weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277) 在 weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183) 在 weblogic.servlet.internal.ServletRequestImpl。在 weblogic.work.ExecuteThread.execute(ExecuteThread.java:209) 在 weblogic.work.ExecuteThread.run(ExecuteThread.java:178) 运行(ServletRequestImpl.java:1454)AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) 在 weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) 在 weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277) 在 weblogic.servlet.internal .WebAppServletContext.execute(WebAppServletContext.java:2183) 在 weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454) 在 weblogic.work.ExecuteThread.execute(ExecuteThread.java:209) 在 weblogic.work.ExecuteThread。运行(ExecuteThread.java:178)AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) 在 weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) 在 weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277) 在 weblogic.servlet.internal .WebAppServletContext.execute(WebAppServletContext.java:2183) 在 weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454) 在 weblogic.work.ExecuteThread.execute(ExecuteThread.java:209) 在 weblogic.work.ExecuteThread。运行(ExecuteThread.java:178)2183) 在 weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454) 在 weblogic.work.ExecuteThread.execute(ExecuteThread.java:209) 在 weblogic.work.ExecuteThread.run(ExecuteThread.java:178)2183) 在 weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454) 在 weblogic.work.ExecuteThread.execute(ExecuteThread.java:209) 在 weblogic.work.ExecuteThread.run(ExecuteThread.java:178)

请帮我。

4

2 回答 2

1

最后,我得到了解决方案。那是因为,weblogic 的类加载问题。我在我的项目中创建了 weblogic.xml。之后,我写了

 <container-descriptor>
    <prefer-web-inf-classes>true</prefer-web-inf-classes>
 </container-descriptor>.
于 2012-06-27T06:34:11.563 回答
0

您是否为您的项目配置了 JSF 库?

于 2012-06-26T09:34:06.210 回答