-
1. Re: PropertyNotFoundException Target: binding="{helloAction.outputText}": Unreachable, identifier 'helloAction' resolved to null
lsabin Aug 7, 2008 11:54 AM (in response to blabno)Hi.
I think the answer to your problem is in the reference documentation:
7.10. Conversational components and JSF component
bindings
Conversational components have one minor limitation: they cannot be used to hold bindings to
JSF components.Because your component is a SFSB the binding does not work. There's a workaround for this in the same section of the manual.
Hope this helps.
-
2. Re: PropertyNotFoundException Target: binding="{helloAction.outputText}": Unreachable, identifier 'helloAction' resolved to null
blabno Aug 7, 2008 12:28 PM (in response to blabno)Strange cause following works great:
<rich:tree id="systemTree" nodeSelectListener="#{categoryManager.processSelection}" ajaxSubmitSelection="true" switchType="ajax" binding="#{systemTree}" var="item" adviseNodeSelected="#{categoryManager.adviseNodeSelected}" reRender="systemTree" > <rich:treeNode>#{item.name}</rich:treeNode> </rich:tree>
@Stateful @Name("categoryManager") public class CategoryManagerBean implements CategoryManagerLocal { @Out(required = false) private UITree systemTree; ... }
-
3. Re: PropertyNotFoundException Target: binding="{helloAction.outputText}": Unreachable, identifier 'helloAction' resolved to null
pmuir Aug 8, 2008 2:42 PM (in response to blabno)Yes, that's because you don't do any binding there!
-
4. Re: PropertyNotFoundException Target: binding="{helloAction.outputText}": Unreachable, identifier 'helloAction' resolved to null
blabno Aug 11, 2008 12:09 PM (in response to blabno)What do you mean Pete ? There is binding to conversation scope attribute.
Btw. That sample above (with richfaces) works great. I'm adding new nodes to UITree and they get rendered. But following sample works strangly.@Name("hello") @Stateless public class HelloActionBean implements HelloActionLocal { private String name; @RequestParameter @Out(required=false) private String paraName; @Out(required=false) private UIOutput text = new HtmlOutputText(); @Out(required=false) private HtmlOutputText text2 = new HtmlOutputText(); public void sayHello() { text.setValue("Hello "+getName()); text2.setValue("Hello "+paraName); } public String getName() { return name; } public void setName(String name) { this.name = name; } }
<h:form> #{paraName}<br/> text : <h:outputText binding="#{text}"/><br/> text2 : <h:outputText binding="#{text2}"/><br/> <h:inputText value="#{hello.name}"/> <h:commandButton action="#{hello.sayHello}"/> </h:form>
When I enter in my browser following URL
index.seam?paraName=jasio
I get :jasio text :Hello null text2 :Hello jasio
When I submit form with input text filled with
adam
I get :text :Hello null text2 :Hello jasio
And then when again enter in browser
index.seam?paraName=jasio3
I get :jasio3 text :Hello adam text2 :Hello jasio3
Why input submitted in form is not printed instantly ?
BTW. I've seen example where both binding and value attributes were specified. Doesn't binding include value ?