]
Christian Bauer commented on JBSEAM-1622:
-----------------------------------------
I should note that my last commit worked OK (except for some useless statements that throw
errors on startup in import.sql). So that means someone changed something in Seam in the
last 2 weeks that broke the application :) I will commit an update early next week.
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: