-
1. Re: Possible to open new window with s:link?
mirko27 Apr 8, 2006 1:02 PM (in response to chane)Look at booking example. There are explanations opened in new window.
-
2. Re: Possible to open new window with s:link?
gavin.king Apr 8, 2006 2:34 PM (in response to chane)Yes, the CVS version of the booking demo does exactly this.
-
3. Re: Possible to open new window with s:link?
chane Apr 9, 2006 10:07 PM (in response to chane)Excellent!
I just grabbed the latest CVS code and the example works great!
However, I can't seem to make it work in my simple application. Is there any special setup I need to do in order to use the Seam UI components? I have my sample appication working almost identically to the booking example (except the link doesn't work).
I am using the latest Seam CVS code (4/9/2006 8:00pm EST). I have recompiled
- jboss-seam.jar
- and jboss-seam-ui.jar and put it into my war (inside the ear).
When I navigate to my page that has the <s:link /> and execute the link... the link just opens the same view again (the results list). I am expecting the view.xhtml to open.
Here is the Search Action I am using:package com.sample; @Name("personFinder") @Stateful @Scope(ScopeType.SESSION) @Interceptors(SeamInterceptor.class) public class ActionPersonFinder implements IPersonFinder, Serializable{ private static final long serialVersionUID = -730689360852969695L; private static final Log log = LogFactory.getLog(ActionPersonFinder.class); @DataModel private List<Person> personList; @DataModelSelection private Person selectedPerson; @In(create = true) private EntityManager entityManager; @Begin(join=true) public String find(){ log.fatal("FINDING! em["+entityManager+"]"); Query query = entityManager.createQuery("from com.its.entity.contact.Person"); personList = (List<Person>) query.getResultList(); log.fatal("FOUND!"); return "found"; } @End public String cancel(){ return "cancel"; } @Destroy @Remove public void destroy(){ } public Person getSelectedPerson(){ return selectedPerson; } public void setSelectedPerson(Person selectedPerson){ this.selectedPerson = selectedPerson; } }
Here is the search results.xhtml displayed from the "find" method above:<!DOCTYPE html 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:s="http://jboss.com/products/seam/taglib" template="template.xhtml"> <ui:param name="page" value="Two"/> <ui:define name="title">Person Results Screen</ui:define> <ui:define name="content"> <h:form> <h:outputText value="No Contacts Found" rendered="${personList.rowCount==0}"/> <h:outputText value="Contacts Found!!!!!!!" rendered="${personList.rowCount>0}"/> <h:dataTable value="${personList}" var="contact" rendered="${personList.rowCount>0}"> <h:column> <s:link action="${personEditor.view}"> View Link 1 <f:param name="contactId" value="${contact.id}"/> </s:link> </h:column> <h:column> <f:facet name="header">ID</f:facet> ${contact.id} </h:column> <h:column> <f:facet name="header">First Name</f:facet> ${contact.fname} </h:column> <h:column> <f:facet name="header">Last Name</f:facet> ${contact.lname} </h:column> <h:column> <f:facet name="header">Oragnization</f:facet> ${contact.organization.name} </h:column> </h:dataTable> </h:form> </ui:define> <ui:define name="caption">Person Results Screen</ui:define> </ui:composition>
The link created on the results screen is:http://localhost:8080/facelets-sandbox/results.its?contactId=1&actionMethod=personEditor.view&conversationId=9&dataModelSelection=personList[0]
I have using propogation="false" on the s:link so that the conversationId is not generated. The results stay the same though.
Here is the edit action. The @Create method is never called.package com.sample; @Stateful @Name("personEditor") @Interceptors(SeamInterceptor.class) @Conversational(ifNotBegunOutcome="noConversation") public class ActionPersonEditor implements IPersonEditor, Serializable{ private static final long serialVersionUID = -3036136121465320027L; private static final Log log = LogFactory.getLog(ActionPersonFinder.class); @RequestParameter private Long contactId; @Out private Person contact; @Out private boolean editDisabled = true; @In(create = true) private EntityManager entityManager; @In private ActionPersonFinder personFinder; @Create @Begin public void initialize(){ System.out.println("CREATE PERSON EDITOR"); //start a new conversation.... contact = entityManager.find(Person.class, contactId); } public String view(){ editDisabled=true; return "view"; } public String edit(){ editDisabled=false; return "edit"; } public String save(){ editDisabled=true; return "saved"; } @End public String cancel(){ editDisabled=true; entityManager.refresh(contact); return "cancel"; } @Destroy @Remove public void destroy(){ } public Person getContact(){ return contact; } public void setContact(Person contact){ this.contact = contact; } public boolean getEditDisabled(){ return editDisabled; } }
I hate to ask people to debug my code; but any thoughts on something I can try to get the link to work would be much appreciated.
Thanks,
Chris.... -
4. Re: Possible to open new window with s:link?
gavin.king Apr 9, 2006 10:37 PM (in response to chane)What is your navigation rule for the "view" outcome?
-
5. Re: Possible to open new window with s:link?
chane Apr 9, 2006 10:50 PM (in response to chane)I have tried the following with and without the <from-view-id>. And this the only navigation rule that contains <from-outcome>view</from-outcome>.
<navigation-rule> <from-view-id>/results.xhtml</from-view-id> <navigation-case> <from-outcome>view</from-outcome> <to-view-id>/view.xhtml</to-view-id> </navigation-case> <navigation-case> <from-outcome>edit</from-outcome> <to-view-id>/view.xhtml</to-view-id> </navigation-case> </navigation-rule>
-
6. Re: Possible to open new window with s:link?
gavin.king Apr 9, 2006 10:54 PM (in response to chane)remove the <from-view-id>
-
7. Re: Possible to open new window with s:link?
chane Apr 9, 2006 11:00 PM (in response to chane)ok - I removed the <from-view-id> and it still doesn't work.
Also, when I look at the log file when I execute the booking demo I see the following:2006-04-09 22:46:02,484 DEBUG [org.jboss.seam.contexts.Lifecycle] >>> Begin web request 2006-04-09 22:46:02,484 DEBUG [org.jboss.seam.Component] instantiating Seam component: org.jboss.seam.core.manager 2006-04-09 22:46:02,484 DEBUG [org.jboss.seam.core.Manager] No stored conversation 2006-04-09 22:46:02,484 DEBUG [org.jboss.seam.contexts.Contexts] found in application context: org.jboss.seam.core.init 2006-04-09 22:46:02,484 DEBUG [org.jboss.seam.contexts.Contexts] found in session context: hotels 2006-04-09 22:46:02,484 DEBUG [org.jboss.seam.jsf.SeamPhaseListener] After restore view, conversation context: ConversationContext(5) 2006-04-09 22:46:02,593 DEBUG [org.jboss.seam.Component] instantiating Seam component: hotelBooking <snip />
So, that last line says that Seam is finding the hotelBooking component.
When I look at the log for my sample application, there is not a line saying Seam is trying to find my personEditor component? Could I not be creating the personEditor correctly?
Chris... -
8. Re: Possible to open new window with s:link?
chane Apr 9, 2006 11:09 PM (in response to chane)Although in the log file I see the personEditor being deployed by Seam:
2006-04-09 22:58:25,921 INFO [javax.servlet.ServletContextListener] Welcome to Seam 1.0 beta 2 2006-04-09 22:58:25,953 INFO [org.jboss.seam.init.Initialization] reading properties from: /seam.properties 2006-04-09 22:58:25,968 DEBUG [org.jboss.seam.init.Initialization] not found: /seam-jndi.properties 2006-04-09 22:58:25,968 INFO [org.jboss.seam.init.Initialization] initializing Seam 2006-04-09 22:58:26,015 INFO [org.jboss.seam.Component] Component: org.jboss.seam.core.init, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.Init 2006-04-09 22:58:26,062 DEBUG [org.jboss.seam.Component] org.jboss.seam.core.init.jndiPattern=facelets-sandbox/#{ejbName}/local 2006-04-09 22:58:26,062 DEBUG [org.jboss.seam.Component] org.jboss.seam.core.init.managedPersistenceContexts=entityManager 2006-04-09 22:58:26,078 INFO [org.jboss.seam.Component] Component: org.jboss.seam.core.pages, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.Pages 2006-04-09 22:58:26,109 INFO [org.jboss.seam.Component] Component: org.jboss.seam.core.manager, scope: EVENT, type: JAVA_BEAN, class: org.jboss.seam.core.Manager 2006-04-09 22:58:26,140 INFO [org.jboss.seam.Component] Component: switcher, scope: PAGE, type: JAVA_BEAN, class: org.jboss.seam.core.Switcher 2006-04-09 22:58:26,156 INFO [org.jboss.seam.Component] Component: redirect, scope: CONVERSATION, type: JAVA_BEAN, class: org.jboss.seam.core.Redirect 2006-04-09 22:58:26,187 INFO [org.jboss.seam.Component] Component: isUserInRole, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.IsUserInRole 2006-04-09 22:58:26,187 INFO [org.jboss.seam.Component] Component: conversation, scope: CONVERSATION, type: JAVA_BEAN, class: org.jboss.seam.core.Conversation 2006-04-09 22:58:26,218 INFO [org.jboss.seam.Component] Component: conversationList, scope: PAGE, type: JAVA_BEAN, class: org.jboss.seam.core.ConversationList 2006-04-09 22:58:26,234 INFO [org.jboss.seam.Component] Component: conversationStack, scope: PAGE, type: JAVA_BEAN, class: org.jboss.seam.core.ConversationStack 2006-04-09 22:58:26,265 INFO [org.jboss.seam.Component] Component: facesContext, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.FacesContext 2006-04-09 22:58:26,281 INFO [org.jboss.seam.Component] Component: pageContext, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.PageContext 2006-04-09 22:58:26,296 INFO [org.jboss.seam.Component] Component: eventContext, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.EventContext 2006-04-09 22:58:26,328 INFO [org.jboss.seam.Component] Component: sessionContext, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.SessionContext 2006-04-09 22:58:26,359 INFO [org.jboss.seam.Component] Component: statelessContext, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.StatelessContext 2006-04-09 22:58:26,390 INFO [org.jboss.seam.Component] Component: applicationContext, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.ApplicationContext 2006-04-09 22:58:26,421 INFO [org.jboss.seam.Component] Component: conversationContext, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.ConversationContext 2006-04-09 22:58:26,453 INFO [org.jboss.seam.Component] Component: businessProcessContext, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.BusinessProcessContext 2006-04-09 22:58:26,484 INFO [org.jboss.seam.Component] Component: locale, scope: STATELESS, type: JAVA_BEAN, class: org.jboss.seam.core.Locale 2006-04-09 22:58:26,500 INFO [org.jboss.seam.Component] Component: messages, scope: SESSION, type: JAVA_BEAN, class: org.jboss.seam.core.Messages 2006-04-09 22:58:26,515 INFO [org.jboss.seam.Component] Component: facesMessages, scope: CONVERSATION, type: JAVA_BEAN, class: org.jboss.seam.core.FacesMessages 2006-04-09 22:58:26,562 INFO [org.jboss.seam.Component] Component: resourceBundle, scope: SESSION, type: JAVA_BEAN, class: org.jboss.seam.core.ResourceBundle 2006-04-09 22:58:26,578 INFO [org.jboss.seam.Component] Component: localeSelector, scope: SESSION, type: JAVA_BEAN, class: org.jboss.seam.core.LocaleSelector 2006-04-09 22:58:26,593 INFO [org.jboss.seam.Component] Component: uiComponent, scope: STATELESS, type: JAVA_BEAN, class: org.jboss.seam.core.UiComponent 2006-04-09 22:58:26,609 INFO [org.jboss.seam.Component] Component: org.jboss.seam.debug.introspector, scope: EVENT, type: JAVA_BEAN, class: org.jboss.seam.debug.Introspector 2006-04-09 22:58:26,656 INFO [org.jboss.seam.Component] Component: org.jboss.seam.debug.contexts, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.debug.Contexts 2006-04-09 22:58:26,687 INFO [org.jboss.seam.Component] Component: org.jboss.seam.remoting.messaging.subscriptionRegistry, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.remoting.messaging.SubscriptionRegistry 2006-04-09 22:58:26,718 DEBUG [org.jboss.seam.Component] instantiating Seam component: org.jboss.seam.core.init 2006-04-09 22:58:26,718 INFO [org.jboss.seam.Component] Component: entityManager, scope: CONVERSATION, type: JAVA_BEAN, class: org.jboss.seam.core.ManagedPersistenceContext 2006-04-09 22:58:26,750 DEBUG [org.jboss.seam.Component] entityManager.persistenceUnitJndiName=java:/fsEntityManagerFactory 2006-04-09 22:58:26,750 INFO [org.jboss.seam.deployment.Scanner] scanning: /C:/app/jboss/4.0.4RC1/server/default/tmp/deploy/tmp15784facelets-sandbox.ear-contents/facelets-sandbox.jar 2006-04-09 22:58:26,781 DEBUG [org.jboss.seam.deployment.Scanner] archive: C:\app\jboss\4.0.4RC1\server\default\tmp\deploy\tmp15784facelets-sandbox.ear-contents\facelets-sandbox.jar 2006-04-09 22:58:26,781 DEBUG [org.jboss.seam.deployment.Scanner] found: META-INF/ 2006-04-09 22:58:26,781 DEBUG [org.jboss.seam.deployment.Scanner] found: META-INF/MANIFEST.MF 2006-04-09 22:58:26,781 DEBUG [org.jboss.seam.deployment.Scanner] found: com/ 2006-04-09 22:58:26,781 DEBUG [org.jboss.seam.deployment.Scanner] found: com/its/ 2006-04-09 22:58:26,781 DEBUG [org.jboss.seam.deployment.Scanner] found: com/its/Menu.class 2006-04-09 22:58:26,781 DEBUG [org.jboss.seam.deployment.Scanner] found: com/its/MenuItem.class 2006-04-09 22:58:26,781 DEBUG [org.jboss.seam.deployment.Scanner] found: com/its/TestBean.class 2006-04-09 22:58:26,781 DEBUG [org.jboss.seam.deployment.Scanner] found: com/its/User.class 2006-04-09 22:58:26,781 DEBUG [org.jboss.seam.deployment.Scanner] found: com/its/backoffice/ 2006-04-09 22:58:26,781 DEBUG [org.jboss.seam.deployment.Scanner] found: com/its/backoffice/actions/ 2006-04-09 22:58:26,781 DEBUG [org.jboss.seam.deployment.Scanner] found: com/its/backoffice/actions/ActionPersonEditor.class 2006-04-09 22:58:26,796 DEBUG [org.jboss.seam.deployment.Scanner] found: com/its/backoffice/actions/ActionPersonFinder.class 2006-04-09 22:58:26,796 DEBUG [org.jboss.seam.deployment.Scanner] found: com/its/backoffice/actions/inf/ 2006-04-09 22:58:26,796 DEBUG [org.jboss.seam.deployment.Scanner] found: com/its/backoffice/actions/inf/IPersonEditor.class 2006-04-09 22:58:26,796 DEBUG [org.jboss.seam.deployment.Scanner] found: com/its/backoffice/actions/inf/IPersonFinder.class 2006-04-09 22:58:26,796 DEBUG [org.jboss.seam.deployment.Scanner] found: com/its/entity/ 2006-04-09 22:58:26,796 DEBUG [org.jboss.seam.deployment.Scanner] found: com/its/entity/contact/ 2006-04-09 22:58:26,796 DEBUG [org.jboss.seam.deployment.Scanner] found: com/its/entity/contact/Organization.class 2006-04-09 22:58:26,796 DEBUG [org.jboss.seam.deployment.Scanner] found: com/its/entity/contact/Person.class 2006-04-09 22:58:26,796 DEBUG [org.jboss.seam.deployment.Scanner] found: META-INF/persistence.xml 2006-04-09 22:58:26,796 DEBUG [org.jboss.seam.deployment.Scanner] found: import.sql 2006-04-09 22:58:26,796 DEBUG [org.jboss.seam.deployment.Scanner] found: seam.properties 2006-04-09 22:58:26,796 INFO [org.jboss.seam.Component] Component: testBean, scope: STATELESS, type: JAVA_BEAN, class: com.its.TestBean 2006-04-09 22:58:26,812 INFO [org.jboss.seam.Component] Component: personEditor, scope: CONVERSATION, type: STATEFUL_SESSION_BEAN, class: com.its.backoffice.actions.ActionPersonEditor, JNDI: facelets-sandbox/ActionPersonEditor/local 2006-04-09 22:58:26,843 INFO [org.jboss.seam.Component] Component: loggedInUser, scope: STATELESS, type: JAVA_BEAN, class: com.its.User 2006-04-09 22:58:26,859 INFO [org.jboss.seam.Component] Component: personFinder, scope: SESSION, type: STATEFUL_SESSION_BEAN, class: com.its.backoffice.actions.ActionPersonFinder, JNDI: facelets-sandbox/ActionPersonFinder/local 2006-04-09 22:58:26,890 DEBUG [org.jboss.seam.Component] instantiating Seam component: pageContext 2006-04-09 22:58:26,890 DEBUG [org.jboss.seam.Component] instantiating Seam component: eventContext 2006-04-09 22:58:26,890 DEBUG [org.jboss.seam.Component] instantiating Seam component: facesContext 2006-04-09 22:58:26,890 DEBUG [org.jboss.seam.Component] instantiating Seam component: sessionContext 2006-04-09 22:58:26,890 DEBUG [org.jboss.seam.Component] instantiating Seam component: statelessContext 2006-04-09 22:58:26,890 DEBUG [org.jboss.seam.Component] instantiating Seam component: conversationContext 2006-04-09 22:58:26,890 DEBUG [org.jboss.seam.Component] instantiating Seam component: isUserInRole 2006-04-09 22:58:26,890 DEBUG [org.jboss.seam.Component] instantiating Seam component: applicationContext 2006-04-09 22:58:26,890 DEBUG [org.jboss.seam.Component] instantiating Seam component: businessProcessContext 2006-04-09 22:58:26,890 INFO [org.jboss.seam.init.Initialization] done initializing Seam 2006-04-09 22:58:26,906 INFO [org.apache.myfaces.config.FacesConfigurator] Reading standard config org/apache/myfaces/resource/standard-faces-config.xml 2006-04-09 22:58:26,968 INFO [org.apache.myfaces.config.FacesConfigurator] Reading config jar:file:/C:/app/jboss/4.0.4RC1/server/default/tmp/deploy/tmp15784facelets-sandbox.ear-contents/jboss-seam.jar!/META-INF/faces-config.xml 2006-04-09 22:58:27,015 INFO [org.apache.myfaces.config.FacesConfigurator] Reading config jar:file:/C:/app/jboss/4.0.4RC1/server/default/tmp/deploy/tmp15784facelets-sandbox.ear-contents/facelets-sandbox-exp.war/WEB-INF/lib/jboss-seam-ui.jar!/META-INF/faces-config.xml 2006-04-09 22:58:27,046 INFO [org.apache.myfaces.config.FacesConfigurator] Reading config jar:file:/C:/app/jboss/4.0.4RC1/server/default/tmp/deploy/tmp15784facelets-sandbox.ear-contents/facelets-sandbox-exp.war/WEB-INF/lib/jsf-facelets.jar!/META-INF/faces-config.xml 2006-04-09 22:58:27,078 INFO [org.apache.myfaces.config.FacesConfigurator] Reading config /WEB-INF/faces-config.xml 2006-04-09 22:58:27,125 ERROR [org.apache.myfaces.util.LocaleUtils] Locale name null or empty, ignoring 2006-04-09 22:58:27,250 INFO [org.apache.myfaces.webapp.StartupServletContextListener] ServletContext 'C:\app\jboss\4.0.4RC1\server\default\.\tmp\deploy\tmp15784facelets-sandbox.ear-contents\facelets-sandbox-exp.war\' initialized. 2006-04-09 22:58:27,281 DEBUG [org.jboss.web.tomcat.filters.ReplyHeaderFilter] Adding header name: X-Powered-By='Servlet 2.4; JBoss-4.0.4RC1 (build: CVSTag=JBoss_4_0_4_RC1 date=200602071519)/Tomcat-5.5' 2006-04-09 22:58:27,312 DEBUG [org.jboss.web.tomcat.tc5.TomcatDeployer] Initialized: {WebApplication: /C:/app/jboss/4.0.4RC1/server/default/tmp/deploy/tmp15784facelets-sandbox.ear-contents/facelets-sandbox-exp.war/, URL: file:/C:/app/jboss/4.0.4RC1/server/default/tmp/deploy/tmp15784facelets-sandbox.ear-contents/facelets-sandbox-exp.war/, classLoader: java.net.FactoryURLClassLoader@126cdd1:19320273} jboss.web:j2eeType=WebModule,name=//localhost/facelets-sandbox,J2EEApplication=none,J2EEServer=none 2006-04-09 22:58:27,312 DEBUG [org.jboss.web.WebModule] Started jboss.web.deployment:war=facelets-sandbox.war,id=-195878387 2006-04-09 22:58:27,312 DEBUG [org.jboss.system.ServiceController] Starting dependent components for: jboss.web.deployment:war=facelets-sandbox.war,id=-195878387 dependent components: [] 2006-04-09 22:58:27,312 DEBUG [org.jboss.deployment.MainDeployer] End deployment start on package: facelets-sandbox.war 2006-04-09 22:58:27,312 DEBUG [org.jboss.system.ServiceController] starting service jboss.j2ee:service=EARDeployment,url='facelets-sandbox.ear' 2006-04-09 22:58:27,312 DEBUG [org.jboss.deployment.EARDeployment] Starting jboss.j2ee:service=EARDeployment,url='facelets-sandbox.ear' 2006-04-09 22:58:27,312 DEBUG [org.jboss.deployment.EARDeployment] Started jboss.j2ee:service=EARDeployment,url='facelets-sandbox.ear' 2006-04-09 22:58:27,312 DEBUG [org.jboss.system.ServiceController] Starting dependent components for: jboss.j2ee:service=EARDeployment,url='facelets-sandbox.ear' dependent components: [] 2006-04-09 22:58:27,312 INFO [org.jboss.deployment.EARDeployer] Started J2EE application: file:/C:/app/jboss/4.0.4RC1/server/default/deploy/facelets-sandbox.ear 2006-04-09 22:58:27,312 DEBUG [org.jboss.deployment.MainDeployer] End deployment start on package: facelets-sandbox.ear 2006-04-09 22:58:27,312 DEBUG [org.jboss.deployment.MainDeployer] Deployed package: file:/C:/app/jboss/4.0.4RC1/server/default/deploy/facelets-sandbox.ear
-
9. Re: Possible to open new window with s:link?
chane Apr 10, 2006 12:02 AM (in response to chane)I found the issue.
In my s:link command, I was using ${personEditor.view}.
When I changed this to #{personEditor.view} it worked!
I found this by looking at the code in SeamPhaseListener line 104. But that is probably coincidence as I don't see how that line caused this behavior:String expression = "#{" + action + "}";
Anyway, if possible, can the s:link action accept $ also? I have opened a JIRA for tracking:
http://jira.jboss.com/jira/browse/JBSEAM-202 -
10. Re: Possible to open new window with s:link?
gavin.king Apr 10, 2006 12:14 AM (in response to chane)Why do you want to use $?? # is preferred.
-
11. Re: Possible to open new window with s:link?
chane Apr 10, 2006 12:30 AM (in response to chane)Good to know. It's just more natural for me to read. I've worked with other languages/applications where the $ was used for expression/variable substitution.
It's not a problem to change my style - particularly if that is the way the jsf/facelets community is shaping up. Since el expressions can be either symbol, I just choose the dollar sign.
The fact the the # is recommended to use (and the $ will not work in some specific cases) should probably be documented somewhere. I'm sure not everyone wants to spend 5 hours hunting for a syntax bug :)
On the very positive side, the more I work with and hunt down stuff like this, I learn a lot more about Seam and EJB. I am really starting to like the framework and am overcoming my apprehension about working with an EJB application server (have used struts/web container almost exclusively for my java web development).
Thanks again!
Chris....