`

通过wsimport 从WSDL文档中生成客户端支持代码

阅读更多
通过wsimport 从WSDL文档中生成客户端支持代码

Generating Client-Support Code from a WSDL

通过Java提供的"wsimport"工具可以很容易完成基于SOAP协议的Web服务客户端生成工作。这个工具可以从对应的WSDL文档的服务描述中生成客户端支持代码或其他相关资源。输入并执行如下命令:
% wsimport

    

执行后,将会打印出该命令程序的使用帮助。下面我们将通过此命令工具为TimeServer服务产生客户端开发的相关支持代码。

启动ch01.ts.TimeServerPublisher程序后,执行如下命令:
 % wsimport -keep -p client http://localhost:9876/ts?wsdl 

  

执行后将会在"client"子目录下面产生两个源代码文件和两个与之对应的已经编译好的Class文件。命令行最后面的URL地址,和前面最初由Perl、Ruby和Java语言编写的客户端请求Web服务对应的WSDL文档时所给出的服务契约地址一样。"-p"选项用来指定生成的Java包名称,此处使用"client"作为包名称。包名称可以是符合Java包命名规则的任何名称,wsimport工具通过指定的包名称创建包对应子目录。"-keep"选项用来指示是否保留编译后的源文件,这个例子中,我们保留源文件留作验证。"-p"选项是比较重要的,这是由于wsimport命令产生的TimeServer.class文件名称同先前编译的服务端点接口(SEI,Service Endpoint Interface)拥有同样的名字。如果没有指定包名称,wsimport默认使用服务实现的包名称作为客户端代码包名称,此处将会默认使用"ch01.ts"作为包名称。简单来说,使用"-p"选项可以防止编译好的SEI文件不被wsimport工具产生的文件覆盖。如果已经将WSDL文档保存在本地(比如,文件被命名为ts.wsdl),那么,wsimport可以写成:
  % wsimport -keep -p client ts.wsdl 

 
分享到:
评论

相关推荐

    wsdl生成客户端

    2. **JAX-WS**:Java API for XML Web Services,Java平台的标准,提供了wsimport工具,能够从WSDL生成客户端代码。 3. .NET Framework的`svcutil.exe`:对于.NET开发者,这个工具可以生成C#或VB.NET的客户端代码。 ...

    webservice根据wsdl生成客户端代理类所需jar包

    在Java环境中,我们可以利用Eclipse这样的集成开发环境(IDE)来根据WS-DL文件自动生成客户端代理类,这些类能够方便地调用远程Web服务。然而,为了完成这个过程,我们需要依赖一些特定的jar包。 首先,Eclipse生成...

    wsimport wsdl

    - **wsimport**:这是一个Java平台提供的工具,用于从WSDL文档生成客户端存根和服务端骨架代码,以便Java应用程序可以调用或提供Web服务。通过wsimport工具,开发者可以直接从一个WSDL文件中生成所需的Java类。 - *...

    根据wsdl地址或文件生成webservice客户端

    2. **解析WSDL**:解析WSDL文件是生成客户端代码的基础。解析器会提取服务的元数据,包括服务的端点、操作、消息类型等。Java中,可以使用Apache CXF、 Axis2 或者JAX-WS的wsimport工具来解析WSDL。 3. **生成...

    Axis2服务端wsimport客户端代码.zip

    3. WSDL文件:Web服务描述语言,定义了服务的接口、操作和数据类型,是wsimport生成客户端代码的输入。 4. README或指导文档:解释如何编译、运行服务端和客户端代码,以及可能遇到的问题和解决方案。 【知识点详细...

    电信短信接口wsdl文档

    在实际开发中,开发者会使用`wsdl`文档来生成客户端和服务端的代理类,这些类提供了与接口定义的相应操作相对应的方法,简化了开发过程。例如,使用Java的`wsimport`工具或者.NET的`svcutil.exe`,可以自动生成与`...

    java调用webservice wsdl源码

    总结,Java调用WebService主要通过解析WSDL源码生成客户端代码,然后实例化服务代理并调用其方法实现通信。不同的工具库如Apache CXF、Axis2和JAX-WS提供了方便的方式来处理这一过程,让开发者能够专注于业务逻辑,...

    生成onvif框架最新的wsdl文件

    ONVIF(Open Network Video Interface Forum)是一种开放标准,它定义了网络视频设备之间的接口,以便于不同...通过理解WSDL和XSD文件的结构,以及利用合适的工具和预生成的代码,可以更高效地实现ONVIF服务的开发。

    onvif代码生成的所有wsdl文件及其自动生成代码脚本

    通常,这些脚本会调用像是`wsimport`(Java环境)或`gsoap`(C/C++环境)这样的工具,它们能够根据WSDL生成符合特定语言的代码。 使用这些自动生成的代码,开发者可以方便地创建ONVIF设备的模拟器、测试客户端或者...

    java版WebService生成客户端和服务端的实例

    这可以通过 Axis 的 wsimport 工具实现,它会根据服务的WSDL生成对应的Java客户端代码。这些代码包含了客户端 stubs 和 skeletons,用于封装和解封装SOAP消息。一旦客户端代码生成,你就可以像调用本地方法一样调用...

    基于wsdl进行webservice接口开发打印helloworld.rar

    4. 在客户端生成服务代理,通常通过JAX-WS的`wsimport`工具从WSDL生成客户端代码。 5. 使用生成的客户端代码调用服务,传递必要的参数,接收返回结果。 文件"po-webservice"可能是服务端或客户端的源代码文件,可能...

    根据wsdl访问链接如何调用webService接口

    另外,wsdl2java 和 wsdl2dotnet 分别是Java和.NET环境下的命令行工具,用于从WSDL生成客户端代码。 6. **移动Web服务(mobileWebServce)** 压缩包中的`mobileWebServce`可能是指针对移动设备的Web服务实现或示例...

    onvif之wsdl文件(适于离线生成源码)

    这些工具根据WSDL文件生成客户端或服务端的代码骨架,然后开发者可以在生成的代码基础上进行扩展和定制。 总的来说,理解和使用ONVIF的WSDL文件是开发ONVIF兼容应用的关键步骤。离线生成源码的方法使得开发者能够在...

    wsdl first开发web service(maven插件自动生成代码)

    5. **Maven插件**:在本场景中,是用于WSDL First开发的插件,比如`wsimport`或`cxf-codegen-plugin`,它们能读取WSDL文档并生成Java服务端和客户端的类。 6. **代码生成流程**:创建WSDL文件 -> 配置Maven插件...

    webservice 客户端 服务端实例 代码

    - 生成客户端代理类:使用wsimport工具,根据服务的WSDL地址生成客户端所需的Stubs和Skeltons。 ```bash wsimport -keep http://localhost:8080/MyService?wsdl ``` - 创建客户端实例并调用服务: ```java MyService...

    了解_Web_服务规范_第_2_部分:Web_服务描述语言_(WSDL)

    例如,在Java环境中,可以使用JAX-WS的`wsimport`工具从WSDL文件生成客户端存根。同样,服务器端框架如Apache Axis2也能从WSDL文件自动生成服务实现所需的部分代码。 ### XML模式的基础 WSDL文件中常常包含XML ...

    onvif所有 wsdl文件

    描述中提到的"wsimport"是一个Java工具,它允许开发者从WSDL文件生成Java本地代码,包括客户端和服务端的代理类、数据绑定类以及必要的SOAP绑定代码。这大大简化了与ONVIF设备交互的Java应用的开发过程。使用...

    webservice注解修改生成wsdl信息

    JAX-WS支持通过注解来简化服务的定义,使得我们能够直接在服务接口或类上添加注解,来控制WSDL的生成。 1. **服务名称修改**:在JAX-WS中,我们可以通过`@WebService`注解来设置服务的名称。例如: ```java @...

    生成wsdl文件

    生成WSDL文件的方法多种多样,可以从代码自动生成,也可以手动编写。以下是一个简单的步骤说明: 1. **选择工具**: - 源码生成:如果你的Web服务基于Java的JAX-WS或.NET的WCF等框架,这些框架通常提供工具自动...

Global site tag (gtag.js) - Google Analytics