Man*_*noj 12 java xml xsd web-services
我有一个xsd文件Foo.xsd.我尝试了以下方法在WSDL文件中引用它,但它不起作用.
1)将xsd文件放在本地文件系统中并将其导入为
<xsd:import namespace="http://ws.test.com/" schemaLocation="file:///D:/wsdl/Foo.xsd"></xsd:import>
Run Code Online (Sandbox Code Playgroud)
2)将xsd文件放在Web根文件夹中并导入为
<xsd:import namespace="http://ws.test.com/" schemaLocation="http://localhost:8080/Xfire/Foo.xsd"></xsd:import>
Run Code Online (Sandbox Code Playgroud)
当我运行客户端时,我对响应对象的字段获取null.但是当我将类型定义嵌入到WSDL本身中时,这就有效.
我们如何指定外部xsds的路径?
我正在使用xFire 1.2.6生成Web服务.使用xFire WSGen ant任务生成客户端.
Arn*_*ter 17
HTTP可以从任何主机访问WSDL,因此客户端既不能访问文件URL,也不能访问本地主机(它将是自己的主机,而不是您的服务器).最佳解决方案是xsd文件的文件路径:
相对路径:
<xsd:import namespace="http://ws.test.com/" schemaLocation="../Foo.xsd"/>
Run Code Online (Sandbox Code Playgroud)
绝对路径:
<xsd:import namespace="http://ws.test.com/" schemaLocation="/myapp/Foo.xsd"/>
Run Code Online (Sandbox Code Playgroud)
对于绝对路径,您需要知道webapp的上下文路径,所以我更喜欢相对路径.
| 归档时间: |
|
| 查看次数: |
55031 次 |
| 最近记录: |