1

Web メソッドの引数としてジェネリックを使用できますか? たとえば インターフェイス内

@WebResult(name = "genericTest")
    @WebMethod
    public <T extends GenParent> String testGeneric(T t);

そしてimpl で

 @Override
    @POST
    @Path("/generic")
    @Consumes({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN })
    @Produces({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_PLAIN })
    public <T extends GenParent> String testGeneric(T t) {
    return t.getClass().getSimpleName();
    }

これらのサンプル クラスは次のとおりです。

import java.io.Serializable;

public class GenParent implements Serializable {

    private static final long serialVersionUID = 6189314185893149450L;

    private String a;
    private String b;
    // getter and setter    
}


public class GenChild extends GenParent {

    private static final long serialVersionUID = -7802747637373336039L;

    private String c;

    //getter and setter   
}

したがって、この web-method を呼び出すときは、GenChild に相当する Xml を渡します。

出来ますか?

4

0 に答える 0