Question

I'm having problems when trying to call an action of a composite component.

I have a composite component with this attribute defined:

<composite:attribute name="action"  
     method-signature="java.lang.String action()" required="false"/>
<composite:attribute name="render" type="java.lang.String" required="false"/>

And then I have this in the composite implementation:

<a4j:commandButton  value="Guardar" id="btnGuardar1"   
       render="#{cc.attrs.render}" action="#{cc.attrs.action}"/>

In my page I call it like this:

<viewweb:popUpBusqResponsables render="primCons" 
       action="#{consultaBean.actionGuardarSeleccionResponsable}"/>

But everytime I try to call the action it gives me the following error:

ErrorPageWrit E An exception occurred

                          javax.faces.FacesException: javax.el.ELException: 

//C:/abc/Workspaces/.../popUpBusqResponsables.xhtml at line 47 and column 40 action="#{cc.attrs.action}": Cannot convert /pages/consultas/consultas.xhtml at line 143 and column 63 action="#{consultaBean.actionGuardarSeleccionResponsable}": ValueExpression[#{consultaBean.actionGuardarSeleccionResponsable}] of type class org.apache.myfaces.view.facelets.el.TagValueExpressionUEL to class javax.el.MethodExpression at org.apache.myfaces.shared_impl.context.ExceptionHandlerImpl.wrap(ExceptionHandlerImpl.java:241) ... .. .

Any ideas ?

I'm using MyFaces 2.0.19 || websphere 8.0 || Richfaces 4.2.3

Was it helpful?

Solution

I've renamed the attribute to something other than "action" and it worked ... I guess "action" is a reserved word

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top