Re: Http Component Post Parameters
The web service I am calling is returning an xml response that contains nullPointerException. This is because the service is unable to obtain the POST parameters from the request and is getting a null pointer. I was able to successfully call the service using a standard java.net.URLConnection but I would prefer to make the call using Camel. Regards, John -- View this message in context: http://camel.465427.n5.nabble.com/Http-Component-Post-Parameters-tp5764464p5764641.html Sent from the Camel - Users mailing list archive at Nabble.com.
Re: Http Component Post Parameters
Thank you Willem. I had added the "application/x-www-form-urlencoded" content-type because I saw it in another thread. Maybe that wasn't a good idea. I did try your solution of setting the parameters in the body but it still doesn't send them as POST parameters. In this case it sends the parameters in the request body. The web service I am calling is unable to access the parameters. Are there other options/ideas I could try? from("timer://runOnce?repeatCount=1") .onException(Exception.class) .handled(true) .process(new GenericExceptionProcessor()) .end() .setHeader(Exchange.HTTP_METHOD, constant("POST")) .setHeader(Exchange.CONTENT_TYPE, constant("application/x-www-form-urlencoded")) .setBody(constant("serviceType=getNextIDFromDB&serviceID=1&dataElementID=814&dataSourceID=50")) .to("https://dev-sdsservices-was8/IMSDSWebService/servlet/SDSClientRequestServlet"; + "?proxyHost=VDDP03C-EDB4ED9&proxyPort=&httpClient.authenticationPreemptive=true" + "&authMethod=Basic&authUsername=&authPassword=" + "&httpClient.soTimeout=5000") .to("file:{{sf.archive.dir}}?fileName=sds-response.xml") .end(); Regards, John -- View this message in context: http://camel.465427.n5.nabble.com/Http-Component-Post-Parameters-tp5764464p5764480.html Sent from the Camel - Users mailing list archive at Nabble.com.
Re: Http Component Post Parameters
Thank you Willem. I did try this solution but still it still doesn't work. In this case it sends the parameters in the request body but they aren't POST parameters. The web service I am calling is unable to access the parameters. When I make this call with a Straight java.net.URLConnennection, it works fine but I would like to get this working with Camel. If there are other options for accomplishing this, I would love to hear. from("timer://runOnce?repeatCount=1") .onException(Exception.class).handled(true) .process(new GenericExceptionProcessor()).end() .log("Requesting a claim ID from SDS.") .setHeader(Exchange.HTTP_METHOD, constant("POST")) .setHeader(Exchange.CONTENT_TYPE, constant("application/x-www-form-urlencoded")) *.setBody(constant("serviceType=getNextIDFromDB&serviceID=1&dataElementID=814&dataSourceID=50"))* .to("https://dev-sdsservices-was8/IMSDSWebService/servlet/SDSClientRequestServlet"; + "?proxyHost=VDDP03C-EDB4ED9&proxyPort=&httpClient.authenticationPreemptive=true" + "&authMethod=Basic&authUsername=&authPassword=" + "&httpClient.soTimeout=5000") .to("file:{{sf.archive.dir}}?fileName=sds-response.xml") .log("Completed web service call to SDS for file ${file:name}.").end();Regards, John -- View this message in context: http://camel.465427.n5.nabble.com/Http-Component-Post-Parameters-tp5764464p5764478.html Sent from the Camel - Users mailing list archive at Nabble.com.