I saw you example before, but i get confused when i try yo use the targetAttributeName, in my xhtml says: "The attribute targetAttributeName is not defined in the component attribute"
Im using MyFaces 2.1.8 with TomEE 1.0.0 (trunk updated version). Why targetAttributeName is not defined? what im doing wrong? 2012/7/6 Leonardo Uribe <[email protected]>: > Hi > > For that case, in JSF 2.1 a new attribute for cc:attribute was added > called targetAttributeName. For example: > > <testComposite:compositeActionTargetAttributeName id="cc1" > submitAction2="testActionMethodTypeSubmit" > cancelAction="#{bean.cancelAction}"> > <f:actionListener for="submitButton" > binding="#{bean.submitActionListener}"/> > <f:actionListener for="cancelButton" > binding="#{bean.cancelActionListener}"/> > </testComposite:compositeActionTargetAttributeName> > > testComposite:compositeActionTargetAttributeName.xhtml > > <cc:interface> > <cc:attribute name="submitAction2" targets="submitCancelButton" > targetAttributeName="submitAction" method-signature="java.lang.Object > action()"/> > <cc:attribute name="cancelAction" targets="submitCancelButton" > method-signature="java.lang.Object action()"/> > <cc:actionSource name="submitButton" targets="submitCancelButton"/> > <cc:actionSource name="cancelButton" targets="submitCancelButton"/> > </cc:interface> > <cc:implementation> > <testComposite:actionTargetAttributeName id="submitCancelButton"/> > </cc:implementation> > > actionTargetAttributeName.xhtml > > <cc:interface> > <cc:attribute name="submitAction" targets="submitButton" > targetAttributeName="action" method-signature="java.lang.Object > action()"/> > <cc:attribute name="cancelAction" targetAttributeName="action" > method-signature="java.lang.Object action()"/> > <cc:actionSource name="submitButton"/> > <cc:actionSource name="cancelButton" targets="cancelAction"/> > </cc:interface> > <cc:implementation> > <h:commandButton id="submitButton" value="Submit Button"/> > <h:commandButton id="cancelAction" value="Cancel Button"/> > </cc:implementation> > > This is an example using two composite components from the test case. > I think it is enough to put targetAttributeName="action", there is no > need to add the method signature, I don't remember well, but I hope > you get the idea. > > The problem described with clientBehavior sounds something different. > Maybe one client behavior overrides the other one, but it doesn't > sound like a bug. I don't know the details behind primefaces to say > something about it, my first guess could be check if primefaces ajax > is a "real" ClientBehavior, or its renderers do something under > curtains, which is possible because after all, in that library you can > add effects using component properties, and that's not possible > without tweak p:ajax and the component renderers somehow. Note I'm > speculating here. > > regards, > > Leonardo Uribe > > 2012/7/5 Thomas Herzog <[email protected]>: >> >> I do have a simular problem with clientBehavor and primefaces ajax tag. >> When a clientBehavor is defined in the composite component and in the view >> the composite component is used with primefaces ajax then the clientBehavior >> is not added to the component but will added with faclet ajax. >> Did anyone face this ? >> Is there anything to be aware of maybe naming convention of the >> clienBehavior name ? >> I tried this with an trivial example with nothing defined but clientBehavior >> and i cannot get this work. We need the callback parameter provided by >> primefaces ajax tag. >> Is that an myfaces issue or primefaces related ? >> >> Websphere 8.0.0.1 >> Myfaces 2.1.1 (i guess ) >> Primefaces 3.1 >> >> >> >> Send via Samsung Galaxy S2 >> >> >> >> -------- Ursprüngliche Nachricht -------- >> Betreff: Re: Custom tag >> Von: José Luis Cetina <[email protected]> >> An: MyFaces Discussion <[email protected]>,Rafael Pestano >> <[email protected]> >> CC: >> >> -- ------------------------------------------------------------------- SCJA. José Luis Cetina -------------------------------------------------------------------

