struts-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Daniel Matthews-Grout (JIRA)" <j...@apache.org>
Subject [jira] [Created] (WW-3822) Struts 2 and Generic Class - Null Pointer Exception
Date Sat, 19 May 2012 22:33:40 GMT
Daniel Matthews-Grout created WW-3822:
-----------------------------------------

             Summary: Struts 2 and Generic Class - Null Pointer Exception
                 Key: WW-3822
                 URL: https://issues.apache.org/jira/browse/WW-3822
             Project: Struts 2
          Issue Type: Bug
          Components: Core Actions
    Affects Versions: 2.3.1.1
         Environment: Windows 7 - Java 6 - Tomcat 7
            Reporter: Daniel Matthews-Grout
            Priority: Minor


I have a class that extends a generic abstract class and types that generic - e.g.

class MyClass extends AbstractClass<Integer> ..

class AbstractClass<ID extends Serializable> {
   public abstract ID getId();
}

JSP:
<s:property value="myClass.id"/>

The abstract class defined an abstract getter that I implemented in the concrete class.  I
then referenced this getter in the JSP of a Struts 2 action and got the following:

java.lang.NullPointerException
 at com.opensymphony.xwork2.conversion.impl.DefaultObjectTypeDeterminer.getClass(DefaultObjectTypeDeterminer.java:314)
 at com.opensymphony.xwork2.conversion.impl.DefaultObjectTypeDeterminer.getKeyClass(DefaultObjectTypeDeterminer.java:93)
 at com.opensymphony.xwork2.ognl.accessor.XWorkMapPropertyAccessor.getProperty(XWorkMapPropertyAccessor.java:93)
 at ognl.OgnlRuntime.getProperty(OgnlRuntime.java:2303)
 at ognl.ASTProperty.getValueBody(ASTProperty.java:114)
 at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:212)
 at ognl.SimpleNode.getValue(SimpleNode.java:258)
 at ognl.ASTChain.getValueBody(ASTChain.java:141)
 at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:212)
 at ognl.SimpleNode.getValue(SimpleNode.java:258)
 at ognl.Ognl.getValue(Ognl.java:494)
 at ognl.Ognl.getValue(Ognl.java:458)
....

So what I had to do was to add a another get/set pair in the concrete class that updated/read
from the same field.  This stopped the error.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message