[
https://issues.apache.org/jira/browse/ODE-1031?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Sathwik Bantwal Premakumar reopened ODE-1031:
---------------------------------------------
> Deployment error - captureSchema: NULL model (unknown error)
> ------------------------------------------------------------
>
> Key: ODE-1031
> URL: https://issues.apache.org/jira/browse/ODE-1031
> Project: ODE
> Issue Type: Bug
> Components: BPEL Compilation/Parsing
> Affects Versions: 1.3.6
> Reporter: Igor Vorobiov
> Assignee: Tammo van Lessen
> Priority: Minor
> Fix For: 1.3.7, 1.4
>
> Attachments: HelloWorld2.zip, ODE.log, WSDLRegistry.zip
>
>
> Prerequirements: before reproduce and workaround the issue need to apply the
> fix for problem with using several internal schemas. It is commited in the
> trunk:
> https://github.com/apache/ode/commit/ccdba9fab2eb9821ab96f05a96dab65c27d3cb14
>
> There is problem with schema capturing for wsdl that contains internal
> schemas and one imports another:
> {code:xml}
> <wsdl:types>
> <xsd:schema targetNamespace="http://ode/bpel/unit-test.wsdl">
> <xsd:import namespace="http://ode/bpel/import/types" />
> <xsd:simpleType name="dummy">
> <xsd:restriction base="d:dummyType" />
> </xsd:simpleType>
> </xsd:schema>
> <xsd:schema targetNamespace="http://ode/bpel/import/types">
> <xsd:simpleType name="dummyType">
> <xsd:restriction base="xsd:string" />
> </xsd:simpleType>
> </xsd:schema>
> </wsdl:types>
> {code}
> To workaround this problem it is enough to change schemas order(put
> "http://ode/bpel/import/types" on the top).
> Bug is related to resolving entity in
> org.apache.ode.bpel.compiler.WsdlFinderXMLEntityResolver.resolveEntity(XMLResourceIdentifier).
> This method searches imported schemas in the _internalSchemas map:
> _internalSchemas.get(new URI(resourceIdentifier.getNamespace()))
> This map is populated in
> org.apache.ode.bpel.compiler.WSDLRegistry.captureSchemas(Definition,
> ResourceFinder, URI). But since second(imported) schema is not put to map so
> "resolveEntity" returns null.
> To fix the problem we need to populate _internalSchemas map before schema
> capturing.
> Attached:
> - HelloWorld2.zip that can be used to reproduce the issue;
> - ODE.log where error can be found if DEBUG level is enabled for
> "org.apache.ode.utils.xsd" package;
> - my fix "WSDLRegistry.zip\WSDLRegistry(my fix).java".
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)