Hi...
I need to create a SOAPMessage which include all element from Query Class. Currently there the vector size = 3; but I only got the last one element from the Query Class.
Could someone help me? please.
This is the SOAPMessage
<?xml version="1.0" encoding="UTF-8"?>
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/"><soap-env:Header/><soap-env:Body><GIFTSET><ACCTNBR>0</ACCTNBR><ACCTNBR>67321059</ACCTNBR><NAME>BROCK+CHLOE DAVIDSON </NAME><ADDRLINE1>114 FALCONRIDGE DR </ADDRLINE1><ADDRLINE1> </ADDRLINE1><CITY>KITCHENER </CITY><STATE>ON</STATE><ZIPCODE>N2K4K3</ZIPCODE><COUNTRY/></GIFTSET></soap-env:Body></soap-env:Envelope>
This is the code:
...
public SOAPMessage getXmlMessage(String magabbr, String acctnbr, String zipcod, String email)
throws SOAPException{
String s = new String();
MessageFactory messageFactory = MessageFactory.newInstance();
SOAPMessage message = messageFactory.createMessage();
SOAPPart soapPart = message.getSOAPPart();
SOAPEnvelope envelope = soapPart.getEnvelope();
SOAPBody body = envelope.getBody();
//Populate the body
//Create the main element and namespace
SOAPElement bodyElement =
body.addChildElement(envelope.createName("GIFTSET"));
try {
Properties props = new Properties();
Vector queryVector = null;
GiftSetDeliver giftSetDeliver = new GiftSetDeliver();
queryVector = giftSetDeliver.getGiftSet("chp", "66724527","","");
String myString = Integer.toString(queryVector.size());
//Add content
for (int k=0;k< queryVector.size();k++)
{
Query query = (Query) queryVector.elementAt(k);
//Add content: AccountNumber
bodyElement.addChildElement("ACCTNBR").addTextNode(query.getAccountNumber());
//Add content: getName
bodyElement.addChildElement("NAME").addTextNode(query.getName());
//Add content: getAddress1
bodyElement.addChildElement("ADDRLINE1").addTextNode(query.getAddress1());
//Add content: getAddress2
bodyElement.addChildElement("ADDRLINE1").addTextNode(query.getAddress2());
//Add content: getCity
bodyElement.addChildElement("CITY").addTextNode(query.getCity());
//Add content: getState
bodyElement.addChildElement("STATE").addTextNode(query.getState());
//Add content: getZipCode
bodyElement.addChildElement("ZIPCODE").addTextNode(query.getZipCode());
//Add content: getCountry
bodyElement.addChildElement("COUNTRY").addTextNode(query.getCountry());
//Add content: getMatchCode
bodyElement.addChildElement("MATCHCODE").addTextNode(query.getMatchCode());
//Add content: getStartIssue
bodyElement.addChildElement("STARTISS").addTextNode(query.getStartIssue());
//Add content: getLastIssue
bodyElement.addChildElement("LASTISS").addTextNode(query.getLastIssue());
//Add content: getExpireIssue
bodyElement.addChildElement("EXPISS").addTextNode(query.getExpireIssue());
//Add content: getEMailAddress
bodyElement.addChildElement("EMAIL").addTextNode(query.getEMailAddress());
//Add content: getUsername
bodyElement.addChildElement("EUNAME").addTextNode(query.getUsername());
//Add content: getPassword
bodyElement.addChildElement("EPWORD").addTextNode(query.getPassword());
//Add content: EMAILAUTH
bodyElement.addChildElement("EMAILAUTH").addTextNode((new Boolean(query.getEMailAuthorized())).toString());
//Add content: getPermissn0
bodyElement.addChildElement("OPTIN1").addTextNode(query.getPermissn0());
//Add content: getPermissn1
bodyElement.addChildElement("OPTIN2").addTextNode(query.getPermissn1());
//Add content: getPermissn2
bodyElement.addChildElement("OPTIN3").addTextNode(query.getPermissn2());
//Add content: getAccountStatus
bodyElement.addChildElement("STATUS").addTextNode(query.getAccountStatus());
//Add content: getBillkey
bodyElement.addChildElement("BILLKEY").addTextNode(query.getBillkey());
//Add content: getSourcecode
bodyElement.addChildElement("SOURCECODE").addTextNode(query.getSourcecode());
//Add content: getSpecProdCode
bodyElement.addChildElement("SPECPRODCD").addTextNode(query.getSpecProdCode());
//Add content: getPromoKey
bodyElement.addChildElement("RENEWWALKEY").addTextNode(query.getPromoKey());
}
//Save the message
message.saveChanges();
//Check the input
System.out.println("\nREQUEST:\n");
System.out.println();
FileOutputStream sentFile = new FileOutputStream("zxtodo.msg");
message.writeTo(sentFile);
sentFile.close();
} catch(Exception e) {
System.out.println(e.getMessage());
}
return message;
}//end getXmlMessage...