[JBoss Seam] - Re: How to end converstation when user doesn't cooperate?
by tynor
Thanks for sticking with me Christian - I'm sure I'll come to enlightenment with your help.
anonymous wrote :
| - make your FooList.xhtml page non-conversational as is the normal case, I don't know why that would be a conversational screen
|
Recall that these are seam-gen generated views and Home classes -- and they are indeed generated as conversational:
| <page no-conversation-view-id="/WidgetList.xhtml"
| login-required="true">
| <begin-conversation join="true"/>
| <action execute="#{widgetHome.wire}"/>
| ...
|
Perhaps this should be considered a "bug" in seam-gen?
anonymous wrote :
| - "Instead of a "new" widget, we're editing an old one." Even if you stay inside the same conversation that should not happen if you pass the identifier of the edited item correctly from the list to the edit screen.
|
Yes: if I pass pass a widgetId, I will edit the proper widget, as here:
| <s:link view="/#{empty from ? 'Widget' : from}.xhtml"
| value="Select"
| id="widget">
| <f:param name="widgetWidgetId"
| value="#{widget.widgetId}"/>
| </s:link>
|
however, when I try to invoke the same view with a freshly created widget , I end up reusing the most recently edited instance (in cases where I have not explicitly ended the conversation as in my previous message):
| <s:div styleClass="actionButtons" rendered="#{empty from}">
| <s:button view="/WidgetEdit.xhtml"
| id="create"
| value="Create widget">
| <f:param name="widgetWidgetId"/>
| </s:button>
| </s:div>
|
|
(again, this is straight seam-gen conventions from a "seam generate-entities"-- if it's "wrong", then perhaps we need to log a JIRA against seamgen?)
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4078078#4078078
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4078078
18Â years, 8Â months
[Installation, Configuration & DEPLOYMENT] - Migrate SunOne To Jboss
by cybercosmos
Hello
Im Migrating my app SunOne to Jboss 4.0.5 GA, but an error appear in server.log:
12:22:54,611 INFO [org.apache.catalina.loader.WebappClassLoader] validateJarFile(C:\jboss-4.0.5.GA\server\sic\.\tmp\deploy\tmp29442project-exp.war\WEB-INF\lib\wsclient_extended.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
2007-08-25 12:22:54,736 DEBUG [org.jboss.web.tomcat.filters.ReplyHeaderFilter] Adding header name: X-Powered-By='Servlet 2.4; JBoss-4.0.4.GA (build: CVSTag=JBoss_4_0_4_GA date=200605151000)/Tomcat-5.5'
2007-08-25 12:22:54,783 INFO [org.apache.struts.util.PropertyMessageResources] Initializing, config='org.apache.struts.util.LocalStrings', returnNull=true
2007-08-25 12:22:54,783 INFO [org.apache.struts.util.PropertyMessageResources] Initializing, config='org.apache.struts.action.ActionResources', returnNull=true
2007-08-25 12:22:55,033 ERROR [org.apache.commons.digester.Digester] Digester.getParser:
org.xml.sax.SAXNotRecognizedException: http://apache.org/xml/features/validation/dynamic
at oracle.xml.jaxp.JXSAXParserFactory.setFeature(JXSAXParserFactory.java:137)
at org.apache.commons.digester.parser.XercesParser.configureXerces(XercesParser.java:185)
at org.apache.commons.digester.parser.XercesParser.newSAXParser(XercesParser.java:138)
at org.apache.commons.digester.ParserFeatureSetterFactory.newSAXParser(ParserFeatureSetterFactory.java:73)
at org.apache.commons.digester.Digester.getParser(Digester.java:682)
at org.apache.commons.digester.Digester.getXMLReader(Digester.java:891)
at org.apache.commons.digester.Digester.parse(Digester.java:1572)
at org.apache.struts.action.ActionServlet.parseModuleConfigFile(ActionServlet.java:1006)
at org.apache.struts.action.ActionServlet.initModuleConfig(ActionServlet.java:955)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:470)
at javax.servlet.GenericServlet.init(GenericServlet.java:211)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1105)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:932)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3917)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4201)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
An idea to solution this problem????
Thanks
Manuel Raul
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4078074#4078074
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4078074
18Â years, 8Â months
[JBoss Seam] - Re: How to end converstation when user doesn't cooperate?
by tynor
anonymous wrote : It will time out.
Thanks Christian and Amitev -- that does seem to be the intent. However it doesn't match what I observe. Here's the order of play:
User visits WidgetList.xhtml -- this does a join="true" - perhaps creating a new conversation, perhaps joining an existing one.
User clicks a link to end up in WidgetEdit.xhtml -- this also does a join="true" and reuses the existing conversation. Here we're viewing Widget#1. OK so far.
User navigates directly back to WidgetList.xhtml via a menu link. (no end-conversation).
User clicks "Create Widget" button, ending up back in WidgetEdit.xhtml, but since we've used join="true", we're still in the long running conversation and reuse the old WidgetHome, which is holding onto the Widget#1. Instead of a "new" widget, we're editing an old one.
I've tried marking the Create Widget button as propagation="none" and propagation="end", but I still see the bad behavior (create widget edits the already existing Widget#1). I've tried setting join="false, nested="true" - that doesnt work (the old Home instance is still reused). I can't find a way to avoid it.
Steve
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4078073#4078073
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4078073
18Â years, 8Â months