[
https://issues.apache.org/jira/browse/CXF-7428?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Daniel Kulp resolved CXF-7428.
------------------------------
Resolution: Won't Fix
Assignee: Daniel Kulp
Fix Version/s: Invalid
This is more or less working as designed and no plans to change. There are
many places in the code that require a 1:1 relationship of schema URI <-->
namespace. More specifically, if given a namespace URI, we need to map that to
a particular schema object based on the schema's URI. The proper fix is
exactly what you did in the FixedPIXManager.wsdl of making sure there is a
single "schema" for that namespace and xsd:include the others into it. That
is the proper WSDL. for this case.
> Enabling schema validation and running it can not resolve
> namespace.(cvc-elt.1)
> -------------------------------------------------------------------------------
>
> Key: CXF-7428
> URL: https://issues.apache.org/jira/browse/CXF-7428
> Project: CXF
> Issue Type: Bug
> Components: JAXB Databinding
> Environment: Java 1.8.0_51,
> Spring Framework 4.0.6,
> Windows 10
> Reporter: Yoshitaka Shibusawa
> Assignee: Daniel Kulp
> Labels: client, operation, schema, validation
> Fix For: Invalid
>
> Attachments: ihe-pixv3.zip
>
>
> Depending on how WSDL is defined, it is the same namespace ("urn: hl7 - org:
> v3"), but schema validation does not recognize the xsd file.
> The way of defining WSDL is the way to include "schema file (xsd)" for each
> file as follows and the way to include it together.
> It seems that you can recognize namespace only for the first file
> (PRPA_IN201301UV02.xsd).
> For the same namespace, I think it is correct to merge the schema information
> ("urn:hl7-org:v3") and store it in "schemaSourcesMap 2" and execute the
> schema validation.
> Probably to fix it:
> org.apache.cxf.ws.addressing.EndpointReferenceUtils#createSchema(ServiceInfo,
> Bus)
> 「si.getSystemId()」→Type(types1...)
> ------------------------------------------------------------
> PIXManager.wsdl#types1:urn:hl7-org:v3
> PIXManager.wsdl#types2:urn:hl7-org:v3
> PIXManager.wsdl#types3:urn:hl7-org:v3
> PIXManager.wsdl#types4:urn:hl7-org:v3
> PIXManager.wsdl#types5:urn:hl7-org:v3
> PIXManager.wsdl#types6:urn:hl7-org:v3
> ↓ merge key is "urn:hl7-org:v3"
> PIXManager.wsdl#types1:urn:hl7-org:v3
> ------------------------------------------------------------
> The meanings of the WSDL definitions of the failing case and the succeeding
> case are the same as shown below.
> A case where the namespace can not be recognized correctly
> An example of defining a schema element for each xsd file(※1)
> <types>
> <xsd:schema elementFormDefault="qualified"
> targetNamespace="urn:hl7-org:v3" xmlns:hl7="urn:hl7-org:v3">
> <xsd:include
> schemaLocation="../schema/HL7V3/NE2008/multicacheschemas/PRPA_IN201301UV02.xsd"/>
> </xsd:schema>
> <xsd:schema elementFormDefault="qualified"
> targetNamespace="urn:hl7-org:v3" xmlns:hl7="urn:hl7-org:v3">
> <xsd:include
> schemaLocation="../schema/HL7V3/NE2008/multicacheschemas/PRPA_IN201302UV02.xsd"/>
> </xsd:schema>
> <xsd:schema elementFormDefault="qualified"
> targetNamespace="urn:hl7-org:v3" xmlns:hl7="urn:hl7-org:v3">
> <xsd:include
> schemaLocation="../schema/HL7V3/NE2008/multicacheschemas/PRPA_IN201304UV02.xsd"/>
> </xsd:schema>
> <xsd:schema elementFormDefault="qualified"
> targetNamespace="urn:hl7-org:v3" xmlns:hl7="urn:hl7-org:v3">
> <xsd:include
> schemaLocation="../schema/HL7V3/NE2008/multicacheschemas/MCCI_IN000002UV01.xsd"/>
> </xsd:schema>
> <xsd:schema elementFormDefault="qualified"
> targetNamespace="urn:hl7-org:v3" xmlns:hl7="urn:hl7-org:v3">
> <xsd:include
> schemaLocation="../schema/HL7V3/NE2008/multicacheschemas/PRPA_IN201309UV02.xsd"/>
> </xsd:schema>
> <xsd:schema elementFormDefault="qualified"
> targetNamespace="urn:hl7-org:v3" xmlns:hl7="urn:hl7-org:v3">
> <xsd:include
> schemaLocation="../schema/HL7V3/NE2008/multicacheschemas/PRPA_IN201310UV02.xsd"/>
> </xsd:schema>
> </types>
> A case where the namespace can be recognized correctly
> An example of defining a schema element by combining xsd files
> <types>
> <xsd:schema elementFormDefault="qualified"
> targetNamespace="urn:hl7-org:v3" xmlns:hl7="urn:hl7-org:v3">
> <!-- Include the message schema -->
> <xsd:include
> schemaLocation="../schema/HL7V3/NE2008/multicacheschemas/PRPA_IN201301UV02.xsd"/>
> <xsd:include
> schemaLocation="../schema/HL7V3/NE2008/multicacheschemas/PRPA_IN201302UV02.xsd"/>
> <xsd:include
> schemaLocation="../schema/HL7V3/NE2008/multicacheschemas/PRPA_IN201304UV02.xsd"/>
> <xsd:include
> schemaLocation="../schema/HL7V3/NE2008/multicacheschemas/MCCI_IN000002UV01.xsd"/>
> <xsd:include
> schemaLocation="../schema/HL7V3/NE2008/multicacheschemas/PRPA_IN201309UV02.xsd"/>
> <xsd:include
> schemaLocation="../schema/HL7V3/NE2008/multicacheschemas/PRPA_IN201310UV02.xsd"/>
> </xsd:schema>
> </types>
> (※1)
> WSDL is shared worldwide
> 【IHE Technical Frameworks】
> #############################################
> Appendix W: Implementation Material
> Implementation material for ITI profiles such as XDS, XCA, RFD, and others
> can be found on the IHE FTP site under
> ftp://ftp.ihe.net/TF_Implementation_Material/ITI/.
> Some of the types of implementation material available are schema, examples
> and informative WSDL.
> #############################################
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)