1

我想在 Websphere 上部署一个企业项目。

我得到了以下异常。

可能是什么原因?

[03.09.12 11:21:05:636 CEST] 0000001a webapp        E com.ibm.ws.webcontainer.webapp.WebApp notifyServletContextCreated SRVE0283E: Exception caught while initializing context: {0}
                                 java.lang.StackOverflowError
    at java.lang.ThreadLocal$ThreadLocalMap.getEntry(ThreadLocal.java:371)
    at java.lang.ThreadLocal$ThreadLocalMap.access$000(ThreadLocal.java:254)
    at java.lang.ThreadLocal.get(ThreadLocal.java:138)
    at javax.faces.context.FacesContext.isProcessingEvents(FacesContext.java:293)
    at javax.faces.context.FacesContext.isProcessingEvents(FacesContext.java:300)
    at javax.faces.context.FacesContext.isProcessingEvents(FacesContext.java:300)
    at javax.faces.context.FacesContext.isProcessingEvents(FacesContext.java:300)
    at javax.faces.context.FacesContext.isProcessingEvents(FacesContext.java:300)
    at javax.faces.context.FacesContext.isProcessingEvents(FacesContext.java:300)
    at javax.faces.context.FacesContext.isProcessingEvents(FacesContext.java:300)
    at javax.faces.context.FacesContext.isProcessingEvents(FacesContext.java:300)
    at javax.faces.context.FacesContext.isProcessingEvents(FacesContext.java:300)
4

1 回答 1

3

堆栈跟踪表明您正在使用 MyFaces 并且在代码之前的某个时间点FacesContext.setCurrentInstance(FacesContext.getCurrentInstance())被调用,这将导致这种无限循环。

根据目前提供的信息,我只能说这些。我不确定为什么用当前实例设置了 faces 上下文的当前实例。也许这是您自己代码中的错误,或者配置错误。验证污染的类路径(重复旧版本的 JAR)并验证任何启动代码(Filter#init(),ServletContextListener#contextInitialized()等),如果它没有做一些奇怪的事情。

于 2012-09-03T11:06:48.263 回答