add addChildElement in a cycle...

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

[7492 byte] By [araujo.guntina] at [2007-11-26 22:57:42]
# 1
There is nothing wrong with the code. Check if you got any exceptions in the console.Vinod
vinodkbyreddya at 2007-7-10 12:23:02 > top of Java-index,Java Essentials,New To Java...
# 2
Is it because you are overwriting your messagefile everytime, until you loop for the last element in the Vector? Im quite new to java myself so apologies if this isnt the case.
PaulOckleforda at 2007-7-10 12:23:02 > top of Java-index,Java Essentials,New To Java...
# 3
Thanks you, you are right... the Query class shut an exception... let take my nukes..
araujo.guntina at 2007-7-10 12:23:02 > top of Java-index,Java Essentials,New To Java...