You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "dinoo (JIRA)" <ji...@apache.org> on 2009/05/11 14:33:46 UTC
[jira] Created: (AXIS2-4342) javax.xml.soap.SOAPException:
org.apache.axis2.AxisFault: Mapping qname not fond for the package:
org.apache.axis2.saaj
javax.xml.soap.SOAPException: org.apache.axis2.AxisFault: Mapping qname not fond for the package: org.apache.axis2.saaj
-----------------------------------------------------------------------------------------------------------------------
Key: AXIS2-4342
URL: https://issues.apache.org/jira/browse/AXIS2-4342
Project: Axis 2.0 (Axis2)
Issue Type: Test
Components: saaj
Affects Versions: 1.4.1
Environment: Ubuntu 8.10 (Linux Kernel: 2.6.27-11-generic), jdk1.6.0_10, axis2-1.4.1, apache-tomcat-6.0.16
Reporter: dinoo
Hi!
I do not know if here is the good place to post this message. Please, I need help
I'm making a JAX-WS Web Service. The service must return a .ZIP file. I thus use the SAAJ API.
I deployed the service using Eclipse Plugin Axis2 Code Service Archiver, and stored it in axis2's repository in /CATALINA_HOME/webapps/axis2/WEB-INF/services
HERE IS THE SERVICE'S CODE:
/**
*
*/
package dialogue;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import javax.activation.DataHandler;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
import javax.swing.JOptionPane;
import javax.xml.namespace.QName;
import javax.xml.soap.AttachmentPart;
import javax.xml.soap.MessageFactory;
import javax.xml.soap.SOAPBody;
import javax.xml.soap.SOAPBodyElement;
import javax.xml.soap.SOAPConstants;
import javax.xml.soap.SOAPElement;
import javax.xml.soap.SOAPEnvelope;
import javax.xml.soap.SOAPException;
import javax.xml.soap.SOAPHeader;
import javax.xml.soap.SOAPMessage;
import javax.xml.soap.SOAPPart;
/**
* @author root
* @since Mercredi 06 Mai 2009 11:27
* @version 1.0
*/
@WebService
public class FileService {
private String fileName = null;
private MessageFactory messageFactory = null;
private SOAPMessage message = null;
private SOAPPart part = null;
private SOAPEnvelope envelope = null;
private SOAPHeader header = null;
private SOAPBody body = null;
private QName name = null;
private SOAPBodyElement soapBodyElement = null;
private QName nameContenu = null;
private SOAPElement soapElement = null;
private AttachmentPart attachmentPart = null;
private Collection<String> collection = null;
public FileService() {
}
/**
* @param filesToGet
* @return
*/
@WebMethod
public SOAPMessage recupererFile(@WebParam(name="filesToGet") String fileToGet){
dialFiles = new DialFiles();
dialFiles.setFileToGet(fileToGet);
try {
fileName = dialFiles.returnRequestedFileName();
} catch (Exception e1) {
e1.printStackTrace();
//send SOAPFault
}
try {
messageFactory = MessageFactory.newInstance(SOAPConstants.SOAP_1_1_PROTOCOL);
message = messageFactory.createMessage();
part = message.getSOAPPart();
envelope = part.getEnvelope();
header = envelope.getHeader();
header.detachNode();
body = envelope.getBody();
name = new QName("http://dialogue","Thanx", "rm");
soapBodyElement = body.addBodyElement(name);
nameContenu = new QName("speech");
soapElement = soapBodyElement.addChildElement(nameContenu);
soapElement.addTextNode("Thank u!");
URL url = new URL("file:////temp/"+fileName);
DataHandler dataHandler = new DataHandler(url);
attachmentPart = message.createAttachmentPart(dataHandler);
attachmentPart.setContentId("attached_file");
message.addAttachmentPart(attachmentPart);
} catch (SOAPException e) {
e.printStackTrace();
//send SOAPFault
}catch (MalformedURLException e) {
e.printStackTrace();
//send SOAPFault
}
return message;
}
}
HERE IS THE CLIENT'S CODE:
package client;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Iterator;
import javax.xml.namespace.QName;
import javax.xml.soap.AttachmentPart;
import javax.xml.soap.MessageFactory;
import javax.xml.soap.SOAPBody;
import javax.xml.soap.SOAPBodyElement;
import javax.xml.soap.SOAPConnection;
import javax.xml.soap.SOAPConnectionFactory;
import javax.xml.soap.SOAPElement;
import javax.xml.soap.SOAPException;
import javax.xml.soap.SOAPFault;
import javax.xml.soap.SOAPHeader;
import javax.xml.soap.SOAPMessage;
/**
* @author root
* @since Vendredi 08 Mai 2009 23:08
* @version 1.0
*/
public class ClasseCliente {
private SOAPConnectionFactory soapConnectionFactory = null;
private SOAPConnection soapConnection = null;
private MessageFactory messageFactory = null;
private SOAPMessage soapMessage = null;
private SOAPHeader soapHeader = null;
private SOAPBody soapBody = null;
private QName bodyName = null;
private SOAPBodyElement soapBodyElement = null;
private QName name = null;
private SOAPElement soapElement = null;
private URL endpointUrl = null;
private SOAPMessage reponse = null;
private AttachmentPart attachmentPartReponse = null;
private SOAPBody soapBodyreponse = null;
private Iterator<SOAPBodyElement> iterator = null;
private SOAPBodyElement soapBodyElementReponse = null;
private String contenuReponse = null;
private Iterator<AttachmentPart> iterator2 = null;
public void recupererFile(){
try {
soapConnectionFactory = SOAPConnectionFactory.newInstance();
soapConnection = soapConnectionFactory.createConnection();
messageFactory = MessageFactory.newInstance();
soapMessage = messageFactory.createMessage();
soapHeader = soapMessage.getSOAPHeader();
soapHeader.detachNode();
soapBody = soapMessage.getSOAPBody();
bodyName = new QName("http://dialogue", "recupererFile", "rm");
soapBodyElement = soapBody.addBodyElement(bodyName);
name = new QName("FileName");
soapElement = soapBodyElement.addChildElement(name);
soapElement.addTextNode("MyFile-1.1");
try {
endpointUrl = new URL("http://localhost:8080/axis2/services/ServiceEntrepotService");
} catch (MalformedURLException e) {
e.printStackTrace();
}
soapMessage = soapConnection.call(soapMessage, endpointUrl);
soapConnection.close();
soapBody = soapMessage.getSOAPBody();
if(soapBody.hasFault()){
System.out.println("There's a fault!");
SOAPFault faute = soapBody.getFault();
QName code = faute.getFaultCodeAsQName();
String stringFaute = faute.getFaultString();
String actor = faute.getFaultActor();
System.out.println("Fault content:");
System.out.println("Code: "+code.toString());
System.out.println("Local name: "+code.getLocalPart());
System.out.println("Namespace Prefix= "+code.getPrefix()+", bound to "+code.getNamespaceURI());
System.out.println("Fault String: "+stringFaute);
if(actor!=null){
System.out.println("Actor: "+actor);
}
}
iterator = soapBody.getChildElements();
while(iterator.hasNext()){
System.out.println("Message:");
soapBodyElement = iterator.next();
System.out.println(soapBodyElement.getNodeName());
contenuReponse = soapBodyElement.getValue();
System.out.println("The message is: "+contenuReponse);
}
iterator2 = soapMessage.getAttachments();
while(iterator2.hasNext()){
attachmentPartReponse = iterator2.next();
String id = attachmentPartReponse.getContentId();
System.out.println("Attachment's Content ID: "+id);
String type = attachmentPartReponse.getContentType();
System.out.println("Attachment's Content Type: "+type);
InputStream theFileRequested = (InputStream)attachmentPartReponse.getContent();
Integer nb =null;
try {
nb = theFileRequested.available();
} catch (IOException e1) {
e1.printStackTrace();
}
byte[] b = null ;
try {
FileOutputStream fileOutputStream = new FileOutputStream("/root");
fileOutputStream.write(theFileRequested.read(b, 0, nb));
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
} catch (UnsupportedOperationException e) {
e.printStackTrace();
} catch (SOAPException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
ClasseCliente classeCliente = new ClasseCliente();
classeCliente.recupererFile();
}
}
I GET THIS EXCEPTION when I execute The client:
javax.xml.soap.SOAPException: org.apache.axis2.AxisFault: Mapping qname not fond for the package: org.apache.axis2.saaj
at org.apache.axis2.saaj.SOAPConnectionImpl.handleSOAPMessage(SOAPConnectionImpl.java:194)
at org.apache.axis2.saaj.SOAPConnectionImpl.call(SOAPConnectionImpl.java:130)
at client.ClasseCliente.recupererFile(ClasseCliente.java:77)
at client.ClasseCliente.main(ClasseCliente.java:145)
Caused by: org.apache.axis2.AxisFault: org.apache.axis2.AxisFault: Mapping qname not fond for the package: org.apache.axis2.saaj
at org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:512)
at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:370)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:416)
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:228)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
at org.apache.axis2.saaj.SOAPConnectionImpl.handleSOAPMessage(SOAPConnectionImpl.java:188)
... 3 more
Whitch qname is missing? where to find it?
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (AXIS2-4342) javax.xml.soap.SOAPException:
org.apache.axis2.AxisFault: Mapping qname not fond for the package:
org.apache.axis2.saaj
Posted by "Andreas Veithen (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/AXIS2-4342?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andreas Veithen updated AXIS2-4342:
-----------------------------------
Issue Type: Bug (was: Test)
> javax.xml.soap.SOAPException: org.apache.axis2.AxisFault: Mapping qname not fond for the package: org.apache.axis2.saaj
> -----------------------------------------------------------------------------------------------------------------------
>
> Key: AXIS2-4342
> URL: https://issues.apache.org/jira/browse/AXIS2-4342
> Project: Axis 2.0 (Axis2)
> Issue Type: Bug
> Components: saaj
> Affects Versions: 1.4.1
> Environment: Ubuntu 8.10 (Linux Kernel: 2.6.27-11-generic), jdk1.6.0_10, axis2-1.4.1, apache-tomcat-6.0.16
> Reporter: dinoo
>
> Hi!
> I do not know if here is the good place to post this message. Please, I need help
> I'm making a JAX-WS Web Service. The service must return a .ZIP file. I thus use the SAAJ API.
> I deployed the service using Eclipse Plugin Axis2 Code Service Archiver, and stored it in axis2's repository in /CATALINA_HOME/webapps/axis2/WEB-INF/services
> HERE IS THE SERVICE'S CODE:
> /**
> *
> */
> package dialogue;
> import java.io.InputStream;
> import java.net.MalformedURLException;
> import java.net.URL;
> import java.util.ArrayList;
> import java.util.Collection;
> import java.util.Iterator;
> import javax.activation.DataHandler;
> import javax.jws.WebMethod;
> import javax.jws.WebParam;
> import javax.jws.WebService;
> import javax.swing.JOptionPane;
> import javax.xml.namespace.QName;
> import javax.xml.soap.AttachmentPart;
> import javax.xml.soap.MessageFactory;
> import javax.xml.soap.SOAPBody;
> import javax.xml.soap.SOAPBodyElement;
> import javax.xml.soap.SOAPConstants;
> import javax.xml.soap.SOAPElement;
> import javax.xml.soap.SOAPEnvelope;
> import javax.xml.soap.SOAPException;
> import javax.xml.soap.SOAPHeader;
> import javax.xml.soap.SOAPMessage;
> import javax.xml.soap.SOAPPart;
> /**
> * @author root
> * @since Mercredi 06 Mai 2009 11:27
> * @version 1.0
> */
> @WebService
> public class FileService {
> private String fileName = null;
> private MessageFactory messageFactory = null;
> private SOAPMessage message = null;
> private SOAPPart part = null;
> private SOAPEnvelope envelope = null;
> private SOAPHeader header = null;
> private SOAPBody body = null;
> private QName name = null;
> private SOAPBodyElement soapBodyElement = null;
> private QName nameContenu = null;
> private SOAPElement soapElement = null;
> private AttachmentPart attachmentPart = null;
> private Collection<String> collection = null;
>
> public FileService() {
> }
> /**
> * @param filesToGet
> * @return
> */
> @WebMethod
> public SOAPMessage recupererFile(@WebParam(name="filesToGet") String fileToGet){
>
> dialFiles = new DialFiles();
> dialFiles.setFileToGet(fileToGet);
> try {
> fileName = dialFiles.returnRequestedFileName();
> } catch (Exception e1) {
> e1.printStackTrace();
> //send SOAPFault
> }
> try {
> messageFactory = MessageFactory.newInstance(SOAPConstants.SOAP_1_1_PROTOCOL);
>
> message = messageFactory.createMessage();
> part = message.getSOAPPart();
> envelope = part.getEnvelope();
> header = envelope.getHeader();
> header.detachNode();
> body = envelope.getBody();
> name = new QName("http://dialogue","Thanx", "rm");
> soapBodyElement = body.addBodyElement(name);
> nameContenu = new QName("speech");
> soapElement = soapBodyElement.addChildElement(nameContenu);
> soapElement.addTextNode("Thank u!");
>
> URL url = new URL("file:////temp/"+fileName);
> DataHandler dataHandler = new DataHandler(url);
> attachmentPart = message.createAttachmentPart(dataHandler);
> attachmentPart.setContentId("attached_file");
> message.addAttachmentPart(attachmentPart);
> } catch (SOAPException e) {
> e.printStackTrace();
> //send SOAPFault
> }catch (MalformedURLException e) {
> e.printStackTrace();
> //send SOAPFault
> }
>
> return message;
> }
> }
> HERE IS THE CLIENT'S CODE:
> package client;
> import java.io.FileNotFoundException;
> import java.io.FileOutputStream;
> import java.io.IOException;
> import java.io.InputStream;
> import java.net.MalformedURLException;
> import java.net.URL;
> import java.util.Iterator;
> import javax.xml.namespace.QName;
> import javax.xml.soap.AttachmentPart;
> import javax.xml.soap.MessageFactory;
> import javax.xml.soap.SOAPBody;
> import javax.xml.soap.SOAPBodyElement;
> import javax.xml.soap.SOAPConnection;
> import javax.xml.soap.SOAPConnectionFactory;
> import javax.xml.soap.SOAPElement;
> import javax.xml.soap.SOAPException;
> import javax.xml.soap.SOAPFault;
> import javax.xml.soap.SOAPHeader;
> import javax.xml.soap.SOAPMessage;
> /**
> * @author root
> * @since Vendredi 08 Mai 2009 23:08
> * @version 1.0
> */
> public class ClasseCliente {
> private SOAPConnectionFactory soapConnectionFactory = null;
> private SOAPConnection soapConnection = null;
> private MessageFactory messageFactory = null;
> private SOAPMessage soapMessage = null;
> private SOAPHeader soapHeader = null;
> private SOAPBody soapBody = null;
> private QName bodyName = null;
> private SOAPBodyElement soapBodyElement = null;
> private QName name = null;
> private SOAPElement soapElement = null;
> private URL endpointUrl = null;
> private SOAPMessage reponse = null;
> private AttachmentPart attachmentPartReponse = null;
> private SOAPBody soapBodyreponse = null;
> private Iterator<SOAPBodyElement> iterator = null;
> private SOAPBodyElement soapBodyElementReponse = null;
> private String contenuReponse = null;
> private Iterator<AttachmentPart> iterator2 = null;
>
> public void recupererFile(){
> try {
> soapConnectionFactory = SOAPConnectionFactory.newInstance();
> soapConnection = soapConnectionFactory.createConnection();
> messageFactory = MessageFactory.newInstance();
> soapMessage = messageFactory.createMessage();
> soapHeader = soapMessage.getSOAPHeader();
> soapHeader.detachNode();
> soapBody = soapMessage.getSOAPBody();
>
> bodyName = new QName("http://dialogue", "recupererFile", "rm");
> soapBodyElement = soapBody.addBodyElement(bodyName);
>
> name = new QName("FileName");
> soapElement = soapBodyElement.addChildElement(name);
> soapElement.addTextNode("MyFile-1.1");
>
> try {
> endpointUrl = new URL("http://localhost:8080/axis2/services/ServiceEntrepotService");
> } catch (MalformedURLException e) {
> e.printStackTrace();
> }
>
> soapMessage = soapConnection.call(soapMessage, endpointUrl);
> soapConnection.close();
>
> soapBody = soapMessage.getSOAPBody();
> if(soapBody.hasFault()){
> System.out.println("There's a fault!");
> SOAPFault faute = soapBody.getFault();
> QName code = faute.getFaultCodeAsQName();
> String stringFaute = faute.getFaultString();
> String actor = faute.getFaultActor();
> System.out.println("Fault content:");
> System.out.println("Code: "+code.toString());
> System.out.println("Local name: "+code.getLocalPart());
> System.out.println("Namespace Prefix= "+code.getPrefix()+", bound to "+code.getNamespaceURI());
> System.out.println("Fault String: "+stringFaute);
> if(actor!=null){
> System.out.println("Actor: "+actor);
> }
> }
> iterator = soapBody.getChildElements();
> while(iterator.hasNext()){
> System.out.println("Message:");
> soapBodyElement = iterator.next();
> System.out.println(soapBodyElement.getNodeName());
> contenuReponse = soapBodyElement.getValue();
> System.out.println("The message is: "+contenuReponse);
> }
>
> iterator2 = soapMessage.getAttachments();
> while(iterator2.hasNext()){
> attachmentPartReponse = iterator2.next();
> String id = attachmentPartReponse.getContentId();
> System.out.println("Attachment's Content ID: "+id);
> String type = attachmentPartReponse.getContentType();
> System.out.println("Attachment's Content Type: "+type);
> InputStream theFileRequested = (InputStream)attachmentPartReponse.getContent();
> Integer nb =null;
> try {
> nb = theFileRequested.available();
> } catch (IOException e1) {
> e1.printStackTrace();
> }
> byte[] b = null ;
> try {
> FileOutputStream fileOutputStream = new FileOutputStream("/root");
> fileOutputStream.write(theFileRequested.read(b, 0, nb));
> } catch (FileNotFoundException e) {
> e.printStackTrace();
> } catch (IOException e) {
> e.printStackTrace();
> }
> }
> } catch (UnsupportedOperationException e) {
> e.printStackTrace();
> } catch (SOAPException e) {
> e.printStackTrace();
> }
> }
>
>
> public static void main(String[] args) {
> ClasseCliente classeCliente = new ClasseCliente();
> classeCliente.recupererFile();
> }
> }
> I GET THIS EXCEPTION when I execute The client:
> javax.xml.soap.SOAPException: org.apache.axis2.AxisFault: Mapping qname not fond for the package: org.apache.axis2.saaj
> at org.apache.axis2.saaj.SOAPConnectionImpl.handleSOAPMessage(SOAPConnectionImpl.java:194)
> at org.apache.axis2.saaj.SOAPConnectionImpl.call(SOAPConnectionImpl.java:130)
> at client.ClasseCliente.recupererFile(ClasseCliente.java:77)
> at client.ClasseCliente.main(ClasseCliente.java:145)
> Caused by: org.apache.axis2.AxisFault: org.apache.axis2.AxisFault: Mapping qname not fond for the package: org.apache.axis2.saaj
> at org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:512)
> at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:370)
> at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:416)
> at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:228)
> at org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
> at org.apache.axis2.saaj.SOAPConnectionImpl.handleSOAPMessage(SOAPConnectionImpl.java:188)
> ... 3 more
> Whitch qname is missing? where to find it?
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Resolved: (AXIS2-4342) javax.xml.soap.SOAPException:
org.apache.axis2.AxisFault: Mapping qname not fond for the package:
org.apache.axis2.saaj
Posted by "Andreas Veithen (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/AXIS2-4342?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andreas Veithen resolved AXIS2-4342.
------------------------------------
Resolution: Duplicate
Exact duplicate of AXIS2-4341.
> javax.xml.soap.SOAPException: org.apache.axis2.AxisFault: Mapping qname not fond for the package: org.apache.axis2.saaj
> -----------------------------------------------------------------------------------------------------------------------
>
> Key: AXIS2-4342
> URL: https://issues.apache.org/jira/browse/AXIS2-4342
> Project: Axis 2.0 (Axis2)
> Issue Type: Bug
> Components: saaj
> Affects Versions: 1.4.1
> Environment: Ubuntu 8.10 (Linux Kernel: 2.6.27-11-generic), jdk1.6.0_10, axis2-1.4.1, apache-tomcat-6.0.16
> Reporter: dinoo
>
> Hi!
> I do not know if here is the good place to post this message. Please, I need help
> I'm making a JAX-WS Web Service. The service must return a .ZIP file. I thus use the SAAJ API.
> I deployed the service using Eclipse Plugin Axis2 Code Service Archiver, and stored it in axis2's repository in /CATALINA_HOME/webapps/axis2/WEB-INF/services
> HERE IS THE SERVICE'S CODE:
> /**
> *
> */
> package dialogue;
> import java.io.InputStream;
> import java.net.MalformedURLException;
> import java.net.URL;
> import java.util.ArrayList;
> import java.util.Collection;
> import java.util.Iterator;
> import javax.activation.DataHandler;
> import javax.jws.WebMethod;
> import javax.jws.WebParam;
> import javax.jws.WebService;
> import javax.swing.JOptionPane;
> import javax.xml.namespace.QName;
> import javax.xml.soap.AttachmentPart;
> import javax.xml.soap.MessageFactory;
> import javax.xml.soap.SOAPBody;
> import javax.xml.soap.SOAPBodyElement;
> import javax.xml.soap.SOAPConstants;
> import javax.xml.soap.SOAPElement;
> import javax.xml.soap.SOAPEnvelope;
> import javax.xml.soap.SOAPException;
> import javax.xml.soap.SOAPHeader;
> import javax.xml.soap.SOAPMessage;
> import javax.xml.soap.SOAPPart;
> /**
> * @author root
> * @since Mercredi 06 Mai 2009 11:27
> * @version 1.0
> */
> @WebService
> public class FileService {
> private String fileName = null;
> private MessageFactory messageFactory = null;
> private SOAPMessage message = null;
> private SOAPPart part = null;
> private SOAPEnvelope envelope = null;
> private SOAPHeader header = null;
> private SOAPBody body = null;
> private QName name = null;
> private SOAPBodyElement soapBodyElement = null;
> private QName nameContenu = null;
> private SOAPElement soapElement = null;
> private AttachmentPart attachmentPart = null;
> private Collection<String> collection = null;
>
> public FileService() {
> }
> /**
> * @param filesToGet
> * @return
> */
> @WebMethod
> public SOAPMessage recupererFile(@WebParam(name="filesToGet") String fileToGet){
>
> dialFiles = new DialFiles();
> dialFiles.setFileToGet(fileToGet);
> try {
> fileName = dialFiles.returnRequestedFileName();
> } catch (Exception e1) {
> e1.printStackTrace();
> //send SOAPFault
> }
> try {
> messageFactory = MessageFactory.newInstance(SOAPConstants.SOAP_1_1_PROTOCOL);
>
> message = messageFactory.createMessage();
> part = message.getSOAPPart();
> envelope = part.getEnvelope();
> header = envelope.getHeader();
> header.detachNode();
> body = envelope.getBody();
> name = new QName("http://dialogue","Thanx", "rm");
> soapBodyElement = body.addBodyElement(name);
> nameContenu = new QName("speech");
> soapElement = soapBodyElement.addChildElement(nameContenu);
> soapElement.addTextNode("Thank u!");
>
> URL url = new URL("file:////temp/"+fileName);
> DataHandler dataHandler = new DataHandler(url);
> attachmentPart = message.createAttachmentPart(dataHandler);
> attachmentPart.setContentId("attached_file");
> message.addAttachmentPart(attachmentPart);
> } catch (SOAPException e) {
> e.printStackTrace();
> //send SOAPFault
> }catch (MalformedURLException e) {
> e.printStackTrace();
> //send SOAPFault
> }
>
> return message;
> }
> }
> HERE IS THE CLIENT'S CODE:
> package client;
> import java.io.FileNotFoundException;
> import java.io.FileOutputStream;
> import java.io.IOException;
> import java.io.InputStream;
> import java.net.MalformedURLException;
> import java.net.URL;
> import java.util.Iterator;
> import javax.xml.namespace.QName;
> import javax.xml.soap.AttachmentPart;
> import javax.xml.soap.MessageFactory;
> import javax.xml.soap.SOAPBody;
> import javax.xml.soap.SOAPBodyElement;
> import javax.xml.soap.SOAPConnection;
> import javax.xml.soap.SOAPConnectionFactory;
> import javax.xml.soap.SOAPElement;
> import javax.xml.soap.SOAPException;
> import javax.xml.soap.SOAPFault;
> import javax.xml.soap.SOAPHeader;
> import javax.xml.soap.SOAPMessage;
> /**
> * @author root
> * @since Vendredi 08 Mai 2009 23:08
> * @version 1.0
> */
> public class ClasseCliente {
> private SOAPConnectionFactory soapConnectionFactory = null;
> private SOAPConnection soapConnection = null;
> private MessageFactory messageFactory = null;
> private SOAPMessage soapMessage = null;
> private SOAPHeader soapHeader = null;
> private SOAPBody soapBody = null;
> private QName bodyName = null;
> private SOAPBodyElement soapBodyElement = null;
> private QName name = null;
> private SOAPElement soapElement = null;
> private URL endpointUrl = null;
> private SOAPMessage reponse = null;
> private AttachmentPart attachmentPartReponse = null;
> private SOAPBody soapBodyreponse = null;
> private Iterator<SOAPBodyElement> iterator = null;
> private SOAPBodyElement soapBodyElementReponse = null;
> private String contenuReponse = null;
> private Iterator<AttachmentPart> iterator2 = null;
>
> public void recupererFile(){
> try {
> soapConnectionFactory = SOAPConnectionFactory.newInstance();
> soapConnection = soapConnectionFactory.createConnection();
> messageFactory = MessageFactory.newInstance();
> soapMessage = messageFactory.createMessage();
> soapHeader = soapMessage.getSOAPHeader();
> soapHeader.detachNode();
> soapBody = soapMessage.getSOAPBody();
>
> bodyName = new QName("http://dialogue", "recupererFile", "rm");
> soapBodyElement = soapBody.addBodyElement(bodyName);
>
> name = new QName("FileName");
> soapElement = soapBodyElement.addChildElement(name);
> soapElement.addTextNode("MyFile-1.1");
>
> try {
> endpointUrl = new URL("http://localhost:8080/axis2/services/ServiceEntrepotService");
> } catch (MalformedURLException e) {
> e.printStackTrace();
> }
>
> soapMessage = soapConnection.call(soapMessage, endpointUrl);
> soapConnection.close();
>
> soapBody = soapMessage.getSOAPBody();
> if(soapBody.hasFault()){
> System.out.println("There's a fault!");
> SOAPFault faute = soapBody.getFault();
> QName code = faute.getFaultCodeAsQName();
> String stringFaute = faute.getFaultString();
> String actor = faute.getFaultActor();
> System.out.println("Fault content:");
> System.out.println("Code: "+code.toString());
> System.out.println("Local name: "+code.getLocalPart());
> System.out.println("Namespace Prefix= "+code.getPrefix()+", bound to "+code.getNamespaceURI());
> System.out.println("Fault String: "+stringFaute);
> if(actor!=null){
> System.out.println("Actor: "+actor);
> }
> }
> iterator = soapBody.getChildElements();
> while(iterator.hasNext()){
> System.out.println("Message:");
> soapBodyElement = iterator.next();
> System.out.println(soapBodyElement.getNodeName());
> contenuReponse = soapBodyElement.getValue();
> System.out.println("The message is: "+contenuReponse);
> }
>
> iterator2 = soapMessage.getAttachments();
> while(iterator2.hasNext()){
> attachmentPartReponse = iterator2.next();
> String id = attachmentPartReponse.getContentId();
> System.out.println("Attachment's Content ID: "+id);
> String type = attachmentPartReponse.getContentType();
> System.out.println("Attachment's Content Type: "+type);
> InputStream theFileRequested = (InputStream)attachmentPartReponse.getContent();
> Integer nb =null;
> try {
> nb = theFileRequested.available();
> } catch (IOException e1) {
> e1.printStackTrace();
> }
> byte[] b = null ;
> try {
> FileOutputStream fileOutputStream = new FileOutputStream("/root");
> fileOutputStream.write(theFileRequested.read(b, 0, nb));
> } catch (FileNotFoundException e) {
> e.printStackTrace();
> } catch (IOException e) {
> e.printStackTrace();
> }
> }
> } catch (UnsupportedOperationException e) {
> e.printStackTrace();
> } catch (SOAPException e) {
> e.printStackTrace();
> }
> }
>
>
> public static void main(String[] args) {
> ClasseCliente classeCliente = new ClasseCliente();
> classeCliente.recupererFile();
> }
> }
> I GET THIS EXCEPTION when I execute The client:
> javax.xml.soap.SOAPException: org.apache.axis2.AxisFault: Mapping qname not fond for the package: org.apache.axis2.saaj
> at org.apache.axis2.saaj.SOAPConnectionImpl.handleSOAPMessage(SOAPConnectionImpl.java:194)
> at org.apache.axis2.saaj.SOAPConnectionImpl.call(SOAPConnectionImpl.java:130)
> at client.ClasseCliente.recupererFile(ClasseCliente.java:77)
> at client.ClasseCliente.main(ClasseCliente.java:145)
> Caused by: org.apache.axis2.AxisFault: org.apache.axis2.AxisFault: Mapping qname not fond for the package: org.apache.axis2.saaj
> at org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:512)
> at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:370)
> at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:416)
> at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:228)
> at org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
> at org.apache.axis2.saaj.SOAPConnectionImpl.handleSOAPMessage(SOAPConnectionImpl.java:188)
> ... 3 more
> Whitch qname is missing? where to find it?
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.