【问题标题】:Error while trying run the application in WebSphere尝试在 WebSphere 中运行应用程序时出错
【发布时间】:2017-07-14 11:12:31
【问题描述】:
Exception Error Page

SRVE0260E: 
The server can not use the error page specified for your application to handle the original exception printed below.


Exception:

Message d''erreur: java.lang.NoSuchMethodError: javax/faces/application/Application.subscribeToEvent(Ljava/lang/Class;Ljavax/faces/event/SystemEventListener;)V
Code d'erreur: 500
Servlet cible: 
Pile d'erreur: 
java.lang.NoSuchMethodError: javax/faces/application/Application.subscribeToEvent(Ljava/lang/Class;Ljavax/faces/event/SystemEventListener;)V 
     at org.omnifaces.util.Events.subscribeToEvent(Events.java:171) 
     at org.omnifaces.eventlistener.InvokeActionEventListener.<init>(InvokeActionEventListener.java:65) 
     at java.lang.J9VMInternals.newInstanceImpl(Native Method) 
     at java.lang.Class.newInstance(Class.java:1549) 
     at org.apache.myfaces.shared_impl.util.ClassUtils.newInstance(ClassUtils.java:302) 
     at org.apache.myfaces.shared_impl.util.ClassUtils.newInstance(ClassUtils.java:267) 
     at org.apache.myfaces.config.FacesConfigurator.configureLifecycle(FacesConfigurator.java:888) 
     at org.apache.myfaces.config.FacesConfigurator.configure(FacesConfigurator.java:279) 
     at org.apache.myfaces.config.FacesConfigurator.update(FacesConfigurator.java:223) 
     at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:72) 
     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:149) 
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1667) 
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:944) 
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:507) 
     at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:181) 
     at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:374) 
     at com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:828) 
     at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3954) 
     at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:276) 
     at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:945) 
     at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1592) 
     at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:191) 
     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:453) 
     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:515) 
     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:306) 
     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:277) 
     at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214) 
     at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113) 
     at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175) 
     at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217) 
     at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161) 
     at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138) 
     at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204) 
     at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775) 
     at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905) 
     at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1660) 

【问题讨论】:

  • 这是英文网站。将来,您应该将法语翻译成英语。我已经做了一个可能很快就会出现的编辑。

标签: jsf websphere


【解决方案1】:

问题是 MyFaces 的版本与您的应用程序和服务器中的 JSF API 不匹配。如果您打算在应用程序中使用自己的 JSF 实现,请确保在应用程序或共享库中包含实现和 API,并确保它使用 PARENT_LAST 或隔离类加载器。

如果您依赖 WebSphere 的实现,请仔细检查您是否在应用程序配置中选择了适当的版本(这实际上会更改服务器上的设置) - 在某些服务器版本中,您可以更改实现您正在使用的 JSF,它会切换它从哪个服务器库中获取类。

【讨论】:

  • 你好,谢谢你的回答,我做了所有的步骤,但仍然是同样的错误
  • 忘记在 websphere 中检查 ContextLoaderListener 可以正常工作
猜你喜欢
  • 1970-01-01
  • 2019-04-02
  • 2017-07-15
  • 2012-12-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多