[JBoss JIRA] (JBSEAM-5067) ConcurrentModificationException in ServerConversationContext.flush()
by Marek Schmidt (JIRA)
[ https://issues.jboss.org/browse/JBSEAM-5067?page=com.atlassian.jira.plugi... ]
Marek Schmidt commented on JBSEAM-5067:
---------------------------------------
Well, I see two possible ways how to fix this:
1. convince Mojarra not to call .equals on SessionMap.put (good luck with that)
2. change the org.jboss.seam.intercept.JavaBeanInterceptor to skip injection and stuff on the .equals calls and assume no one need to modify contexts during .equals calls (which I consider quite reasonable)
> ConcurrentModificationException in ServerConversationContext.flush()
> --------------------------------------------------------------------
>
> Key: JBSEAM-5067
> URL: https://issues.jboss.org/browse/JBSEAM-5067
> Project: Seam 2
> Issue Type: Bug
> Components: Core
> Affects Versions: 2.3.0.Final
> Environment: JBoss AS 7.1.0.Final (JSF RI 2.1.5)
> Reporter: Andrey Zhemoytuk
> Assignee: Marek Novotny
> Fix For: 2.3.1.CR1
>
>
> The exception fails after render response phase if long running conversation is active and a bean in conversation scope (additions map) has page/conversation/session scoped outjection.
> Latest 2.3.1.CR1-SNAPSHOT (with JBSEAM-5045 fix): The same exception fails in ExceptionFilter after unhandled exception when there is active long running conversation and a component in conversation scope with a page scoped injection.
> The issue is not reproducible if http://java.net/jira/browse/JAVASERVERFACES-1685 is reverted. Call to equals in com.sun.faces.context.SessionMap#put (lines 132-138) introduced with 1685 fix causes injection/outjection to occur:
> boolean doSet = true;
> if (null != value && null != result) {
> doSet = ! result.equals(value);
> }
> if (doSet) {
> session.setAttribute(key, value);
> }
> Stacktrace:
> 2013-01-09 05:09:26,576 WARN [org.jboss.seam.jsf.SeamPhaseListener] (http--0.0.0.0-8543-1) uncaught exception, passing to exception handler: java.util.ConcurrentModificationException
> at java.util.HashMap$HashIterator.nextEntry(HashMap.java:793) [rt.jar:1.6.0_30]
> at java.util.HashMap$EntryIterator.next(HashMap.java:834) [rt.jar:1.6.0_30]
> at java.util.HashMap$EntryIterator.next(HashMap.java:832) [rt.jar:1.6.0_30]
> at org.jboss.seam.contexts.ServerConversationContext.flush(ServerConversationContext.java:302) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.contexts.Contexts.flushAndDestroyContexts(Contexts.java:410) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.contexts.FacesLifecycle.endRequest(FacesLifecycle.java:129) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.jsf.SeamPhaseListener.afterRenderResponse(SeamPhaseListener.java:518) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.jsf.SeamPhaseListener.afterServletPhase(SeamPhaseListener.java:248) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.jsf.SeamPhaseListener.afterPhase(SeamPhaseListener.java:195) [jboss-seam.jar:2.3.0.Final]
> at com.sun.faces.lifecycle.Phase.handleAfterPhase(Phase.java:189) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
> at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:107) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
> at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
> at javax.faces.webapp.FacesServlet.service(FacesServlet.java:594) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 11 months
[JBoss JIRA] (JBSEAM-5067) ConcurrentModificationException in ServerConversationContext.flush()
by Marek Schmidt (JIRA)
[ https://issues.jboss.org/browse/JBSEAM-5067?page=com.atlassian.jira.plugi... ]
Marek Schmidt updated JBSEAM-5067:
----------------------------------
Assignee: Marek Novotny
Fix Version/s: 2.3.1.CR1
> ConcurrentModificationException in ServerConversationContext.flush()
> --------------------------------------------------------------------
>
> Key: JBSEAM-5067
> URL: https://issues.jboss.org/browse/JBSEAM-5067
> Project: Seam 2
> Issue Type: Bug
> Components: Core
> Affects Versions: 2.3.0.Final
> Environment: JBoss AS 7.1.0.Final (JSF RI 2.1.5)
> Reporter: Andrey Zhemoytuk
> Assignee: Marek Novotny
> Fix For: 2.3.1.CR1
>
>
> The exception fails after render response phase if long running conversation is active and a bean in conversation scope (additions map) has page/conversation/session scoped outjection.
> Latest 2.3.1.CR1-SNAPSHOT (with JBSEAM-5045 fix): The same exception fails in ExceptionFilter after unhandled exception when there is active long running conversation and a component in conversation scope with a page scoped injection.
> The issue is not reproducible if http://java.net/jira/browse/JAVASERVERFACES-1685 is reverted. Call to equals in com.sun.faces.context.SessionMap#put (lines 132-138) introduced with 1685 fix causes injection/outjection to occur:
> boolean doSet = true;
> if (null != value && null != result) {
> doSet = ! result.equals(value);
> }
> if (doSet) {
> session.setAttribute(key, value);
> }
> Stacktrace:
> 2013-01-09 05:09:26,576 WARN [org.jboss.seam.jsf.SeamPhaseListener] (http--0.0.0.0-8543-1) uncaught exception, passing to exception handler: java.util.ConcurrentModificationException
> at java.util.HashMap$HashIterator.nextEntry(HashMap.java:793) [rt.jar:1.6.0_30]
> at java.util.HashMap$EntryIterator.next(HashMap.java:834) [rt.jar:1.6.0_30]
> at java.util.HashMap$EntryIterator.next(HashMap.java:832) [rt.jar:1.6.0_30]
> at org.jboss.seam.contexts.ServerConversationContext.flush(ServerConversationContext.java:302) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.contexts.Contexts.flushAndDestroyContexts(Contexts.java:410) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.contexts.FacesLifecycle.endRequest(FacesLifecycle.java:129) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.jsf.SeamPhaseListener.afterRenderResponse(SeamPhaseListener.java:518) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.jsf.SeamPhaseListener.afterServletPhase(SeamPhaseListener.java:248) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.jsf.SeamPhaseListener.afterPhase(SeamPhaseListener.java:195) [jboss-seam.jar:2.3.0.Final]
> at com.sun.faces.lifecycle.Phase.handleAfterPhase(Phase.java:189) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
> at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:107) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
> at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
> at javax.faces.webapp.FacesServlet.service(FacesServlet.java:594) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 11 months
[JBoss JIRA] (JBSEAM-5067) ConcurrentModificationException in ServerConversationContext.flush()
by Andrey Zhemoytuk (JIRA)
[ https://issues.jboss.org/browse/JBSEAM-5067?page=com.atlassian.jira.plugi... ]
Andrey Zhemoytuk commented on JBSEAM-5067:
------------------------------------------
Here is a test case for the issue with outjection. It looks artificial, I have not found a more real world simple example to reproduce: https://github.com/azhemoytuk/jboss-seam/commit/73c1e9a12f1ee771d745059b1...
Regarding a problem with ExceptionFilter - I have the same stacktrace as you have. So the issues can be considered as two different issues, still rootcause of the issues looks the same (reverting JAVASERVERFACES-1685 change makes both issues disappear).
> ConcurrentModificationException in ServerConversationContext.flush()
> --------------------------------------------------------------------
>
> Key: JBSEAM-5067
> URL: https://issues.jboss.org/browse/JBSEAM-5067
> Project: Seam 2
> Issue Type: Bug
> Components: Core
> Affects Versions: 2.3.0.Final
> Environment: JBoss AS 7.1.0.Final (JSF RI 2.1.5)
> Reporter: Andrey Zhemoytuk
>
> The exception fails after render response phase if long running conversation is active and a bean in conversation scope (additions map) has page/conversation/session scoped outjection.
> Latest 2.3.1.CR1-SNAPSHOT (with JBSEAM-5045 fix): The same exception fails in ExceptionFilter after unhandled exception when there is active long running conversation and a component in conversation scope with a page scoped injection.
> The issue is not reproducible if http://java.net/jira/browse/JAVASERVERFACES-1685 is reverted. Call to equals in com.sun.faces.context.SessionMap#put (lines 132-138) introduced with 1685 fix causes injection/outjection to occur:
> boolean doSet = true;
> if (null != value && null != result) {
> doSet = ! result.equals(value);
> }
> if (doSet) {
> session.setAttribute(key, value);
> }
> Stacktrace:
> 2013-01-09 05:09:26,576 WARN [org.jboss.seam.jsf.SeamPhaseListener] (http--0.0.0.0-8543-1) uncaught exception, passing to exception handler: java.util.ConcurrentModificationException
> at java.util.HashMap$HashIterator.nextEntry(HashMap.java:793) [rt.jar:1.6.0_30]
> at java.util.HashMap$EntryIterator.next(HashMap.java:834) [rt.jar:1.6.0_30]
> at java.util.HashMap$EntryIterator.next(HashMap.java:832) [rt.jar:1.6.0_30]
> at org.jboss.seam.contexts.ServerConversationContext.flush(ServerConversationContext.java:302) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.contexts.Contexts.flushAndDestroyContexts(Contexts.java:410) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.contexts.FacesLifecycle.endRequest(FacesLifecycle.java:129) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.jsf.SeamPhaseListener.afterRenderResponse(SeamPhaseListener.java:518) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.jsf.SeamPhaseListener.afterServletPhase(SeamPhaseListener.java:248) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.jsf.SeamPhaseListener.afterPhase(SeamPhaseListener.java:195) [jboss-seam.jar:2.3.0.Final]
> at com.sun.faces.lifecycle.Phase.handleAfterPhase(Phase.java:189) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
> at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:107) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
> at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
> at javax.faces.webapp.FacesServlet.service(FacesServlet.java:594) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 11 months
[JBoss JIRA] (JBSEAM-5068) seam-gen explode target touches .dodeploy forcing a restart, preventing hot-deployment
by Marek Schmidt (JIRA)
Marek Schmidt created JBSEAM-5068:
-------------------------------------
Summary: seam-gen explode target touches .dodeploy forcing a restart, preventing hot-deployment
Key: JBSEAM-5068
URL: https://issues.jboss.org/browse/JBSEAM-5068
Project: Seam 2
Issue Type: Bug
Components: Hot Deploy
Affects Versions: 2.3.0.Final
Environment: AS 7.1.1.Final, Seam 2.3.1-SNAPSHOT (2013-01-17)
Reporter: Marek Schmidt
Assignee: Marek Novotny
Fix For: 2.3.1.CR1
seam-gen generated explode target contains:
{code}
<touch file="${deploy.dir}/${project.name}.war.dodeploy"/>
{code}
which forces the application to restart, which makes the hot-deployment feature useless.
The problem is that on AS7 at least one touch of the dodeploy is necessary, as it wouldn't deploy otherwise.
One possible way to fix this could perhaps be to check for the existence of the .deployed file and touch the .dodeploy only if such file doesn't exist.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 11 months
[JBoss JIRA] (JBSEAM-5067) ConcurrentModificationException in ServerConversationContext.flush()
by Marek Schmidt (JIRA)
[ https://issues.jboss.org/browse/JBSEAM-5067?page=com.atlassian.jira.plugi... ]
Marek Schmidt commented on JBSEAM-5067:
---------------------------------------
I have been able to reproduce a problem with ExceptionFilter (see the test in https://github.com/maschmid/jboss-seam/commit/dee09efbbf9a79b64d7954dfffa... ), but with a different stacktrace:
{noformat}
Servlet.service() for servlet Faces Servlet threw exception: java.lang.IllegalStateException: No phase id bound to current thread (make sure you do not have two SeamPhaseListener instances installed)
at org.jboss.seam.contexts.PageContext.getPhaseId(PageContext.java:163) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.contexts.PageContext.isBeforeInvokeApplicationPhase(PageContext.java:175) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.contexts.PageContext.getCurrentWritableMap(PageContext.java:91) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.contexts.PageContext.remove(PageContext.java:105) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.Component.newInstance(Component.java:2205) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.Component.getInstance(Component.java:2034) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.Component.getInstance(Component.java:1996) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.Component.getInstanceInAllNamespaces(Component.java:2414) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.Component.getValueToInject(Component.java:2366) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.Component.injectAttributes(Component.java:1743) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.Component.inject(Component.java:1561) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:61) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.core.ConversationInterceptor.aroundInvoke(ConversationInterceptor.java:65) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:186) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:93) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.test.integration.faces.ConversationContextFlushTest$TestComponent_$$_javassist_seam_2.equals(ConversationContextFlushTest$TestComponent_$$_javassist_seam_2.java) [classes:]
at com.sun.faces.context.SessionMap.put(SessionMap.java:138) [jsf-impl-2.1.7-jbossorg-2.jar:]
at com.sun.faces.context.SessionMap.put(SessionMap.java:61) [jsf-impl-2.1.7-jbossorg-2.jar:]
at org.jboss.seam.contexts.ServerConversationContext.flush(ServerConversationContext.java:283) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.contexts.Contexts.flushAndDestroyContexts(Contexts.java:410) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.contexts.Lifecycle.endRequest(Lifecycle.java:164) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.web.ExceptionFilter.endWebRequestAfterException(ExceptionFilter.java:89) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:70) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158) [jboss-seam-2.3.1-SNAPSHOT.jar:2.3.1-SNAPSHOT]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161) [jbossweb-7.0.13.Final.jar:]
at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50) [jboss-as-jpa-7.1.1.Final.jar:7.1.1.Final]
at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153) [jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368) [jbossweb-7.0.13.Final.jar:]
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877) [jbossweb-7.0.13.Final.jar:]
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:671) [jbossweb-7.0.13.Final.jar:]
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930) [jbossweb-7.0.13.Final.jar:]
at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_35]
{noformat}
Could you perhaps provide a test case or a reproducer so we can be sure this is not a different issue?
> ConcurrentModificationException in ServerConversationContext.flush()
> --------------------------------------------------------------------
>
> Key: JBSEAM-5067
> URL: https://issues.jboss.org/browse/JBSEAM-5067
> Project: Seam 2
> Issue Type: Bug
> Components: Core
> Affects Versions: 2.3.0.Final
> Environment: JBoss AS 7.1.0.Final (JSF RI 2.1.5)
> Reporter: Andrey Zhemoytuk
>
> The exception fails after render response phase if long running conversation is active and a bean in conversation scope (additions map) has page/conversation/session scoped outjection.
> Latest 2.3.1.CR1-SNAPSHOT (with JBSEAM-5045 fix): The same exception fails in ExceptionFilter after unhandled exception when there is active long running conversation and a component in conversation scope with a page scoped injection.
> The issue is not reproducible if http://java.net/jira/browse/JAVASERVERFACES-1685 is reverted. Call to equals in com.sun.faces.context.SessionMap#put (lines 132-138) introduced with 1685 fix causes injection/outjection to occur:
> boolean doSet = true;
> if (null != value && null != result) {
> doSet = ! result.equals(value);
> }
> if (doSet) {
> session.setAttribute(key, value);
> }
> Stacktrace:
> 2013-01-09 05:09:26,576 WARN [org.jboss.seam.jsf.SeamPhaseListener] (http--0.0.0.0-8543-1) uncaught exception, passing to exception handler: java.util.ConcurrentModificationException
> at java.util.HashMap$HashIterator.nextEntry(HashMap.java:793) [rt.jar:1.6.0_30]
> at java.util.HashMap$EntryIterator.next(HashMap.java:834) [rt.jar:1.6.0_30]
> at java.util.HashMap$EntryIterator.next(HashMap.java:832) [rt.jar:1.6.0_30]
> at org.jboss.seam.contexts.ServerConversationContext.flush(ServerConversationContext.java:302) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.contexts.Contexts.flushAndDestroyContexts(Contexts.java:410) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.contexts.FacesLifecycle.endRequest(FacesLifecycle.java:129) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.jsf.SeamPhaseListener.afterRenderResponse(SeamPhaseListener.java:518) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.jsf.SeamPhaseListener.afterServletPhase(SeamPhaseListener.java:248) [jboss-seam.jar:2.3.0.Final]
> at org.jboss.seam.jsf.SeamPhaseListener.afterPhase(SeamPhaseListener.java:195) [jboss-seam.jar:2.3.0.Final]
> at com.sun.faces.lifecycle.Phase.handleAfterPhase(Phase.java:189) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
> at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:107) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
> at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139) [jsf-impl-2.1.5-jbossorg-1.jar:2.1.5-SNAPSHOT]
> at javax.faces.webapp.FacesServlet.service(FacesServlet.java:594) [jboss-jsf-api_2.1_spec-2.0.0.Final.jar:2.0.0.Final]
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 11 months
[JBoss JIRA] (SEAMFACES-250) UIInputContainer enclose attribute doesn't work
by Dupont Dupont (JIRA)
[ https://issues.jboss.org/browse/SEAMFACES-250?page=com.atlassian.jira.plu... ]
Dupont Dupont updated SEAMFACES-250:
------------------------------------
Attachment: UIInputContainer.java
UIInputContainer tested with JBoss 7.1.0 and WAS 8.0.? (myfaces 2.0.5).
It fixes both this issue and SEAMFACES-248.
> UIInputContainer enclose attribute doesn't work
> -----------------------------------------------
>
> Key: SEAMFACES-250
> URL: https://issues.jboss.org/browse/SEAMFACES-250
> Project: Seam Faces
> Issue Type: Feature Request
> Reporter: Dupont Dupont
> Attachments: UIInputContainer.java
>
>
> UIInputContainer enclose attribute doesn't work
> Using enclose attribute with UIInputContainer should generate an HTML div.
> This is not the case.
> It is due to the fact that UIInputContainer expects a java.lang.Boolean and jsf implementation return a java.lang.String (see [JAVASERVERFACES-2142|http://java.net/jira/browse/JAVASERVERFACES-2142] and [MYFACES-3027|https://issues.apache.org/jira/browse/MYFACES-3027]).
> Also when fixing this issue, there's a possible NPE in startContainerElement() method (style and styleClass can be null when calling .length()).
> Sample use case :
> Composite
> {code:xml}
> <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
> <ui:composition xmlns="http://www.w3.org/1999/xhtml"
> xmlns:ui="http://java.sun.com/jsf/facelets"
> xmlns:f="http://java.sun.com/jsf/core"
> xmlns:h="http://java.sun.com/jsf/html"
> xmlns:c="http://java.sun.com/jsp/jstl/core"
> xmlns:cc="http://java.sun.com/jsf/composite">
> <cc:interface componentType="org.jboss.seam.faces.InputContainer">
> <cc:attribute name="label" required="true" />
> <cc:attribute name="ajax" default="false" />
> <cc:attribute name="inputs" default="1" />
> <cc:attribute name="labelClass"/>
> <cc:attribute name="enclose" default="true"/>
> </cc:interface>
> <cc:implementation>
> <h:outputLabel id="label" for="" styleClass="control-label #{cc.attrs.labelClass}">
> <ui:fragment rendered="#{cc.attrs.invalid}">
> <i class="icon-msg-err"></i>
> </ui:fragment>
> #{cc.attrs.label}
> <h:panelGroup styleClass="required" rendered="#{cc.attrs.required}">*</h:panelGroup> :
> </h:outputLabel>
> <div class="controls">
> <ui:fragment>
> <cc:insertChildren />
> </ui:fragment>
> <ui:fragment rendered="#{cc.attrs.invalid}">
> <p class="help-block"><h:message id="message#{1}" for=""/></p>
> </ui:fragment>
> </div>
> </cc:implementation>
> </ui:composition>
> {code}
> Composite usage :
> {code:xml}
> <field:edit id="nom" label="#{messages['chargeClientele.nom.label']}">
> <h:inputText id="input" value="#{chargeClienteleController.instance.nom}" styleClass="input-small" required="true"/>
> </field:edit>
> {code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 11 months
[JBoss JIRA] (SEAMFACES-250) UIInputContainer enclose attribute doesn't work
by Dupont Dupont (JIRA)
[ https://issues.jboss.org/browse/SEAMFACES-250?page=com.atlassian.jira.plu... ]
Dupont Dupont commented on SEAMFACES-250:
-----------------------------------------
Also with when using myfaces, MYFACES-3182 will prevent default composite value to work when calling getAttributes().
You'll need get the value calling the el #{cc.attrs.enclose} if you want to be compatible with myfaces 2.0.7 and 2.1.1.
> UIInputContainer enclose attribute doesn't work
> -----------------------------------------------
>
> Key: SEAMFACES-250
> URL: https://issues.jboss.org/browse/SEAMFACES-250
> Project: Seam Faces
> Issue Type: Feature Request
> Reporter: Dupont Dupont
>
> UIInputContainer enclose attribute doesn't work
> Using enclose attribute with UIInputContainer should generate an HTML div.
> This is not the case.
> It is due to the fact that UIInputContainer expects a java.lang.Boolean and jsf implementation return a java.lang.String (see [JAVASERVERFACES-2142|http://java.net/jira/browse/JAVASERVERFACES-2142] and [MYFACES-3027|https://issues.apache.org/jira/browse/MYFACES-3027]).
> Also when fixing this issue, there's a possible NPE in startContainerElement() method (style and styleClass can be null when calling .length()).
> Sample use case :
> Composite
> {code:xml}
> <!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
> <ui:composition xmlns="http://www.w3.org/1999/xhtml"
> xmlns:ui="http://java.sun.com/jsf/facelets"
> xmlns:f="http://java.sun.com/jsf/core"
> xmlns:h="http://java.sun.com/jsf/html"
> xmlns:c="http://java.sun.com/jsp/jstl/core"
> xmlns:cc="http://java.sun.com/jsf/composite">
> <cc:interface componentType="org.jboss.seam.faces.InputContainer">
> <cc:attribute name="label" required="true" />
> <cc:attribute name="ajax" default="false" />
> <cc:attribute name="inputs" default="1" />
> <cc:attribute name="labelClass"/>
> <cc:attribute name="enclose" default="true"/>
> </cc:interface>
> <cc:implementation>
> <h:outputLabel id="label" for="" styleClass="control-label #{cc.attrs.labelClass}">
> <ui:fragment rendered="#{cc.attrs.invalid}">
> <i class="icon-msg-err"></i>
> </ui:fragment>
> #{cc.attrs.label}
> <h:panelGroup styleClass="required" rendered="#{cc.attrs.required}">*</h:panelGroup> :
> </h:outputLabel>
> <div class="controls">
> <ui:fragment>
> <cc:insertChildren />
> </ui:fragment>
> <ui:fragment rendered="#{cc.attrs.invalid}">
> <p class="help-block"><h:message id="message#{1}" for=""/></p>
> </ui:fragment>
> </div>
> </cc:implementation>
> </ui:composition>
> {code}
> Composite usage :
> {code:xml}
> <field:edit id="nom" label="#{messages['chargeClientele.nom.label']}">
> <h:inputText id="input" value="#{chargeClienteleController.instance.nom}" styleClass="input-small" required="true"/>
> </field:edit>
> {code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 11 months
[JBoss JIRA] (SOLDER-339) Catch attempts to use BeanManager during application initialization under Weld 2.0
by Ken H (JIRA)
[ https://issues.jboss.org/browse/SOLDER-339?page=com.atlassian.jira.plugin... ]
Ken H updated SOLDER-339:
-------------------------
Description:
The exception prevents application from starting.
org.jboss.weld.exceptions.IllegalStateException: WELD-001332 BeanManager method getBeans() is not available during application initialization
at org.jboss.weld.bean.builtin.BeanManagerProxy.checkContainerInitialized(BeanManagerProxy.java:148)
at org.jboss.weld.bean.builtin.BeanManagerProxy.getBeans(BeanManagerProxy.java:78)
at org.jboss.solder.exception.control.HandlerMethodImpl.getBean(HandlerMethodImpl.java:154)
at org.jboss.solder.exception.control.HandlerMethodImpl.<init>(HandlerMethodImpl.java:138)
at org.jboss.solder.exception.control.extension.CatchExtension.findHandlers(CatchExtension.java:102)
at sun.reflect.GeneratedMethodAccessor41.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.jboss.weld.util.reflection.SecureReflections$13.work(SecureReflections.java:268)
at org.jboss.weld.util.reflection.SecureReflectionAccess.run(SecureReflectionAccess.java:52)
at org.jboss.weld.util.reflection.SecureReflectionAccess.runAsInvocation(SecureReflectionAccess.java:137)
at org.jboss.weld.util.reflection.SecureReflections.invoke(SecureReflections.java:264)
at org.jboss.weld.annotated.runtime.InvokableAnnotatedMethod.invokeOnInstance(InvokableAnnotatedMethod.java:82)
at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:97)
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:276)
at org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:134)
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:263)
at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:238)
at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:242)
at org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:173)
at org.jboss.weld.event.TransactionalObserverNotifier.notifyObserver(TransactionalObserverNotifier.java:47)
at org.jboss.weld.event.ObserverNotifier.notifyObservers(ObserverNotifier.java:134)
at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:109)
at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:69)
at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:38)
at org.jboss.weld.bootstrap.events.ProcessManagedBeanImpl.fire(ProcessManagedBeanImpl.java:30)
at org.jboss.weld.bootstrap.events.ContainerLifecycleEvents.fireProcessBean(ContainerLifecycleEvents.java:154)
at org.jboss.weld.bootstrap.AbstractBeanDeployer.fireBeanEvents(AbstractBeanDeployer.java:145)
at org.jboss.weld.bootstrap.AbstractBeanDeployer.fireBeanEvents(AbstractBeanDeployer.java:133)
at org.jboss.weld.bootstrap.BeanDeployer.deploy(BeanDeployer.java:309)
at org.jboss.weld.bootstrap.BeanDeployment.deployBeans(BeanDeployment.java:265)
at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:446)
at org.jboss.as.weld.WeldContainer.start(WeldContainer.java:92)
at org.jboss.as.weld.services.WeldService.start(WeldService.java:77)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
was:
The exception prevents application from starting.
Stack trace to be provided when available.
> Catch attempts to use BeanManager during application initialization under Weld 2.0
> ----------------------------------------------------------------------------------
>
> Key: SOLDER-339
> URL: https://issues.jboss.org/browse/SOLDER-339
> Project: Solder
> Issue Type: Bug
> Affects Versions: 3.1.0.Final
> Environment: JBoss 7.1.1 w/ Weld 2.0.0.Beta2
> Reporter: Ken H
>
> The exception prevents application from starting.
> org.jboss.weld.exceptions.IllegalStateException: WELD-001332 BeanManager method getBeans() is not available during application initialization
> at org.jboss.weld.bean.builtin.BeanManagerProxy.checkContainerInitialized(BeanManagerProxy.java:148)
> at org.jboss.weld.bean.builtin.BeanManagerProxy.getBeans(BeanManagerProxy.java:78)
> at org.jboss.solder.exception.control.HandlerMethodImpl.getBean(HandlerMethodImpl.java:154)
> at org.jboss.solder.exception.control.HandlerMethodImpl.<init>(HandlerMethodImpl.java:138)
> at org.jboss.solder.exception.control.extension.CatchExtension.findHandlers(CatchExtension.java:102)
> at sun.reflect.GeneratedMethodAccessor41.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:601)
> at org.jboss.weld.util.reflection.SecureReflections$13.work(SecureReflections.java:268)
> at org.jboss.weld.util.reflection.SecureReflectionAccess.run(SecureReflectionAccess.java:52)
> at org.jboss.weld.util.reflection.SecureReflectionAccess.runAsInvocation(SecureReflectionAccess.java:137)
> at org.jboss.weld.util.reflection.SecureReflections.invoke(SecureReflections.java:264)
> at org.jboss.weld.annotated.runtime.InvokableAnnotatedMethod.invokeOnInstance(InvokableAnnotatedMethod.java:82)
> at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:97)
> at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:276)
> at org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:134)
> at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:263)
> at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:238)
> at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:242)
> at org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:173)
> at org.jboss.weld.event.TransactionalObserverNotifier.notifyObserver(TransactionalObserverNotifier.java:47)
> at org.jboss.weld.event.ObserverNotifier.notifyObservers(ObserverNotifier.java:134)
> at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:109)
> at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:69)
> at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:38)
> at org.jboss.weld.bootstrap.events.ProcessManagedBeanImpl.fire(ProcessManagedBeanImpl.java:30)
> at org.jboss.weld.bootstrap.events.ContainerLifecycleEvents.fireProcessBean(ContainerLifecycleEvents.java:154)
> at org.jboss.weld.bootstrap.AbstractBeanDeployer.fireBeanEvents(AbstractBeanDeployer.java:145)
> at org.jboss.weld.bootstrap.AbstractBeanDeployer.fireBeanEvents(AbstractBeanDeployer.java:133)
> at org.jboss.weld.bootstrap.BeanDeployer.deploy(BeanDeployer.java:309)
> at org.jboss.weld.bootstrap.BeanDeployment.deployBeans(BeanDeployment.java:265)
> at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:446)
> at org.jboss.as.weld.WeldContainer.start(WeldContainer.java:92)
> at org.jboss.as.weld.services.WeldService.start(WeldService.java:77)
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
> at java.lang.Thread.run(Thread.java:722)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 11 months