2010-02-02 11 views
1

J'ai un schéma avec quelque chose le long des lignes deComment générer des noms de liste significatifs dans les services Web JAX-WS

<xs:element ref="Item" minOccurs="0" maxOccurs="unbounded" /> 

et il est référencé dans mon wsdl. Lorsque j'utilise wsimport pour créer du code Java, la classe devient un champ appelé

List<Item> item; 

Est-il possible de l'obtenir pour nommer la norme quelque chose de champ plus comme items ou itemList?

Je ne veux pas nommer les articles xs:element parce que j'obtiendrais alors une classe appelée Items qui est aussi mauvaise.

Répondre

4

Ok, cela semblait le résoudre:

Au lieu de

<xs:element ref="Item" minOccurs="0" maxOccurs="unbounded" /> 

je

<xs:complexType name="Item">...</xs:complexType> 
<xs:element name="ItemList" type="Item" minOccurs="0" maxOccurs="unbounded" /> 

qui a entraîné le code:

List<Item> itemList; 
+0

Utilisation du nom ' 'attribut est le chemin à parcourir. –

+0

+1 ne savait pas quelle était la XSD correspondante de '@WebParam (name =" Item ") Liste itemList' – ewernli

+0

Sinon, il s'avère que cela peut être fait dans bindings.xml. Si quelqu'un est intéressé, je peux aussi poster cette méthode. – Sionide21