Romain Chantereau created CXF-6527:
--------------------------------------
Summary: WSDLRefValidator reject valid target reference URI/IRI
Key: CXF-6527
URL: https://issues.apache.org/jira/browse/CXF-6527
Project: CXF
Issue Type: Bug
Components: Tooling
Reporter: Romain Chantereau
Priority: Minor
When a target namespace have “:” in the path part of the URI, the validator
reject the WSDL.
This is due to this piece of code at line 137 of
{{tools/validator/src/main/java/org/apache/cxf/tools/validator/internal/WSDLRefValidator.java}}
file.
{code:java}
private void checkTargetNamespace(String path) {
try {
if (new URL(path).getPath().indexOf(":") != -1) {
throw new ToolException(": is not a valid char in the
targetNamespace");
}
} catch (MalformedURLException e) {
// do nothing
}
}
{code}
I checked the following specifications:
* [XML namespace|http://www.w3.org/TR/xml-names/]
* [URI|http://www.rfc-editor.org/rfc/rfc3986.txt]
* [IRI|http://www.ietf.org/rfc/rfc3987.txt]
* [WSDL 2.0 Target
namespace|http://www.w3.org/TR/wsdl20/#Description_targetnamespace_attribute]
* [WSDL service definition|http://www.w3.org/TR/wsdl#_service]
and nothing forbids having a target namespace like the following one:
{{http://host:port/part/part/resource:resource}}
Then the validator add an extra constraint on the WSDL format without any
explanation.
I looked into the source history, this validation is here since a long period
(before going to git), then I was not able to find out the reason behind this
explicit check.
Could fix this bug or explain why there is a such limitation?
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)