Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
2.0.3
-
None
-
IBM WebSphere 6.1 Java5
Also reproduced when building with maven2
-
Novice
Description
When the spring context contains the <http-conf:conduit> tag, additional CXF xsd files are parsed. Some of these XSD's rely on the WSDL schema definitions found online. However, the XSD is also included in the jar (schemas/wsdl/wsdl.xsd).
When the application starts up without an internet connection, it will fail because it cannot find the wsdlExtensibiityElement definition.
I have modified the xsd to load [schemaLocation="classpath:schemas/wsdl/wsdl.xsd"]. Now, the application starts up fine without internet connection.
The file I have modified are:
- /schemas/wsdl/http.xsd
- /schemas/wsdl/http-conf.xsd
- /schemas/wsdl/jms.xsd
- /schemas/wsdl/xml-binding.xsd
In all these files, I have removed:
<import namespace = "http://schemas.xmlsoap.org/wsdl/" schemaLocation="http://schemas.xmlsoap.org/wsdl/"/>
and added
<import namespace = "http://schemas.xmlsoap.org/wsdl/" schemaLocation="classpath:/schemas/wsdl/wsdl.xsd"/>
Perhaps there are other setting requiring external files, but we haven't come across any so far.
Background info:
Our web services are running in a highly protected environment. This means that all firewalls are closed, except for a few ports that are needed to communicate with our service providers. This means that we do not automatically have access to all IP's from our servers.
Attachments
Issue Links
- is related to
-
CXF-1437 schemas without *.xsd extensions being fetched from the internet instead of locally
- Closed