Hm - the updateActionListener component does not define a COMPONENT_TYPE. Whats now? How can i declare this component to use it with clay?
Torsten Am Montag, den 23.04.2007, 12:49 +0200 schrieb Torsten Krah: > Did it, but now i get: > > java.lang.RuntimeException: javax.faces.FacesException: Undefined > component type > org.apache.myfaces.custom.updateactionlistener.UpdateActionListener > org.apache.shale.clay.component.Clay.encodeBegin(Clay.java:393) > > org.apache.shale.clay.component.Clay.recursiveRenderChildren(Clay.java:415) > > org.apache.shale.clay.component.Clay.recursiveRenderChildren(Clay.java:418) > > The chain is there, my chain class too. > > > <component jsfid="t:updateActionListener" > > componentType="org.apache.myfaces.custom.updateactionlistener.UpdateActionListener" > extends="baseComponent"> > <attributes> > <set name="propertyBinding" bindingType="VB"> > <description>Target EL value > binding.</description> > </set> > <set name="valueBinding" bindingType="VB"> > <description>Source EL value > binding.</description> > </set> > <set name="converter" bindingType="VB"> > <description> > Converter id for conversion of the > source to the > target > </description> > </set> > </attributes> > </component> > > Definition of the component. > > Whats missing? Why i get undefined componentType? > > Torsten > > Am Freitag, den 13.04.2007, 18:48 +0000 schrieb Gary VanMatre: > > >I am trying to use the updateActionListener from Tomahawk, using Hermods > > >tomahawk 1.1.5 Snapshot xml for clay. > > > > > >But i get this exception: > > > > > >[18189 2007-04-13 > > >18:33:17,488](org.apache.myfaces.application.ApplicationImpl)**ERROR**{org.apach > > >e.myfaces.application.ApplicationImpl.createComponent:391} User: > > >->Undefined > > >component type override > > >[18198 2007-04-13 > > >18:33:17,497](org.apache.shale.clay.component.chain.CreateComponentCommand)**ERR > > >OR**{org.apache.shale.clay.component.chain.CreateComponentCommand.execute:166} > > > > > >User: ->Cannot create Component renderId="464" > > >jsfid="t:updateActionListener" > > >componentType="override" extends="t:updateActionListener" allowBody="null" > > >facetName="null" > > >javax.faces.FacesException: Undefined component type override > > > > > > > > >Hm according to the shale clay page, this componentType should be > > >possible. > > > > > >Whats missing here? > > > > > > > You need to define the listener as a top-level component setting the > > component type > > to the fully qualified path to the action listener. > > > > <component jsfid="t:updateActionListener" > > componentType="org.apache.myfaces.custom.updateactionlistener.UpdateActionListener" > > .. > > ... > > </component... > > > > However, this won't work without further customizations because this action > > listener > > is statefull and has special value binding attributes. The JSP tag has to > > do some > > special processing [1]. > > > > You will need to create a custom handler to create the listener. There is > > an > > example in the sandbox for the Trinidad version of the same thing. > > > > First you will need to add a commons chains config file to the WEB-INF > > folder > > of your web app [2]. Add a catalog with the name "clayCustomizations". > > Add a chain with the name of "preprocessAddActionListener" the the catalog. > > > > <catalog name="clayCustomization"> > > <chain name="preprocessAddActionListener"> > > <command className="acme.tomahawk.CreateActionListenerCommand" /> > > </chain> > > </catalog> > > > > Next, create a commons chains command extending > > "org.apache.shale.clay.component.chain.CreateActionListenerCommand". > > Add the extra logic to handle the special attributes [3]. > > > > > > [1] > > http://svn.apache.org/viewvc/myfaces/tomahawk/trunk/core/src/main/java/org/apache/myfaces/custom/updateactionlistener/UpdateActionListenerTag.java?view=markup > > [2] > > http://svn.apache.org/viewvc/shale/sandbox/shale-clay-trinidad/src/main/webapp/WEB-INF/chain-config.xml?view=markup > > [3] > > http://svn.apache.org/viewvc/shale/sandbox/shale-clay-trinidad/src/main/java/org/apache/shale/clay/component/chain/trinidad/CreateActionListenerCommand.java?view=markup > > > > > > >Torsten > > > > Gary
smime.p7s
Description: S/MIME cryptographic signature