Thijs Elferink created CXF-4711:
-----------------------------------

             Summary: JAXBContextInitializer addType stopped handling recursive 
types (StackOverflow) 
                 Key: CXF-4711
                 URL: https://issues.apache.org/jira/browse/CXF-4711
             Project: CXF
          Issue Type: Bug
          Components: JAXB Databinding
    Affects Versions: 2.7.1
            Reporter: Thijs Elferink
            Priority: Blocker


Upgrading from 2.7.0. to 2.7.1 uncovers a stackoverflow in 
JAXBContextInitializer.addType when using a recursive type definition like

AddressEntity<T extends AddressEntity<T>>

java.lang.StackOverflowError
        at java.lang.Class.getDeclaredConstructor(Class.java:2001)
        at 
org.apache.cxf.common.util.ReflectionUtil$2.run(ReflectionUtil.java:67)
        at 
org.apache.cxf.common.util.ReflectionUtil$2.run(ReflectionUtil.java:64)
        at java.security.AccessController.doPrivileged(Native Method)
        at 
org.apache.cxf.common.util.ReflectionUtil.getDeclaredConstructor(ReflectionUtil.java:64)
        at 
org.apache.cxf.common.jaxb.JAXBUtils.getValidClass(JAXBUtils.java:518)
        at 
org.apache.cxf.jaxb.JAXBContextInitializer.addClass(JAXBContextInitializer.java:274)
        at 
org.apache.cxf.jaxb.JAXBContextInitializer.addType(JAXBContextInitializer.java:222)
        at 
org.apache.cxf.jaxb.JAXBContextInitializer.addType(JAXBContextInitializer.java:212)
        at 
org.apache.cxf.jaxb.JAXBContextInitializer.addType(JAXBContextInitializer.java:225)
        at 
org.apache.cxf.jaxb.JAXBContextInitializer.addType(JAXBContextInitializer.java:212)
        at 
org.apache.cxf.jaxb.JAXBContextInitializer.addType(JAXBContextInitializer.java:260)
        at 
org.apache.cxf.jaxb.JAXBContextInitializer.addType(JAXBContextInitializer.java:212)
        at 
org.apache.cxf.jaxb.JAXBContextInitializer.addType(JAXBContextInitializer.java:227)
        at 
org.apache.cxf.jaxb.JAXBContextInitializer.addType(JAXBContextInitializer.java:212)
        at 
org.apache.cxf.jaxb.JAXBContextInitializer.addType(JAXBContextInitializer.java:260)
        at 
org.apache.cxf.jaxb.JAXBContextInitializer.addType(JAXBContextInitializer.java:212)
        at 
org.apache.cxf.jaxb.JAXBContextInitializer.addType(JAXBContextInitializer.java:227)
        at 
org.apache.cxf.jaxb.JAXBContextInitializer.addType(JAXBContextInitializer.java:212)
        at 
org.apache.cxf.jaxb.JAXBContextInitializer.addType(JAXBContextInitializer.java:260)
etc....

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to