Boa tarde pessoal do GUJ, estou com um problema com tipo genérico em WebService utilizando JAX-WS. Tenho uma classe que armazena dados para serem retornados a um cliente WebService porém quando gero os artefatos no cliente a classe aparece sem os atributos e os métodos.
Classe no WebService:
public class OutputData {
private List list;
private int total;
gets()…
sets()…
}
Artefato gerado na aplicação cliente:
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = “outputData”)
public class OutputData {
}
Minha dúvida é quanto ao uso de tipos genéricos no JAX se existe alguma recomendação quanto ao seu uso.
Resumindo: suporte a tipos genéricos em JAX depende do que você está usando 
Pessoal consegui resolver o problema utilizando a annotation @XMLTransient, existem outras formas de fazer, mas achei esta a mais simples.
[code]//Classe abstrata
public abstract class AbstractPagedList {
protected List data;
protected int total;
@XmlTransient
abstract public List<T> getData();
@XmlTransient
abstract public int getTotal();
}
//Classe que implementa os métodos “genéricos” para um tipo específico
public class ClientePagedList extends AbstractPagedList {
public ClientePagedList() {
}
public ClientePagedList(List<Cliente> data, int total) {
super.data = data;
super.total = total;
}
@Override
@XmlElement
public List<Cliente> getData() {
return data;
}
@Override
@XmlElement
public int getTotal() {
return total;
}
}
//Método do WebService
@WebMethod(operationName = “listClientes”)
public ClientePagedList listClientes() {
return new ClientePagedList(new ArrayList(), 0);
}
[/code]