[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-806) Logout (SeamSecurity) broken with ICEFaces
by Mariusz Smykula (JIRA)
Logout (SeamSecurity) broken with ICEFaces
------------------------------------------
Key: JBSEAM-806
URL: http://jira.jboss.com/jira/browse/JBSEAM-806
Project: JBoss Seam
Issue Type: Feature Request
Components: ICE Faces Integration, Security
Affects Versions: 1.1.6.GA
Environment: ICEFaces 1.5.3, JBoss 4.0.5, Win, facelets
Reporter: Mariusz Smykula
Assigned To: Gregory Dick
Executing identity.logout with redirect to another page throws Exception:
ERROR [PersistentFacesServlet] Exception executing lifecycle or setting up persistent context. Cannot create a session after the response has been committed
java.lang.IllegalStateException: Cannot create a session after the response has been committed
at org.apache.catalina.connector.Request.doGetSession(Request.java:2214)
at org.apache.catalina.connector.Request.getSession(Request.java:2024)
at org.apache.catalina.connector.RequestFacade.getSession(RequestFacade.java:831)
at org.apache.catalina.connector.RequestFacade.getSession(RequestFacade.java:842)
at com.icesoft.faces.env.ServletEnvironmentRequest.copyServletRequestData(ServletEnvironmentRequest.java:179)
at com.icesoft.faces.env.ServletEnvironmentRequest.<init>(ServletEnvironmentRequest.java:110)
at com.icesoft.faces.webapp.xmlhttp.PersistentFacesServlet.setupPersistentContext(PersistentFacesServlet.java:522)
at com.icesoft.faces.webapp.xmlhttp.PersistentFacesServlet.service(PersistentFacesServlet.java:427)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.jboss.seam.servlet.SeamExceptionFilter.doFilter(SeamExceptionFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
at java.lang.Thread.run(Unknown Source)
15:02:52,750 ERROR [SeamExceptionFilter] uncaught exception
com.icesoft.faces.context.RedirectException: /Project/index.seam
at com.icesoft.faces.context.BridgeExternalContext.resetRequestMap(BridgeExternalContext.java:406)
at com.icesoft.faces.context.BridgeFacesContext.release(BridgeFacesContext.java:325)
at com.icesoft.faces.webapp.xmlhttp.PersistentFacesServlet.service(PersistentFacesServlet.java:440)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.jboss.seam.servlet.SeamExceptionFilter.doFilter(SeamExceptionFilter.java:51)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
at java.lang.Thread.run(Unknown Source)
pages.xml:
<page view-id="*">
<navigation from-action="#{identity.logout}">
<redirect view-id="/index.jspx" />
</navigation>
</page>
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
18 years, 11 months
[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-1124) Make ThemeSelector and LocaleSelector implement valueChanged(ValueChangeEvent event), and some more...
by Arjan van Bentem (JIRA)
Make ThemeSelector and LocaleSelector implement valueChanged(ValueChangeEvent event), and some more...
------------------------------------------------------------------------------------------------------
Key: JBSEAM-1124
URL: http://jira.jboss.com/jira/browse/JBSEAM-1124
Project: JBoss Seam
Issue Type: Feature Request
Components: Framework
Affects Versions: 1.2.1.GA
Environment: All
Reporter: Arjan van Bentem
Priority: Optional
Neither LocaleSelector nor ThemeSelector currently provide a method valueChanged(ValueChangeEvent event). Such method is needed to get some auto-submit without the need for a lot of JavaScript, to change the locale or theme without clicking a Submit button. The following would create a dropdown list, for which selecting a new value would change the look and feel right away -- thus loosing any changes made in other forms on the very same page...
<h:form>
<h:selectOneMenu
immediate="true"
value="#{themeSelector.theme}"
onchange="submit();"
valueChangeListener="#{themeSelector.valueChanged}">
<f:selectItems value="#{themeSelector.themes}" />
</h:selectOneMenu>
</h:form>
And while extending ThemeSelector, why not add a method selectTheme(String), just like LocaleSelector#selectLanguage(String).
And one might also make the cookie name available for injection. This, however, also needs some work in the xmlns:theme="http://jboss.com/products/seam/theme" namespace.
http://fisheye.labs.jboss.com/browse/JBoss/jboss-seam/src/main/org/jboss/...
public class ThemeSelector extends Selector
{
:
:
private String cookieName = "org.jboss.seam.core.Theme";
public String getCookieName() {
return cookieName;
}
public void setCookieName(String cookieName) {
this.cookieName = cookieName;
}
/**
* Sets the theme and forces it to load, useful for auto-submit dropdown
* lists using the JavaScript onchange event: <br>
* <code>
* <h:form>
* <h:selectOneMenu
* immediate="true"
* value="#{themeSelector.theme}"
* onchange="submit();"
* valueChangeListener="#{themeSelector.valueChanged}">
* <f:selectItems value="#{themeSelector.themes}" />
* </h:selectOneMenu>
* </h:form>
* </code>
*
* @param event
* the JavaServer Faces ValueChangedEvent
*/
public void valueChanged(ValueChangeEvent event) {
setTheme((String) event.getNewValue());
select();
}
/**
* Sets the theme and force it to load, useful for quick action links: <br>
* <code>
* <h:commandLink value="#{messages['org.jboss.seam.theme.default']}"
* action="#{themeSelector.selectTheme('default')}"/>
* </code>
*
* @param theme the name of the theme to be loaded
*/
public void selectTheme(String theme) {
setTheme(theme);
select();
}
:
}
In fact, the current LocaleSelector somehow does support the auto-submit without any chances:
<h:form>
<h:selectOneMenu
value="#{localeSelector.localeString}"
onchange="submit();"
valueChangeListener="#{localeSelector.select}">
<f:selectItems value="#{localeSelector.supportedLocales}" />
</h:selectOneMenu>
</h:form>
However, I guess this works by accident; in fact org.jboss.seam.core.LocaleSelector#select() does not accept ValueChangeEvent as a parameter; so I don't know why the above works -- no guarantees for future releases of JavaServer Faces? So for LocaleSelector as well a method valueChanged(ValueChangeEvent event) could be added, just to be sure:
http://fisheye.labs.jboss.com/browse/JBoss/jboss-seam/src/main/org/jboss/...
public class LocaleSelector extends Selector
{
:
:
/**
* Sets the locale and forces it to load, useful for auto-submit dropdown
* lists using the JavaScript onchange event: <br>
* <code>
* <h:form>
* <h:selectOneMenu
* immediate="true"
* value="#{localeSelector.localeString}"
* onchange="submit();"
* valueChangeListener="#{localeSelector.valueChanged}">
* <f:selectItems value="#{localeSelector.themes}" />
* </h:selectOneMenu>
* </h:form>
* </code>
*
* @param event
* the JavaServer Faces ValueChangedEvent
*/
public void valueChanged(ValueChangeEvent event) {
select();
}
:
}
That's all...!
Arjan.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
18 years, 11 months
[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-821) RuntimeException: viewNumber 1 update queue exceeded 13
by Mariusz Smykula (JIRA)
RuntimeException: viewNumber 1 update queue exceeded 13
-------------------------------------------------------
Key: JBSEAM-821
URL: http://jira.jboss.com/jira/browse/JBSEAM-821
Project: JBoss Seam
Issue Type: Feature Request
Components: ICE Faces Integration
Affects Versions: 1.1.6.GA
Environment: Seam 1.1.6, Jboss 4.0.5, ICEFaces 1.5.3
Reporter: Mariusz Smykula
Assigned To: Gregory Dick
I really dont know what is wrong. Looks like exception generated after conversation end
13:12:55,984 DEBUG [MyActionBean] destroy();
13:13:01,250 ERROR [ExceptionFilter] uncaught exception
java.lang.RuntimeException: viewNumber 1 update queue exceeded 13
at com.icesoft.faces.webapp.xmlhttp.BlockingResponseState.writeElement(BlockingResponseState.java:188)
at com.icesoft.faces.context.DOMResponseWriter.writeDOM(DOMResponseWriter.java:375)
at com.icesoft.faces.application.D2DViewHandler.renderView(D2DViewHandler.java:161)
at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:384)
at com.icesoft.faces.webapp.xmlhttp.BlockingServlet.renderCycle(BlockingServlet.java:457)
at com.icesoft.faces.webapp.xmlhttp.BlockingServlet.receiveUpdates(BlockingServlet.java:444)
at com.icesoft.faces.webapp.xmlhttp.BlockingServlet.executeRequest(BlockingServlet.java:324)
at com.icesoft.faces.webapp.xmlhttp.BlockingServlet.service(BlockingServlet.java:186)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:57)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
at java.lang.Thread.run(Unknown Source)
13:13:01,281 ERROR [DebugPageHandler] redirecting to debug page
java.lang.RuntimeException: viewNumber 1 update queue exceeded 13
at com.icesoft.faces.webapp.xmlhttp.BlockingResponseState.writeElement(BlockingResponseState.java:188)
at com.icesoft.faces.context.DOMResponseWriter.writeDOM(DOMResponseWriter.java:375)
at com.icesoft.faces.application.D2DViewHandler.renderView(D2DViewHandler.java:161)
at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:384)
at com.icesoft.faces.webapp.xmlhttp.BlockingServlet.renderCycle(BlockingServlet.java:457)
at com.icesoft.faces.webapp.xmlhttp.BlockingServlet.receiveUpdates(BlockingServlet.java:444)
at com.icesoft.faces.webapp.xmlhttp.BlockingServlet.executeRequest(BlockingServlet.java:324)
at com.icesoft.faces.webapp.xmlhttp.BlockingServlet.service(BlockingServlet.java:186)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:57)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
at java.lang.Thread.run(Unknown Source)
13:13:01,281 ERROR [[Blocking Servlet]] Servlet.service() for servlet Blocking Servlet threw exception
java.lang.NullPointerException
at org.jboss.seam.core.ConversationEntry.<init>(ConversationEntry.java:44)
at org.jboss.seam.core.ConversationEntries.createConversationEntry(ConversationEntries.java:50)
at org.jboss.seam.core.Manager.createConversationEntry(Manager.java:649)
at org.jboss.seam.core.Manager.beforeRedirect(Manager.java:796)
at org.jboss.seam.exceptions.DebugPageHandler.handle(DebugPageHandler.java:25)
at org.jboss.seam.core.Exceptions.handle(Exceptions.java:70)
at org.jboss.seam.web.ExceptionFilter.endWebRequestAfterException(ExceptionFilter.java:91)
at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:73)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
at java.lang.Thread.run(Unknown Source)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
18 years, 11 months