JAX-WS ::未知的可扩展性元素或属性“ns1”(在命名空间“http://www.w3.org/2000/xmlns/”中)

时间:2013-09-21 16:44:07

标签: java jax-ws wsimport

我正在使用wsimport Ant任务:

<target name="wsimport">
    <wsimport
        verbose    = "true"
        destdir    ="${javasource-auto-wsimport.dir}"
        package    ="${wsimport-package.name}"
        xnocompile ="true"
        wsdl       ="${wsdl.file}"
    />
</target>

并收到以下警告:

[wsimport] Consider using <depends>/<produces> so that wsimport won't do unnecessary compilation
[wsimport] JAX-WS RI 2.2.8
[wsimport] command line: wsimport -d /playground/jax-ws/client/src-auto-wsimport -Xnocompile -verbose wsdl-auto/MyService.wsdl -p foo.client
[wsimport] parsing WSDL...
[wsimport] 
[wsimport] 
[wsimport] [WARNING] unknown extensibility element or attribute "ns1" (in namespace "http://www.w3.org/2000/xmlns/")
[wsimport]   line 17 of file:/playground/jax-ws/client/wsdl-auto/IHello.wsdl
[wsimport] 
[wsimport] [WARNING] unknown extensibility element or attribute "ns2" (in namespace "http://www.w3.org/2000/xmlns/")
[wsimport]   line 18 of file:/playground/jax-ws/client/wsdl-auto/IHello.wsdl
[wsimport] 

现在,我知道如何处理的<depends>/<produces>内容 - 这是我担心的两个警告。它抱怨的行(IHello.wsdl文件的第17行和第18行)是:

  <input ns1:Action="http://zar.bar.foo/IHello/sayHelloRequest" message="tns:sayHello" xmlns:ns1="http://www.w3.org/2007/05/addressing/metadata"/>
  <output ns2:Action="http://zar.bar.foo/IHello/sayHelloResponse" message="tns:sayHelloResponse" xmlns:ns2="http://www.w3.org/2007/05/addressing/metadata"/>

该工具似乎无法识别ns1ns2是否已正确声明名称空间前缀。

当我从命令行调用wsimport工具时,我不会收到任何警告:

$ /usr/lib/jvm/java-7-oracle/bin/wsimport -version
JAX-WS RI 2.2.4-b01
$/usr/lib/jvm/java-7-oracle/bin/wsimport -d src-auto-wsimport/ -p foo.client  -Xnocompile wsdl-auto/MyService.wsdl
parsing WSDL...



Generating code...

我的问题是:

  1. 为什么会出现这种差异?
  2. 如果存在差异,我应该使用wsimport工具的命令行版本还是基于Ant的任务?
  3. 为什么我会收到这些警告?

0 个答案:

没有答案