dschulten/jaxb2-tolerant-reader-plugin

Support for generic types in tr:adapter

Opened this issue ยท 0 comments

Great plugin. Very helpful when interfacing with SOAP/XML services (that tend to grow more legacy with each passing day, but that's another topic ๐Ÿ˜„). However there's one feature still missing.
Right now if I write

        <tr:alias property="propertyName" alias="prop">
          <tr:adapter class="com.example.ValueWrapperXmlAdapter"
                      to="java.util.ArrayList&lt;java.lang.String&gt;" />
        </tr:alias>

in my bindings file, I get a non-compiling class with

package foo.bar;
import java.util.ArrayList<java.lang.String>;
...
    @XmlElement(name = "PropertyName")
    @XmlJavaTypeAdapter(ValueWrapperXmlAdapter.class)
    protected String>prop;

I am using the plugin in Gradle together with wsdl2java and jaxb2commons. If I don't specify the generic type everything seems to produce code that compiles, but that means I have to do unsafe casting everywhere.
Any chance to fix this or work around more elegantly?