onvif wsdl转java

wsimport  -keep -d d:\ -s d:\src -p com.map -verbose d:\wsdl\devicemgmt.wsdl

首先要在wsdl文件中添加一下节点:(否则会报它在wsdl中找不到service)

<wsdl:service name="DeviceService">  
<wsdl:port name="DevicePort" binding="tds:DeviceBinding">  
<soap:address location="http://172.16.2.32/onvif/device_service"/>  
</wsdl:port>  
</wsdl:service>

提示【warning】Ignoring SOAP port "DevicePort": it uses non-standard SOAP 1.2 binding.


这个时候生成的java代码中就没有Device.class和DeviceService.class这两个东西。

其实加上-extension这个参数就OK了,

http://www.onvif.org/Documents/Specifications.aspx 下载wsdl

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
### 回答1: ONVIF是一种开放网络视频接口标准,它定义了一组标准化的接口,用于网络视频设备之间的通信和管理。如果您需要将ONVIF协议换为Java代码,您可以使用Java ONVIF库来实现。 以下是使用 Java ONVIF 库的示例代码: ``` // 导入所需的库 import de.onvif.soap.OnvifDevice; import de.onvif.soap.devices.*; import de.onvif.soap.devices.media.*; import de.onvif.soap.devices.ptz.*; // 创建 OnvifDevice 对象 OnvifDevice device = new OnvifDevice("http://192.168.1.2/onvif/device_service"); // 获取设备信息 DeviceInformation info = device.getDeviceInformation(); System.out.println("Device Manufacturer: " + info.getManufacturer()); System.out.println("Device Model: " + info.getModel()); // 获取媒体配置 MediaConfiguration mediaConfig = device.getMediaConfiguration(); System.out.println("Media Stream URI: " + mediaConfig.getStreamUri()); // 控制摄像头云台 PTZConfiguration ptzConfig = device.getPTZConfiguration(); PTZClient ptzClient = device.getPTZClient(); ptzClient.absoluteMove(ptzConfig, new PTZVector(new BigDecimal(0), new BigDecimal(0), new BigDecimal(1)), null); ``` 上面的示例代码仅仅是一个简单的入门示例,您可以根据自己的需求进行更加复杂的开发。 ### 回答2: ONVIF协议是一种用于视频监控设备的开放网络视频接口标准。 将ONVIF协议换为Java可以使用ONVIF协议的Java库或框架来实现。 首先,我们可以使用Axis2库来生成ONVIFJava客户端。 Axis2是一个开源的Web服务框架,它提供了生成SOA(面向服务的架构)的Java客户端和服务端的工具。我们可以使用Axis2的WSDL2Java工具来根据ONVIF协议的WSDL文件自动生成Java客户端代码。这样我们就可以使用Java编写与ONVIF兼容的客户端应用程序。 另外,也可以使用其他第三方的Java库,例如ONVIF Device Manager(ODM)库,它是一个开源的Java库,用于处理与ONVIF兼容设备的通信。ODM库提供了一系列的API来实现与ONVIF设备的交互,包括设备搜索、设备控制、图像配置等功能,它可以大大简化ONVIF协议的使用,并提供了一些常见的示例代码来帮助开发者更快地实现与ONVIF设备的交互。 总之,实现ONVIF协议Java可以通过使用相关的Java库或框架来简化与ONVIF设备的通信,并提供了一些常用的API和示例代码来帮助开发者更快地实现与ONVIF设备的交互。 ### 回答3: ONVIF(开放网络视频接口)是一个开放的行业标准,它定义了网络视频产品与系统之间的通信协议和接口。ONVIF协议的目标是促进不同厂商生产的网络视频产品之间的互操作性。 要将ONVIF协议换为Java代码,首先需要理解ONVIF协议的结构和要求。ONVIF协议使用基于SOAP(简单对象访问协议)的Web服务来实现设备之间的通信。因此,我们需要使用Java的SOAP库来处理SOAP消息。 首先,我们需要创建一个Java Web服务客户端,该客户端可以利用ONVIF协议与网络摄像机或其他ONVIF兼容设备进行通信。我们可以使用标准的Java SOAP库来构建这个客户端,例如Apache Axis或Apache CXF。这些库提供了从WSDL(Web服务描述语言)文件生成Java代码的工具。 然后,我们需要使用生成Java代码创建和发送SOAP消息,以执行特定的ONVIF操作,例如获取设备信息、控制云台或获取视频流。SOAP消息可以使用Java的SOAP库来构建,并使用HTTP协议将消息发送到设备的网络地址。 在处理ONVIF协议换时,需要特别注意以下几点: 1. 理解ONVIF协议的不同版本和各版本之间的差异。 2. 理解ONVIF协议中的命名空间和消息结构,以确保正确构建SOAP消息。 3. 理解ONVIF协议中定义的操作和参数,以便正确地执行各种功能。 通过理解ONVIF协议的结构和要求,并使用适当的工具和库,我们可以将ONVIF协议换为Java代码,实现与ONVIF兼容设备的通信和控制。这样,我们就可以在Java应用程序中轻松地集成ONVIF设备,并实现各种功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值