While migrating SOA composites containing DB adpaters which calls stored procedures in Oracle database returning XMLTYPE from SOA suite 11g to 12c an error similar to the below may be noticed.
</faultType>
-<bindingFault xmlns="http://schemas.oracle.com/bpel/extension">
-<part name="summary">
<summary>
Exception occurred when binding was invoked.
Exception occurred during invocation of JCA binding: "JCA Binding execute of Reference operation '*******' failed due to: Object XML conversion error.
An error occurred while converting a Java object to XML.
Unable to convert the XSD element ***** whose JDBC type is OPAQUE to a corresponding XML document element. Cause: java.lang.ClassCastException: weblogic.jdbc.wrapper.WrapperSQLXML_oracle_xdb_XMLType cannot be cast to oracle.sql.OPAQUE
Analyze the error and correct if possible. Contact oracle support if error is not fixable. This exception is considered not retriable, likely due to a modelling mistake.
".
The invoked JCA adapter raised a resource exception.
Please examine the above error message carefully to determine a resolution.
</summary>
</part>
-<part name="detail">
<detail>
weblogic.jdbc.wrapper.WrapperSQLXML_oracle_xdb_XMLType cannot be cast to oracle.sql.OPAQUE
</detail>
</part>
-<part name="code">
<code>
null
</code>
</part>
</bindingFault>
</bpelFault>
The problem is that in 11G the wizard creates the schema elements as SYS.XMLTYPE for XML type parameters whereas in 12C it should be PUBLIC.XMLTYPE.So changing this in database adapter schema will resolve the issue.
For example,
from
<complexType>
<sequence>
<element name="P_XML_VALUE" type="db:SYS.XMLTYPE" db:index="2" db:type="Opaque" minOccurs="0" nillable="true"/>
</sequence>
</complexType>
to
<complexType>
<sequence>
<element name="P_XML_VALUE" type="db:PUBLIC.XMLTYPE" db:index="2" db:type="Opaque" minOccurs="0" nillable="true"/>
</sequence>
</complexType>
</faultType>
-<bindingFault xmlns="http://schemas.oracle.com/bpel/extension">
-<part name="summary">
<summary>
Exception occurred when binding was invoked.
Exception occurred during invocation of JCA binding: "JCA Binding execute of Reference operation '*******' failed due to: Object XML conversion error.
An error occurred while converting a Java object to XML.
Unable to convert the XSD element ***** whose JDBC type is OPAQUE to a corresponding XML document element. Cause: java.lang.ClassCastException: weblogic.jdbc.wrapper.WrapperSQLXML_oracle_xdb_XMLType cannot be cast to oracle.sql.OPAQUE
Analyze the error and correct if possible. Contact oracle support if error is not fixable. This exception is considered not retriable, likely due to a modelling mistake.
".
The invoked JCA adapter raised a resource exception.
Please examine the above error message carefully to determine a resolution.
</summary>
</part>
-<part name="detail">
<detail>
weblogic.jdbc.wrapper.WrapperSQLXML_oracle_xdb_XMLType cannot be cast to oracle.sql.OPAQUE
</detail>
</part>
-<part name="code">
<code>
null
</code>
</part>
</bindingFault>
</bpelFault>
The problem is that in 11G the wizard creates the schema elements as SYS.XMLTYPE for XML type parameters whereas in 12C it should be PUBLIC.XMLTYPE.So changing this in database adapter schema will resolve the issue.
For example,
from
<complexType>
<sequence>
<element name="P_XML_VALUE" type="db:SYS.XMLTYPE" db:index="2" db:type="Opaque" minOccurs="0" nillable="true"/>
</sequence>
</complexType>
to
<complexType>
<sequence>
<element name="P_XML_VALUE" type="db:PUBLIC.XMLTYPE" db:index="2" db:type="Opaque" minOccurs="0" nillable="true"/>
</sequence>
</complexType>
Hello.
ReplyDeleteWhere can I find the database adapter schema?
Thanks.
It is the xsd file within the composite.
DeleteI solved the problem by disabling "Wrap Data Type" checkbox in "Connection Pool" tab advanced section.
ReplyDeleteAfterwards you'll have to restart the WLS.
Yes that can improve the performance also by disabling debugging output and the tracking of weblogic connection utilization..
DeleteThanks, that solved the same issue we had when porting to WebLogic 12.
Delete#### <[ACTIVE] ExecuteThread: '7' for queue: 'weblogic.kernel.Default (self-tuning)'> <> <> <1475584316977> <[severity-value: 1] [rid: 0] [partition-id: 0] [partition-name: DOMAIN] > <weblogic.jdbc.wrapper.WrapperSQLXML_oracle_xdb_XMLType cannot be cast to oracle.sql.OPAQUE
java.lang.ClassCastException: weblogic.jdbc.wrapper.WrapperSQLXML_oracle_xdb_XMLType cannot be cast to oracle.sql.OPAQUE
Thanks for the quick help.
DeleteVery Helpful!
ReplyDeletepusulabet
ReplyDeletesex hattı
https://izmirkizlari.com
rulet siteleri
rexbet
LKV7
pusulabet
ReplyDeletesex hattı
https://izmirkizlari.com
rulet siteleri
rexbet
AXF5
pusulabet
ReplyDeletesex hattı
https://izmirkizlari.com
rulet siteleri
rexbet
İ75P5Q