This week's book giveaway is in the Jobs Discussion forum.
We're giving away four copies of Customer Requirements for Developers and have Marcho Behler on-line!
See this thread for details.
The moose likes Web Services and the fly likes SOAPMessage: SAXParseException Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Customer Requirements for Developers this week in the Jobs Discussion forum!
JavaRanch » Java Forums » Java » Web Services
Bookmark "SOAPMessage: SAXParseException " Watch "SOAPMessage: SAXParseException " New topic

SOAPMessage: SAXParseException

Raminder Singh
Ranch Hand

Joined: Mar 01, 2002
Posts: 72
I'm calling a webservice with following client and getting a exception:-

package com.client;

import java.util.Vector;
import javax.xml.soap.MessageFactory;
import javax.xml.soap.MimeHeaders;
import javax.xml.soap.SOAPConnection;
import javax.xml.soap.SOAPConnectionFactory;
import javax.xml.soap.SOAPEnvelope;
import javax.xml.soap.SOAPMessage;
import javax.xml.soap.SOAPPart;
import org.apache.axis.MessageContext;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;

public class RetrievePNRsByCardClient01

public static void main(String [] args)
String endpoint = "http://localhost:8080/axis/services/OSRetrievePNRsByCard";
Service service = new Service();
Call call = (Call)service.createCall();

String xmlString =
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" +
"<soapenv:Envelope xmlns:soapenv=\"\"\n" +
" xmlns:xsd=\"\"\n" +
" xmlns:xsi=\"\">\n" +
" <soapenv:Body>\n" +
" <ns1:retrievePNRsByCard soap-env:encodingStyle=\"\"\n" + " xmlns:soap-env=\"\">\n" +
" xmlns:ns1=\"urn s:retrievePNRsByCard\">\n" +
" <input xsi:type=\"ns1:RetrievePNRsByCardIn\" xmlns:xsi=\"\">\n"+
" <creditCardNum xsi:type=\"xsd:string\">5201000100020003</creditCardNum>\n"+
" <dptrAirportCode xsi:type=\"xsd:string\">DEL</dptrAirportCode>\n"+
" <expirationDate xsi:type=\"xsd:string\">1109</expirationDate>\n"+
" </ns1:retrievePNRsByCard>\n"+
" </soapenv:Body>\n" +

MessageFactory mf = MessageFactory.newInstance();
SOAPMessage smsg =
mf.createMessage(new MimeHeaders(), new ByteArrayInputStream(xmlString.getBytes()));
SOAPPart sp = smsg.getSOAPPart();
SOAPEnvelope se = (SOAPEnvelope)sp.getEnvelope();

SOAPConnection conn = SOAPConnectionFactory.newInstance().createConnection();
SOAPMessage response =, endpoint);
System.out.println("response: " + response);

MessageContext mc = call.getMessageContext();
Vector bodyVec = mc.getResponseMessage().getSOAPEnvelope().getBodyElements();
System.out.println("Body Elements: " + bodyVec);
}catch(Exception ex)
System.out.println(" Exception is: " + ex.getMessage());

Exception is:

Exception is: org.xml.sax.SAXParseException: The prefix "ns1" for element "ns1:retrievePNRsByCard" is not bound.

Can you let me know, how to solve it?
wise owen
Ranch Hand

Joined: Feb 02, 2006
Posts: 2023

Check this line, why you have ">".
It is sorta covered in the JavaRanch Style Guide.
subject: SOAPMessage: SAXParseException
It's not a secret anymore!