Я разрабатываю веб-сервис через jaxws и Java. У меня есть WSDL, который импортирует XSD, вот фрагмент из моего WSDL. Как вы можете видеть, это довольно стандартно.wsimport не может разобрать XSD - проблема кодирования пути?
<xsd:schema targetNamespace="http://blah.com">
<xsd:import schemaLocation="../xsd/myschema.xsd" namespace="http://blah.com"/>
</xsd:schema>
Я использую плагин Maven для генерации своих типов с использованием wsimport.
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxws-maven-plugin</artifactId>
<version>1.12</version>
<configuration>
<wsdlDirectory>${basedir}/src/main/wsdl</wsdlDirectory>
<packageName>com.blah.service.generated</packageName>
<keep>true</keep>
<sourceDestDir>${basedir}/target/generated/src/main/java</sourceDestDir>
</configuration>
<executions>
<execution>
<goals>
<goal>wsimport</goal>
</goals>
</execution>
</executions>
</plugin>
Все работало нормально, когда я строил локально (Windows), все работало нормально в среде, которую мы использовали (Linux). Однако мы переместились в новую среду и видим следующую ошибку.
[ERROR] Unable to parse "file:/xsd/myschema.xsd" : Illegal character in path at index 84: file:/apps/buildeng/workspace/workspace/Blah/Blah/Business%20Blah{PR102483}/BLAGHASFASD/BLALALALALALALAL-Web-Service-Build/src/main/wsdl/mywsdl.wsdl
line 13 of file:/apps/buildeng/workspace/workspace/Blah/Blah/Business%20Blah{PR102483}/BLAGHASFASD/BLALALALALALALAL-Web-Service-Build/src/main/wsdl/mywsdl.wsdl
[ERROR] com.sun.istack.SAXParseException2; systemId: file:/apps/buildeng/workspace/workspace/Blah/Blah/Business%20Blah{PR102483}/BLAGHASFASD/BLALALALALALALAL-Web-Service-Build/src/main/wsdl/mywsdl.wsdl; lineNumber: 13; columnNumber: 89; Unable to parse "file:/xsd/myschema.xsd" : Illegal character in path at index 84: file:/apps/buildeng/workspace/workspace/Blah/Blah/Business%20Blah{PR102483}/BLAGHASFASD/BLALALALALALALAL-Web-Service-Build/src/main/wsdl/mywsdl.wsdl
line 9 of file:/apps/buildeng/workspace/workspace/Blah/Blah/Business%20Blah{PR102483}/BLAGHASFASD/BLALALALALALALAL-Web-Service-Build/src/main/wsdl/mywsdl.wsdl
Я немного искалечил свой путь, чтобы вытащить некоторые важные слова. Путь в этой новой среде значительно дольше, чем раньше, и теперь содержит фигурные фигурные скобки {} - может ли это быть проблемой?