Hi
Disregard this. I had forgotten to configure Chain in my web.xml file.
However the situation remains unchanged. The configured method is not beeing
called and the Ajax post is hanging (loading according to firebug). The
PropertyListenerCommand is now beeing called and does what it is supposed to
(I think).
When I debug it, the following line:
propertyHelper.setValue(child, attributeBean.getName(), mb);
has:
child:
org.apache.myfaces.custom.suggestajax.inputsuggestajax.InputSuggestAjax
attributeBean.getName():suggestedItemsMethod
mb: #{post.getCities}
Hermod
-----Opprinnelig melding-----
Fra: Hermod Opstvedt [mailto:[EMAIL PROTECTED]
Sendt: 4. mai 2007 18:59
Til: [email protected]
Emne: SV: s:inputSuggestAjax an Shale/Clay - ValidatorInputRenderer Type
problem, the defaultRenderer wrapped is of the needed type - how to expose?
Hi
I have tried to follow you example, but there must be something more to it.
I have set the suggestedItemsMethod and itemLabelMethod to MB
I have in the chain-config:
<catalog name="clayCustomization">
<chain name="suggestedItemsMethod">
<command
className="com.opstvedt.osseil.component.chain.myfaces.PropertyListenerComma
nd" />
</chain>
<chain name="itemLabelMethod">
<command
className="com.opstvedt.osseil.component.chain.myfaces.PropertyListenerComma
nd" />
</chain>
</catalog>
But when I run it i get:
javax.faces.FacesException: Could not set property suggestedItemsMethod of
component personregpanel:_id72 to value : #{post.getCities} with type :
java.lang.String
at
javax.faces.component._ComponentAttributesMap.setComponentProperty(_Componen
tAttributesMap.java:419)
at
javax.faces.component._ComponentAttributesMap.put(_ComponentAttributesMap.ja
va:312)
at
org.apache.shale.clay.component.chain.PropertyValueCommand.execute(PropertyV
alueCommand.java:193)
at
org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
Hermod
-----Opprinnelig melding-----
Fra: Gary VanMatre [mailto:[EMAIL PROTECTED]
Sendt: 3. mai 2007 23:20
Til: [email protected]
Emne: Re: s:inputSuggestAjax an Shale/Clay - ValidatorInputRenderer Type
problem, the defaultRenderer wrapped is of the needed type - how to expose?
>Hm - its a method binding expression - not a value binding one, so it
>should be MB, shouldn't it?
>
The binding type should be MB but there is more to it. The method binding
requires defining the formal parameter list. The custom bindings are
configured by attribute name.
You will need to register your own command to create the custom binding.
This requires adding a chain to the "clayCustomization" catalog. The name
of the chain should correspond to the attribute name.
WEB-INF/chain-config.xml
<catalog name="clayCustomization">
<chain name="suggestedItemsMethod">
<command className="acme.PropertyListenerCommand" />
</chain>
</catalog>
The shale-clay-trinidad project in the sandbox has an example[1][2].
[1]
http://svn.apache.org/viewvc/shale/sandbox/shale-clay-trinidad/src/main/weba
pp/WEB-INF/chain-config.xml?view=markup
[2]
http://svn.apache.org/viewvc/shale/sandbox/shale-clay-trinidad/src/main/java
/org/apache/shale/clay/component/chain/trinidad/PropertyListenerCommand.java
?view=markup
>Torsten
>
Gary
>Am Donnerstag, den 03.05.2007, 19:01 +0200 schrieb Torsten Krah:
>> Did some code do get this wrapped functionality in.
>>
>> Ajay encode call is made now - however, on the InputAjax class - the
>> method binding was not set.
>>
>> What else have i have to do, to get a method binding expression on a
>> attribute working?
>>
>> My clay sandbox xml got:
>>
>> <set name="suggestedItemsMethod" bindingType="VB">
>>
>> Should be enough, shouldn't it?
>>
>> Torsten
>>