[jboss-user] [JBoss Seam] - Re: Trinidad PPR/Ajax and Seam
chane
do-not-reply at jboss.com
Tue May 1 14:34:35 EDT 2007
"smithbstl" wrote : Thanks Chris, I have it most of the way working except for a couple of issues.
|
| 1. When i use a commandLink to open the dialog, I can't get PPR to refresh the inputText on the orginal page. I keep getting this message
|
| ERROR [STDERR] May 1, 2007 9:11:57 AM org.apache.myfaces.trinidadinternal.renderkit.core.ppr.PPRResponseWriter$PPRTag finish
| | WARNING: No PPR-capable id found for elements of CoreInputText[UIXEditableFacesBeanImpl, id=customer_input]. This component has not written-out an id attribute.
|
| customer_input is the inputText I wish to pass the value from the dialog back to.
|
| Here is the relevant part of the page
| <tr:inputText id="customer_input"
| | value="(Empty)"
| | label="Enter New Customer:"
| | partialTriggers="dialog_id"/>
| | <s:conversationPropagation>
| | <tr:commandLink id="dialog_id"
| | text="find Customer"
| | action="dialog:chooseCustomer"
| | useWindow="true" windowHeight="400"
| | windowWidth="400" partialSubmit="true"/>
| | </s:conversationPropagation>
|
I use a returnListener on my command link. That is what sets the value on my backing bean. I then have the backing bean provide the value to the input box. That might be it? If there isn't a backing bean on the value, how is the framework going to know what to update (also, don't using the binding attribute on inputbox - will not work - there is another thread talking about this).
As for the error, I don't know. You might ask on the trinidad list (which is now the myfaces list since it got "promoted").
Also, I have not used the <s:conversationPropagation/> tag. If you use this, does it mean you don't have to have the custom ActionListener and PhaseListener?
"smithbstl" wrote :
| 2. When I use a tr:inputListOfValues component instead (it encapsulates all the functionality I need) the object I hand back to the page is getting its toString method called instead of correctly referencing a property of the object
|
|
| | <tr:inputListOfValues returnListener="#{requestEntry.processReturn}"
| | id="customer_input"
| | label="Enter New Customer:"
| | value="#{requestEntry.customer.userName}"
| | action="dialog:chooseCustomer"/>
|
| The userName property is not being referenced at all and instead the toString method of the customer object is being called instead. It really makes no sense. I have outputed the customer object's properties to the console during the ActionEvent of the dialog and again during ReturnListener of the calling form so I know the object is being passed correctly, its just the value property of the inputListOfValues is being weird.
|
hmmm...that does sound strange. I would ask on the Trinidad list. I tried to use inputListOfValues also but ran into problems trying to make it readonly so I gave up trying to use it for now. Altough, it almost sounds like it is a Seam issue and can not find the properties correctly. Can you get the "userName" by using <h:inputText>?
Wish I could help more. If you figure it out, you might post here so others trying to do something similar can learn from your efforts.
Chris....
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4042196#4042196
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4042196
More information about the jboss-user
mailing list