Bonjour,

Comme le titre l'indique, j'ai un problème avec MTOM, en fait pour récupérer le message.
Dans le code java, je demande à récupérer un objet Data qui contient une chaîne de caractère "contentType" et un objet MTOM "include" (de type Include définit par le w3c).
"contentType" se récupère parfaitement, mais include ne contient rien (je ne récupère même un objet vide, c'est un objet null).
Quelqu'un saurait-il d'où vient le problème ?

Voici pour précision quelques morceaux de code.

La fonction qui interroge le webservice :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/**
         * Permet de télécharger un fichier à partir du serveur.
         * @param session Uuid de la session qui tente d'accéder à la méthode
         * @param md5 Uuid du fichier à télécharger
         * @param result Résultat de la requête
         * @param data Fichier renvoyé
         */
	@WebMethod(operationName = "get-file")
	@RequestWrapper(localName = "get-file", targetNamespace = "form", className = "client.form.requestWrapper.GetFile")
	@ResponseWrapper(localName = "data-response", targetNamespace = "form", className = "client.form.DataResponse")
	public void getFile(
		@WebParam(name = "session", targetNamespace = "")String session,
		@WebParam(name = "md5", targetNamespace = "")String md5,
		@WebParam(name = "result", targetNamespace = "", mode = WebParam.Mode.OUT) Holder<Result> result,
		@WebParam(name = "data", targetNamespace = "", mode = WebParam.Mode.OUT) Holder<Data> data);
La classe Data sans les accesseurs :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Data", propOrder = {
    "include"
})
public class Data{
 
    @XmlElement(name = "Include", namespace = "http://www.w3.org/2004/08/xop/include", required = true)
    protected Include include;
    @XmlAttribute(namespace = "http://www.w3.org/2004/11/xmlmime")
    protected String contentType;
La classe Include sans les accesseurs :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Include", propOrder = {
    "any"
})
public class Include {
 
    @XmlAnyElement(lax = true)
    protected List<Object> any;
    @XmlAttribute(required = true)
    @XmlSchemaType(name = "anyURI")
    protected String href;
    @XmlAnyAttribute
    private Map<QName, String> otherAttributes = new HashMap<QName, String>();
La requête SOAP renvoyée par le serveur (au cas où, pour précision, le code incompréhensible est le contenu du fichier que je dois récupérer) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:generic="generic" xmlns:xop="http://www.w3.org/2004/08/xop/include" xmlns:xmime4="http://www.w3.org/2004/11/xmlmime" xmlns:form="form"><SOAP-ENV:Body><form:data-response><result><code>ok</code><details></details></result><data xmime4:contentType="image/jpeg"><xop:Include href="cid:id1"/></data></form:data-response></SOAP-ENV:Body></SOAP-ENV:Envelope>
--==rJv43tDrvXJI24Q8S+mxSdebIJ8F6wmP2/THiV1HdIJOmuSxJSOj22aBwlEK==
Content-Type: image/jpeg
Content-Transfer-Encoding: binary
Content-ID: <id1>
 
�����JFIF��H�H�����C�		

 $.' ",#(7),01444'9=82<.342���C			
 
2!!22222222222222222222222222222222222222222222222222�����"��������������	
�������}�!1AQa"q2���#B��R��$3br�	
%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz
Merci d'avance