2

有没有人在 Websphere 7 或 8 上部署了 YAWL resourceService。我们正在尝试做同样的事情,但是在输入凭据后它会给出 JSF 错误。似乎 JSF 的 IBM websphere 实现与 resourceService 使用的不兼容。有人可以阐明如何强制 WebSphere 使用捆绑在应用程序本身中的 JSF 实现,而不是使用它自己的。这是我得到的异常堆栈跟踪。

[9/24/12 15:56:05:138 IST] 00000015 lifecycle     E   JSF1054: (Phase ID: RESTORE_VIEW 1, View ID: "") Exception thrown during phase execution: javax.faces.event.PhaseEvent[source=com.sun.faces.lifecycle.LifecycleImpl@3b803b8]
[9/24/12 15:56:05:143 IST] 00000015 servlet       E com.ibm.ws.webcontainer.servlet.ServletWrapper service SRVE0068E: Uncaught exception created in one of the service methods of the servlet Faces Servlet in application resourceService_war. Exception created : javax.servlet.ServletException: Array index out of range: 4
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:277)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1443)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1384)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:131)
    at com.sun.rave.web.ui.util.UploadFilter.doFilter(UploadFilter.java:194)
    at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:188)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:116)
    at org.yawlfoundation.yawl.resourcing.jsf.SessionTimeoutFilter.doFilter(SessionTimeoutFilter.java:71)
    at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:188)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:116)
    at org.yawlfoundation.yawl.util.CharsetFilter.doFilter(CharsetFilter.java:52)
    at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:188)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:116)
    at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:77)
    at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:852)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:785)
    at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:443)
    at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:175)
    at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3610)
    at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:274)
    at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:926)
    at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1557)
    at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:173)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:455)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:384)
    at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:272)
    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:165)
    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:202)
    at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:766)
    at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:896)
    at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1527)
Caused by: java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 4
    at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1167)
    at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1171)
    at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1171)
    at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1171)
    at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1171)
    at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1171)
    at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1171)
    at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1171)
    at com.sun.faces.application.StateManagerImpl.restoreView(StateManagerImpl.java:205)
    at com.sun.faces.application.ViewHandlerImpl.restoreView(ViewHandlerImpl.java:334)
    at com.sun.rave.web.ui.appbase.faces.ViewHandlerImpl.restoreView(ViewHandlerImpl.java:337)
    at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:176)
    at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
    at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:104)
    at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
    ... 35 more
4

2 回答 2

0

websphere 默认提供 JSF1.2 实现。

在所描述的情况下,您可以将应用程序配置为使用应用程序内部提供的 JSF 版本。

我想就是你要找的。

请按照上述文档中的说明配置您的服务器以从应用程序获取 jsf。

于 2012-10-17T09:59:20.463 回答
0

好奇,请尝试通过更改 web.xml 中的属性(STATE_SAVING_METHOD)将状态保存模式更改为客户端。

于 2012-10-26T10:17:42.813 回答