-
Bug
-
Resolution: Done
-
Major
-
None
Attempting to run a web app that utilizes EL 2.2 parameterized method calls results in JBoss mistakenly interpreting them as properties and results in javax.el.PropertyNotFoundException exceptions. E.g.:
This class:
import java.util.Date;
import javax.enterprise.context.RequestScoped;
import javax.inject.Named;
@Named("serverTime")
@RequestScoped
public class DateMessager {
public String getDate()
}
Being used in an h:outputText:
<h:outputText value="#
{serverTime.getDate()}" id="time"/>Results in an error message:
16:05:39,856 SEVERE [javax.enterprise.resource.webcontainer.jsf.application] (http--127.0.0.1-8080-1) Error Rendering View[/index.xhtml]: javax.el.PropertyNotFoundException: /index.xhtml @29,70 value="#{serverTime.getDate()}
": The class 'org.jboss.weld.proxies.DateMessager$Proxy$_$$_WeldClientProxy' does not have the property 'getDate'.
I've ensured that the web.xml is referring to the correct version of servlets:
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
...
</web-app>
Note: this works flawlessly in Glassfish 3.1.1 with no errors.