Skip to content

Support for generic types in tr:adapter #1

@virtual-machinist

Description

@virtual-machinist

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?

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions