users@jaxb.java.net

jaxb2-reflection problem

From: Hunor Bartha <hunor.bartha_at_ambo.ro>
Date: Thu, 10 May 2007 13:40:25 +0300

Hi,

I am having trouble using the jaxb2-reflection library to read the
annotation information from my generated jaxb pojos. When i try to
create the RuntimeTypeInfoset, using
JAXBModelFactory.create(MyClass.class) it throws the following exception:

Exception in thread "main" java.lang.NullPointerException
    at
org.jvnet.jaxb.reflection.runtime.reflect.Accessor$FieldReflection.optimize(Unknown
Source)
    at
org.jvnet.jaxb.reflection.runtime.reflect.TransducedAccessor$CompositeTransducedAccessorImpl.<init>(Unknown
Source)
    at
org.jvnet.jaxb.reflection.runtime.reflect.TransducedAccessor.get(Unknown
Source)
    at
org.jvnet.jaxb.reflection.model.impl.RuntimeClassInfoImpl.calcTransducer(Unknown
Source)
    at
org.jvnet.jaxb.reflection.model.impl.RuntimeClassInfoImpl.getTransducer(Unknown
Source)
    at
org.jvnet.jaxb.reflection.model.impl.RuntimeClassInfoImpl.link(Unknown
Source)
    at org.jvnet.jaxb.reflection.model.impl.ModelBuilder.link(Unknown
Source)
    at
org.jvnet.jaxb.reflection.model.impl.RuntimeModelBuilder.link(Unknown
Source)
    at org.jvnet.jaxb.reflection.JAXBModelFactory.create(Unknown Source)
    at org.jvnet.jaxb.reflection.JAXBModelFactory.create(Unknown Source)
    at org.jvnet.jaxb.reflection.JAXBModelFactory.create(Unknown Source)

I discovered that the problem is caused by a field that has a
@XmlElementRefs() annotation, like:

        @XmlElementRefs({
            @XmlElementRef(name = "name1", type = JAXBElement.class),
            @XmlElementRef(name = "name2", type = JAXBElement.class)
        })

Does anybody has a quick solution?

Thanks,

hunor