cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
283
Views
0
Helpful
1
Replies

AXL output file has non valid XML as first row

douhanm
Level 1
Level 1

Hey

I am using the output=foobar.xml with my simple java -cp command as follows

D:\CiscoSOAP\axlsqltoolkit>java -cp .\classes;.\lib\saaj-api.jar;.\lib\saaj-impl.jar;.\lib\mail.jar;.\lib\activation.jar;.\li

b\jaxm-api.jar;.\lib\jaxm-runtime.jar;.\lib\xercesImpl.jar;.\lib\xml-apis.jar AxlSqlToolkit -username=foo -password=bar -host=x.x.x.x -input=d:\apps\getFreeCall.cmd -output=d:\output\freecall.xml

The problem is that the first row in the output file is NOT the XML output, it adds the ------------ SQL code here -------

That makes my XML parser say the file is not valid XML, how can I make the toolkit ONLY output the valid XML and not add the silly first row?

If I edit the file and remove line 1 everything works fine.

I am not on UNIX so no nifty scripts or tools will work and windows find only outputs 255 chars so I need sth in the toolkit to omit the first rubbish row.

Any suggestions appeciated

rgds

Matt

1 Reply 1

stephan.steiner
Spotlight
Spotlight

Does your programming language of choice not support webservices? If it does, launching code not really meant for a productive environment seems like a strange design choice and I strongly suggest you rethink it (for instance.. if there's an error in the request processing or writing the output, you get no output at all.. so you'd have to parse the commandline output to get some feedback).

If you look at the source code of the sample you'll see quickly where this line is added:

FileWriter fw = new FileWriter(outputFile, true);

BufferedWriter bw = new BufferedWriter(fw);

bw.write("---------------------------- " + currentStatement + " ----------------------------");

bw.newLine();

bw.write(convertSOAPtoString(reply));

bw.newLine();

bw.flush();

bw.close();

just remove the first two lines I quoted and recompile and the output is gone.