axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andreas Veithen (JIRA)" <j...@apache.org>
Subject [jira] Updated: (AXIS2-4342) javax.xml.soap.SOAPException: org.apache.axis2.AxisFault: Mapping qname not fond for the package: org.apache.axis2.saaj
Date Sun, 16 Aug 2009 20:21:14 GMT

     [ 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.


Mime
View raw message