Bonjour, j'utilise g un web service que j'ai crée moi même et déployé sur tomcat avec Axis. Je génére le web service client grâce a un plugin d'éclipse, tous fonctionne. Je souhaite maintenant crée un message soap utilisant les attachements soap pour envoyer un fichier a ce web service. Lorsque j'envoie le message soap une erreur ce produit:

AxisFault
faultCode: {http://xml.apache.org/axis/}Client.NoSOAPAction
faultSubcode:
faultString: no SOAPAction header!
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:no SOAPAction header!
at org.apache.axis.transport.http.AxisServlet.getSoapAction(AxisServlet.java:1013)
at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:678)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Unknown Source)

L'attachement soap a l'air de fonctionner puisque le contenu du fichier est présent dans le message. A quoi est donc due cette erreur?

ici mon code pour créer le message soap:
/*methode pour envoyer un fichier texte*/
public boolean handleRequest(String filename){
try{
/*creation du datahandler*/
URL url = new URL("file:///"+filename);
DataHandler data = new DataHandler(url);
java.net.URL endpoint = new URL(adress);

/*initialisation de la connexion soap*/
SOAPConnectionFactory factory= SOAPConnectionFactory.newInstance();
SOAPConnection connection = factory.createConnection();

/*initialisation du message*/
MessageFactory usine= MessageFactory.newInstance();
SOAPMessage message = usine.createMessage();

/*initialisation de l'entete du message*/
SOAPPart part = message.getSOAPPart();
part.setMimeHeader("Content-Length","length");
part.setMimeHeader("SOAPAction","\"http://localhost:9616/MyWebService/services/GestionFichier\"");

/*configuration de l'enveloppe*/
SOAPEnvelope soapEnveloppe = message.getSOAPPart().getEnvelope();
soapEnveloppe.setEncodingStyle("http://schemas.xmlsoap.org/soap/encoding/");
soapEnveloppe.setAttribute("xsd","http://www.w3.org/2001/XMLSchema");
soapEnveloppe.setAttribute("tns","http://soapinterop.org/");

/*configuration de l'entete de l'enveloppe*/
SOAPHeader header = soapEnveloppe.getHeader();
Name name = soapEnveloppe.createName("Transaction","t","http://localhost:9616/MyWebService/services/GestionFichier");
SOAPHeaderElement element = header.addHeaderElement(name);
element.setMustUnderstand(true);
/*configuration du corp de l'enveloppe*/
SOAPBody body = soapEnveloppe.getBody();
body.setEncodingStyle("http://schemas.xmlsoap.org/soap/encoding/");
Name bodyname = soapEnveloppe.createName("recupfiletmp","m","http://localhost:9616/MyWebService/services/GestionFichier/recupfiletmp");
SOAPBodyElement bodyelement = body.addBodyElement(bodyname);

/*initialisation de la piece jointe*/
AttachmentPart attachment = message.createAttachmentPart();
attachment.setContentType("text/plain");
attachment.setMimeHeader("Content-Type", "text/plain");
attachment.setContent(data, "text/plain");
attachment.setDataHandler(data);
message.addAttachmentPart(attachment);
message.saveChanges();
/***/
SOAPMessage mess = connection.call(message,endpoint);//erreur ici
connection.close();
return true;
}catch(Exception ex){
System.out.println((ex.getMessage()));
ex.printStackTrace();
return false;
}
}


Je précise que je suis débutant en web service.
Cordialement.