on 02-04-2014 3:03 PM
Hi Experts,
I am trying to get an XML file from a website for exchange rates using sender Axis Adapter. I have developed my scenario via
In payload i have XML declarations, which causes an exception as " <faultstring>org.xml.sax.SAXParseException: The processing instruction target matching "[xX][mM][lL]" is not allowed.</faultstring> ".
When i remove those XML declarations in SOAPUI and send the payload, it works successfully. But since i am getting the XML document from a Website, i cannot remove them from payload till it reaches to sender communication channel, I also have tried XMLAnonmyizerBean. Is there any module in communication channel or anyway i can do to remove those declarations?
Note: I can see the same exception when communication channel gets payload from website via Alert Configuration.
Thanks.
Hi Faruk
Try creating an adapter module that remove the information that is annoying to you
Regards
Javi
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Steve,
The URL to get the Xml is http://www.tcmb.gov.tr/kurlar/today.xml
I just used the instructions referring to Michal's example, which he said Axis Adapter can be used to retrieve an xml file.
Regards.
Thanks.
The URL returns XML and I've just found another of Michal's posts in which he says this is not easy in PI
That is from 2010 so the situation might have changed.
The response also includes a reference to a stylesheet
<?xml-stylesheet type="text/xsl" href="isokur.xsl"?>
which is why it is rendered as HTML when you open it in a browser. I don't know if that would be a problem in PI. Probably not.
Is the problem reading the XML, or using it as a payload in another message? The data in the SOAP body in your example seems to be the response from the web site.
You should still be able to use Michal's Axis example. Do you have the enableREST parameter set to avoid using SOAP?
regards
Steve
Hi Steve,
Thanks.
I am trying to get the XML and send it to anotther system via RFC.
But in cc monitoring i get the error as "the processing instructions is not allowed in soap message".
The soap body in my example is the wsdl from sender agreement. I was trying it manually from soapui after getting error in cc monitoring.
Only parameter in sender axis adapter is enableRest =true , how can i set it to avoid to use soap? Or how can i find the necessary value to do that?
Regards.
Hello Faruk
I have never used the Axis adapter so don't have much to suggest. The AXIS installation does seem to depend on PI patch-level but if you can use the AXIS classes then it should just work.
But if Axis is returning a SOAP message I don't think you'll be able to remove the XML declaration from the SOAP body before it fails in PI, i.e. I don't think an adapter module would work.
Have you tried using a HTTP or SOAP (with 'Do not use SOAP envelope') communication channel.
Kind regards
Steve
User | Count |
---|---|
77 | |
9 | |
8 | |
6 | |
6 | |
6 | |
6 | |
6 | |
5 | |
5 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.