[jbossseam-issues] [JBoss JIRA] Closed: (JBSEAM-583) EL MethodExpression fails to find overloaded methods properly
Jasper Bryant-Greene (JIRA)
jira-events at jboss.com
Tue Dec 12 21:56:38 EST 2006
[ http://jira.jboss.com/jira/browse/JBSEAM-583?page=all ]
Jasper Bryant-Greene closed JBSEAM-583.
---------------------------------------
Resolution: Rejected
Sorry, my bad, I'd left the overload out of the interface...
> EL MethodExpression fails to find overloaded methods properly
> -------------------------------------------------------------
>
> Key: JBSEAM-583
> URL: http://jira.jboss.com/jira/browse/JBSEAM-583
> Project: JBoss Seam
> Issue Type: Bug
> Components: JSF
> Affects Versions: 1.1.0.CR1
> Environment: JBoss 4.0.5.GA, 64-bit 1.5 VM, Apache MyFaces 1.1, Facelets
> Reporter: Jasper Bryant-Greene
>
> We have the following SLSB:
> <code>
> @Stateless
> @Name("admin.clientManager")
> @Scope(ScopeType.SESSION)
> public class ClientManagerAction implements ClientManager {
> @In @Out private Client client;
>
> public String view() {
> return "/j/admin/client.xhtml";
> }
>
> public String view(Client client) {
> this.client = client;
> return view();
> }
>
> public Client getClient() {
> return client;
> }
>
> public void setClient(Client client) {
> this.client = client;
> }
> }
> </code>
> We try to call the overloaded view(Client client) method from a view as follows:
> <s:link action="#{admin$clientManager.view(domain.client)}" value="#{domain.client.firstName} #{domain.client.lastName}" />
> JSF seems to not find the overloaded method, and instead throws this exception:
> 2006-12-13 15:33:41,246 ERROR [org.apache.myfaces.lifecycle.PhaseListenerManager] Exception in PhaseListener RENDER_RESPONSE(6) beforePhase.
> javax.faces.el.EvaluationException: No method found for expression #{admin$clientManager.view(domain.client)}. Method name and number of params must match.
> at org.jboss.seam.actionparam.ActionParamBindingHelper.findParamTypes(ActionParamBindingHelper.java:115)
> at org.jboss.seam.actionparam.ActionParamBindingHelper.invokeTheExpression(ActionParamBindingHelper.java:56)
> at org.jboss.seam.actionparam.ActionParamMethodBinding.invoke(ActionParamMethodBinding.java:71)
> at org.jboss.seam.core.Expressions$2.invoke(Expressions.java:95)
> at org.jboss.seam.core.Pages.callAction(Pages.java:366)
> at org.jboss.seam.jsf.AbstractSeamPhaseListener.callPageActions(AbstractSeamPhaseListener.java:252)
> at org.jboss.seam.jsf.AbstractSeamPhaseListener.beforeRender(AbstractSeamPhaseListener.java:201)
> at org.jboss.seam.jsf.SeamPhaseListener.beforePhase(SeamPhaseListener.java:51)
> at org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersBefore(PhaseListenerManager.java:70)
> at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:373)
> at javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)
> [snip]
> I will take a look at the code tonight, it looks fairly simple and I may be able to come up with something.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the seam-issues
mailing list