The problem does not happen on the client side, but inside ServiceMix.
Btw, the problem happen because the xml set in the out message is malformed
(maybe there is spaces before the "<?xml" processing instruction ?).
It sounds like the endpoint generates a bad out message...
Did you use the code from the tutorial for the endpoint or did you modify it ?

On Sep 7, 2007, at 8:49 AM, Ivanhoe Abrahams wrote:

Hi everybody

I went through the
http://cwiki.apache.org/SM/hello-world-se.htmlexample/tutorial,
Now I would like to test my service unit by making an call to the http-su,
which should call the hello-world su,
which in turn should call the hello-word se......I think

BTW In the example the http-su is set up to use soap=true, which I changed
because I just want to send a piece of xml to the endpoint.

I thought that I can make a simple http call by using apache HttpClient....
But I get the following error ...Log4j level set to DEBUG.

....................................

[Fatal Error] :1:35: The processing instruction target matching
"[xX][mM][lL]" i
s not allowed.
DEBUG - SedaQueue                      -
org.apache.servicemix.jbi.nmr.flow.seda
[EMAIL PROTECTED] dequeued exchange: InOut[
  id: ID:10.251.65.68-114deaebc65-3:0
  status: Active
  role: consumer
  service: {http://org.afrospective}helloWorld
  endpoint: hello
in: <?xml version="1.0" encoding="UTF-8"?><hello>Hi From Ivanhoe</ hello> out: Unable to display: org.xml.sax.SAXParseException: The processing
instruct
ion target matching "[xX][mM][lL]" is not allowed.
]

...................................

Here is the client code
......................

            String input = "<hello>Hi From Ivanhoe</hello>";
PostMethod post = new PostMethod("http://localhost:8192/ example/
");

            post.setRequestEntity(stringRequest);
            post.setRequestContentLength((int) input.length());
            post.setRequestHeader("Content-type", "text/xml;");

            HttpClient httpclient = new HttpClient();

            int result = httpclient.executeMethod(post);
            System.out.println("Response status code: " + result);
            System.out.println(post.getResponseBodyAsString());
            post.releaseConnection();
........................

Can anyone indicate what I am doing wrong?

Thank you in advance

Ivanhoe

--
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/

Reply via email to