Bonjour..
Je bloque depuis des jours sur un problème vraiment gênant.. Etant nouvelle dans les web services et plus ou moins dans java aussi....
J'ai créé un projet sous Eclipse JEE avec Tomcat et Axis.
J'ai des fonctions accessible via l'exterieur (que j'apelle avec SOAPUI depuis le même pc) le soucis est que j'ai besoin qu'une fonction me renvoie un message SOAP avec une certaine structure telle que :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| <?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<GetAvailableResultsResponse xmlns="http://....">
<GetAvailableResultsResult>
<PendingResultsItem>
<Search_id>int</Search_id>
<Timestamp>dateTime</Timestamp>
<Partid>string</Partid>
<Price>string</Price>
<Currency>string</Currency>
<Uom>string</Uom>
<Description>string</Description>
<Supplier>string</Supplier>
<Searchstring>string</Searchstring>
<Returned>boolean</Returned>
<Searchorder>int</Searchorder>
<Callingsite_id>int</Callingsite_id>
<Internalpartid>string</Internalpartid>
<Detaillink>string</Detaillink>
<Basketlink>string</Basketlink>
</PendingResultsItem>
<PendingResultsItem>
<Search_id>int</Search_id>
<Timestamp>dateTime</Timestamp>
<Partid>string</Partid>
<Price>string</Price>
<Currency>string</Currency>
<Uom>string</Uom>
<Description>string</Description>
<Supplier>string</Supplier>
<Searchstring>string</Searchstring>
<Returned>boolean</Returned>
<Searchorder>int</Searchorder>
<Callingsite_id>int</Callingsite_id>
<Internalpartid>string</Internalpartid>
<Detaillink>string</Detaillink>
<Basketlink>string</Basketlink>
</PendingResultsItem>
</GetAvailableResultsResult>
</GetAvailableResultsResponse>
</soap12:Body>
</soap12:Envelope> |
Donc je renvoi une List mais il faudrait idéalement une list de Produits (Produits étant une class donc les attribus collent parfaitement au format SOAP énoncé au dessus) ... probleme... Quand je renvoi une List de Produit j'obtiens cette erreur :
Exception: org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Premature end of file. Message: ; nested exception is: org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Premature end of file.
Apres des recherches il semblerait que je fasse appel a un InputSource qui clos l'objet et que je tente d'y acceder a nouveau... Je ne vois pas trop ou ni comment changer ca.
Voici le code tout simple de ma fonction :
1 2 3 4 5 6 7 8 9 10 11 12 13
| public List<Product> GetTest(int SearchID, String SharedSecret)
{
List<Product> prods = new ArrayList<Product>();
Product p1 = new Product();
Product p2 = new Product();
prods.add(p1);
prods.add(p2);
return prods;
} |
Avez vous une idée de la solution?
Merci infiniment
Partager