Bonjour,
Des que je lance un wsimport pour utiliser mon webservice depuis un client et ceci depuis que j'ai rajouté une méthode qui retourne un tableau de byte sur mon webservice j'ai There's no ObjectFactory with an @XmlElementDecl for the element
J'utilise Sun java application server (dernière version) et donc glassfish.
Voici la méthode en question :
Code :
- @WebMethod
- public byte[] getFichier(@WebParam(name = "idChanson" ) long idChanson) {
- FileInputStream fis;
- byte[] fichier=null;
- try {
- fis = new FileInputStream("path" );
-
- FileChannel fc = fis.getChannel();
- fichier = new byte[(int)fc.size()]; // fc.size returns the size of the file which backs the channel
- ByteBuffer bb = ByteBuffer.wrap(fichier);
- fc.read(bb);
- } catch (IOException ex) {
- ex.printStackTrace();
- }
- return fichier;
- }
|
Et l'erreur un peu mieux détaillée
Caused by: com.sun.xml.internal.bind.v2.runtime.IllegalAnnotationsException: 1 counts of IllegalAnnotationExceptions
There's no ObjectFactory with an @XmlElementDecl for the element {http://webservices/}return.
this problem is related to the following location:
at protected javax.xml.bind.JAXBElement ws.chanson.GetFichierResponse._return
at ws.chanson.GetFichierResponse
Je n'ai aucun soucis sur le serveur lorsque je déploie mon ws.
Si quelqu'un a une idée je suis preneur !!!