2012-07-02 12 views
8

Cómo generar List<Type> en su lugar ArrayOf {Tipo}? Por ejemplo retorno métodoWSDL2Java. Apache CXF. ArrayOf {Tipo} a la lista <Type>

[WebMethod] 
public List<long> GetSimple() 

WSDL2Java generará:

public ru.test.ws.ArrayOfLong GetSimple(); 

ArrayOfLong:

@XmlAccessorType(XmlAccessType.FIELD) 
@XmlType(name = "ArrayOfLong", propOrder = { 
    "_long" 
}) 
public class ArrayOfLong 
    implements Serializable 
{ 
    @XmlElement(name = "long", type = Long.class) 
    protected List<Long> _long; 

    public List<Long> getLong() { 
     if (_long == null) { 
      _long = new ArrayList<Long>(); 
     } 
     return this._long; 
    } 
} 

Cómo configurar CXF y JAXB para usar List<Long> lugar ArrayOfLong?

+0

¿Encontró una solución? Estoy enfrentando el mismo problema actualmente –

Respuesta

2

2 cosas:

1) Asegúrese de <jxb:globalBindings collectionType="indexed"/>no existen. Convertirá todas las colecciones en matrices.

2) tratar de forzar el tipo con la anotación @WebResult

Espero que esto ayude.

Cuestiones relacionadas