Hello everybody, I need some urgent help concerning the following problem:
I wrote a custom Web service using WSIF which I would like to invokefrom my BPEL process, pass along as input a string and want to returnas output a complex type message. I try to set the content of the complex type from within the Java class that is called by the WSIF interface operation. My WSDL looks as follows: <?xml version="1.0" encoding="utf-8" ?> <wsdl:definitions xmlns:pub="http://xmlns.oracle.com/Application2/podl_soa/podl_soa_bpel/publication" targetNamespace="http://xmlns.oracle.com/Application2/podl_soa/podl_soa_bpel/publication" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" xmlns:format="http://schemas.xmlsoap.org/wsdl/formatbinding/" xmlns:main="http://xmlns.oracle.com/Application2/podl_soa/podl_soa_bpel" xmlns:java="http://schemas.xmlsoap.org/wsdl/java/" xmlns:ncc="http://publications.europe.eu/ncc" xmlns:arch="http://publications.europe.eu/archive" xmlns:par="http://publications.europe.eu/parameters" xmlns:ext="http://publications.europe.eu/external"> <!--wsdl:import namespace="http://xmlns.oracle.com/Application2/podl_soa/podl_soa_bpel" location="../../../podl_soa_bpel.wsdl"/--> <wsdl:types> <xs:schema> <xs:import schemaLocation="../../../xsd/ncc_rules.xsd" namespace="http://publications.europe.eu/ncc"/> <xs:import schemaLocation="../../../xsd/archive_rules.xsd" namespace="http://publications.europe.eu/archive"/> <xs:import schemaLocation="../../../xsd/parameters.xsd" namespace="http://publications.europe.eu/parameters"/> <xs:import schemaLocation="../../../xsd/external.xsd" namespace="http://publications.europe.eu/external"/> <xs:complexType name="PublicationRules"> <xs:sequence> <xs:element name="ncc" type="ncc:RuleSet" maxOccurs="1"/> <!--xs:element name="archive" type="arch:ArchiveSet" maxOccurs="1"/--> </xs:sequence> </xs:complexType> </xs:schema> </wsdl:types> <wsdl:message name="service_request"> <wsdl:part name="catnum" type="xs:string"/> </wsdl:message> <wsdl:message name="service_response"> <wsdl:part name="publicationRules" type="PublicationRules"/> </wsdl:message> <wsdl:portType name="publication_PT"> <wsdl:operation name="initialize"> <wsdl:input message="pub:service_request"/> <wsdl:output name="getPublicationRulesOutput" message="pub:service_response"/> </wsdl:operation> </wsdl:portType> <!-- Java binding --> <wsdl:binding name="JavaBinding" type="pub:publication_PT"> <java:binding/> <format:typeMapping encoding="Java" style="Java"> <format:typeMap typeName="xs:string" formatType="java.lang.String"/> <format:typeMap typeName="pub:PublicationRules"formatType="com.oracle.xmlns.Application2.podl_soa.podl_soa_bpel.publication.PublicationRules"/> <format:typeMap typeName="ncc:RuleSet" formatType="eu.europe.publications.ncc.RuleSet" /> <format:typeMap typeName="ncc:NccRule" formatType="eu.europe.publications.ncc.NccRule" /> </format:typeMapping> <wsdl:operation name="initialize"> <java:operation methodName="getPublicationRules" returnPart="publicationRules"/> <wsdl:input/> <wsdl:output name="getPublicationRulesOutput"/> </wsdl:operation> </wsdl:binding> <wsdl:service name="PUBLICATION"> <wsdl:port name="JavaPort" binding="pub:JavaBinding"> <java:address className="PublicationRulesProvider"/> </wsdl:port> </wsdl:service> <!-- Partner link type --> <plnk:partnerLinkType name="publication_LT"> <plnk:role name="PublicationService"> <plnk:portType name="pub:publication_PT"/> </plnk:role> </plnk:partnerLinkType> </wsdl:definitions> Within the PublicationRulesProvides I set the content of the return type PublicationRules and return it in the end. Unfortunately when I deploy everything to the SOA server and run the test, I always receive the following exception: <remoteFault> <part name="summary"> <summary>oracle.fabric.common.FabricException: Error while determining return class of method getPublicationRules : The meta information is not consistent.; nested exception is: oracle.integration.thirdparty.apache.wsif.WSIFException: publicationRules</summary> </part> <part name="detail"> <detail>Error while determining return class of method getPublicationRules : The meta information is not consistent.; nested exception is: oracle.integration.thirdparty.apache.wsif.WSIFException: publicationRules</detail> </part> </remoteFault> What is strange is that if within the PublicationRulesProvider I onlyinstantiate the return type and immediately return it without settingit, then I arrive at the next step of my workflow. Does anyone have an idea what I did wrong? I would greatly appreciate any help to solve this issue! Kind regards! /*var h = frames.top.main_mail.winLoad();alert(h);
