Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Soap Onvif wsdl的wsimport-无服务定义_Soap_Wsdl_Onvif - Fatal编程技术网

Soap Onvif wsdl的wsimport-无服务定义

Soap Onvif wsdl的wsimport-无服务定义,soap,wsdl,onvif,Soap,Wsdl,Onvif,有几个问题是类似的,但没有一个能明确回答这个问题 我正在使用wsimport从.wsdl文件()生成代码。运行 wsimport -keep https://www.onvif.org/ver10/device/wsdl/devicemgmt.wsdl -extension -Xnocompile 输出 At least one WSDL with at least one service definition needs to be provided. 基于我添加的这个服务声明,本地下载了

有几个问题是类似的,但没有一个能明确回答这个问题

我正在使用
wsimport
从.wsdl文件()生成代码。运行

wsimport -keep https://www.onvif.org/ver10/device/wsdl/devicemgmt.wsdl -extension -Xnocompile
输出

At least one WSDL with at least one service definition needs to be provided.
基于我添加的这个服务声明,本地下载了
onvif.xsd
,和
common.xsd
,修改了为这些onvif文件指定的路径,然后生成了代码


是否有一种更直接的方法可以在每个Onvif URL上运行
wsimport
命令?有20多个wsdl文件,我觉得手动下载,然后在每个文件中进行上述更改以便能够运行
wsimport

是愚蠢的。您应该在
wsdl
文件中进行这些更改:


  • 在第11行中添加
    name=“DeviceService”
    ,以
    开头,我知道这是要做的。我想避免对所有Onvif wsdl文件进行这些更改-我的问题是如何避免将这些行添加到所有wsdl文件中。我认为没有其他选择,这些错误来自
    wsdl
    文件,这些文件已上载到
    Onvif
    网站。这可能是公司的伎俩!我花了大约两个多星期的时间试图找出这些错误,真是太遗憾了。作为一个开放标准,他们没有任何开源的完整使用示例,这非常令人恼火。他们所提供的只是一个应用程序程序员指南,其他什么都没有;这几乎是无法使用的。我花了两天多的时间才登录工作。这对我来说也很有效。谢谢为了自动化替换过程,我使用“sed”和“grep”命令开发了一个linux shell脚本。