Oracle Adapter : There is an error in XML document (1, 40)

I had developed an application which requests for data from an Oracle Database according to the search criteria , everything works fine as I check the Orchestration debugger the search result return from the database successfully , but the error occurred in the web service that generated by the BizTalk.

Detailed Error:
A response message sent to adapter "SOAP" on receive port "WebPort_OracleAdapter_Proxy/OracleAdapter_OracleOrchesteration_rcvRequest" with URI "/OracleAdapter_Proxy/OracleAdapter_OracleOrchesteration_rcvRequest.asmx" is suspended. Error details: There is an error in XML document (1, 40). MessageId: {F231205A-68A4-45D7-9D3A-33CAF2D5889F} InstanceID: {B77F31E2-D2D8-4D12-9768-A5B97938E20B} For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp Operating System: windows 2003 Microsoft BizTalk Server 2006
Oracle Client version : 10.2.0

In order to fix this kind of error , check the following :


This problem is coming up because the URI that is generated by the adapter is rejected by the SOAP adapter. like if the URI for the targetNamespace is something below, it is not valid URI for SOAP adapter:"http://schemas.microsoft.com/[OracleDb:/MSADAPTER/SCOTT/Tables/MYTEST][OracleDb://MSADAPTER/SCOTT/Tables/MYTEST]" In this case the work around is change the URI within the Orchestration so that it is a valid URI for the webservice. Special characters "[" must be replaced with '%' followed by their ISO hex representation. In addition, I am not sure about the "://" string appearing two times in the same string. Here is a valid URI format as per the XML rfchttp://www.rfc-editor.org/rfc/rfc3986.txt. Or else if we do not want to change the schema to be sent to the Oracle adapter there is another workaround where in we need to use Transform in the orchestration.

1. For this create a new schema similar to the one generated by Oracle and change it to a different target name space without any special characters, something like this "http://schemas.microsoft.com/OracleDb/MSADAPTER/SCOTT/Tables/MYTEST"

2. Then create a map whose source schema points to the one given by Oracle and destination schema corresponds to the one you created in step 1. Moreover, correspond the elements of source to destination.

3. Add a Transform (making use of the above Map) in the orchestration before sending it to the SOAP.


0 Response to "Oracle Adapter : There is an error in XML document (1, 40)"