]
Christian Bauer closed JBSEAM-1622.
-----------------------------------
Resolution: Cannot Reproduce Bug
This is gone with latest CVS...
NPE in PassivatedEntity
-----------------------
Key: JBSEAM-1622
URL:
http://jira.jboss.com/jira/browse/JBSEAM-1622
Project: JBoss Seam
Issue Type: Bug
Components: Core
Affects Versions: 2.0.0.BETA1
Reporter: Christian Bauer
Assigned To: Gavin King
Priority: Blocker
Fix For: 2.0.0.CR1
Until I write tests (next week), only reproducible in the wiki example: Open start page,
click Edit, click Register, click Exit.
java.lang.NullPointerException
at
org.jboss.seam.contexts.PassivatedEntity.passivateEntity(PassivatedEntity.java:155)
at org.jboss.seam.contexts.EntityBean.passivate(EntityBean.java:50)
at
org.jboss.seam.contexts.ServerConversationContext.isAttributeDirty(ServerConversationContext.java:286)
at
org.jboss.seam.contexts.ServerConversationContext.flush(ServerConversationContext.java:256)
at org.jboss.seam.contexts.Contexts.flushAndDestroyContexts(Contexts.java:371)
at org.jboss.seam.contexts.FacesLifecycle.endRequest(FacesLifecycle.java:83)
at org.jboss.seam.jsf.SeamPhaseListener.afterRender(SeamPhaseListener.java:515)
at
org.jboss.seam.jsf.SeamPhaseListener.afterServletPhase(SeamPhaseListener.java:230)
at org.jboss.seam.jsf.SeamPhaseListener.afterPhase(SeamPhaseListener.java:184)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:280)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:164)
at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:141)
at
org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:90)
at
org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:395)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
at
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:73)
at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:87)
at
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:63)
at
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:46)
at
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at
org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:127)
at
org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:277)
at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:40)
at
org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:140)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
Code that runs on Exit:
public void exitConversation() {
Conversation currentConversation = Conversation.instance();
currentConversation.end();
ConversationEntry entryPoint =
(ConversationEntry)Contexts.getConversationContext().get("conversationEntryPoint");
FacesMessages messages =
(FacesMessages)Component.getInstance("facesMessages");
FacesManager.instance().switchConversation(entryPoint.getId());
Contexts.getConversationContext().set("org.jboss.seam.faces.facesMessages",
messages);
Conversation.instance().redirect();
}
Log:
17:18:54,193 TRACE [SeamPhaseListener] before phase: RESTORE_VIEW 1
17:18:54,193 DEBUG [FacesLifecycle] >>> Begin JSF request
17:18:54,194 DEBUG [SeamPhaseListener] beginning transaction prior to phase: RESTORE_VIEW
1
17:18:54,194 TRACE [SeamPhaseListener] after phase: RESTORE_VIEW 1
17:18:54,195 DEBUG [ConversationPropagation] Found conversation id in request parameter:
8
17:18:54,195 DEBUG [Manager] Restoring conversation with id: 8
17:18:54,195 DEBUG [SeamPhaseListener] After restoring conversation context:
ConversationContext(8)
17:18:54,195 DEBUG [SeamPhaseListener] committing transaction after phase: RESTORE_VIEW
1
17:18:54,196 TRACE [SeamPhaseListener] before phase: RENDER_RESPONSE 6
17:18:54,196 DEBUG [SeamPhaseListener] beginning transaction prior to phase:
RENDER_RESPONSE 6
17:18:54,197 TRACE [RootInterceptor] intercepted: browser.POST_CONSTRUCT
17:18:54,197 TRACE [RootInterceptor] intercepted: browser.captureConversationEntryPoint
17:18:54,197 TRACE [RootInterceptor] intercepted: nodeDAO.POST_CONSTRUCT
17:18:54,202 TRACE [RootInterceptor] intercepted: browser.exitConversation
17:18:54,203 DEBUG [NodeBrowser] ending conversation
17:18:54,203 DEBUG [Manager] Ending long-running conversation
17:18:54,203 DEBUG [NodeBrowser] entry-point of this conversation (8) has been another
conversation
17:18:54,203 DEBUG [NodeBrowser] switching to entry-point conversation: 7
17:18:54,203 DEBUG [NodeBrowser] propagating faces messages from the ended conversation
into the destination conversation
17:18:54,203 DEBUG [NodeBrowser] switching to last view in previous conversation
17:18:54,204 DEBUG [FacesManager] redirecting to: /wiki/docEdit.seam?cid=7
17:18:54,204 DEBUG [SeamPhaseListener] committing transaction after phase:
INVOKE_APPLICATION 5
17:18:54,204 TRACE [SeamPhaseListener] after phase: RENDER_RESPONSE 6
17:18:54,205 DEBUG [Manager] Storing conversation state: 7
17:18:54,205 DEBUG [FacesLifecycle] After render response, destroying contexts
17:18:54,205 DEBUG [FacesLifecycle] <<< End JSF request
17:18:54,206 ERROR [SeamPhaseListener] uncaught exception
java.lang.NullPointerException
...
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: