I have a situation where OGNL seems to be misinterpreting the class of the HTTP parameter property it is setting during the ParameterInterceptor call.

As you can see from the exception message, the object is an ArrayList and certainly not a Set which OGNL thinks it is. I have double, triple and quadruple checked that I am not using a Set at this point.

How and where is OGNL deciding that this is a Set? And can I configure it?

The HTTP parameter is 'myParameter[0]' and the List is a generic, assuming that makes a difference.


java.lang.ClassCastException: org.apache.openjpa.util.java$util$ArrayList$proxy cannot be cast to java.util.Set
        at ognl.SetPropertyAccessor.getProperty(SetPropertyAccessor.java:46)
at com.opensymphony.xwork2.ognl.accessor.XWorkCollectionPropertyAccessor.getProperty(XWorkCollectionPropertyAccessor.java:80)
        at ognl.OgnlRuntime.getProperty(OgnlRuntime.java:1643)
        at ognl.ASTProperty.getValueBody(ASTProperty.java:92)
        at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)
        at ognl.SimpleNode.getValue(SimpleNode.java:210)

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org

Reply via email to