Marcin Kuthan wrote:
The inline expression elManagedBean.hello() should be equivalent to the <h:outputText value="elManagedBean.hello()"/>. I suppose that <h:outputText .../> also throws an exception (I don't have JBoss runtime to check, now).
Actually, I think the <h:outputText .../> one will probably work!
I'm still confused about what the difference is between Glassfish and JBoss. They should be running the same code.
I looked into 2.1 spec (from http://www.oracle.com/technetwork/java/javaee/tech/index.html page). I didn't know about specification maintanance release. The corresponding fragments:
A generalized  operator can be used to access maps, lists, arrays of objects and properties of a
JavaBeans object, and to invoke methods in a JavaBeans object; the operator can be
nested arbitrarily. The . operator can be used as a convenient shorthand for
property access when the property name follows the conventions of Java identifiers,
but the  operator allows for more generalized access. Simlarly, . operator can also
be used to invoke methods, when the method name is known, but the  operator
can be used to invoke methods dynamically.
The expression expr-a["identifier-b"](params)denotes a parametered
method invocation, where params is a comma-separated list of expressions
denoting the parameters for the method call.
Based on JSF spec <h:outputText /> should not work. The "value" attribute is not mentioned as method expression enabled.
The diferences between JBoss and GF are hard to explain. I assume differences in the libraries versions.