当前位置: 首页 > 编程笔记 >

如何根据带账号密码的WSDL地址生成JAVA代码

韩良策
2023-03-14
本文向大家介绍如何根据带账号密码的WSDL地址生成JAVA代码,包括了如何根据带账号密码的WSDL地址生成JAVA代码的使用技巧和注意事项,需要的朋友参考一下

 wsdl:

  网络服务描述语言bai是Web Service的描述语言,它包含一系列描述某du个web service的定义。

  一、组成:zhi

  WSDL 文档可以分为两部分。顶部分由抽象定义组成,而底部分则由具体描述组成。

  二、元素:

  •   WSDL 元素基于XML语法描述了与服务进行交互的基本元素:
  •   Type(消息类型):数据类型定义的容器,它使用某种类型系统(如 XSD)。
  •   Message(消息):通信数据的抽象类型化定义,它由一个或者多个 part 组成。
  •   Part:消息参数
  •   Operation(操作):对服务所支持的操作进行抽象描述,WSDL定义了四种操作: 1.单向(one-way):端点接受信息;

  2.请求-响应(request-response):端点接受消息,然后发送相关消息;

  3.要求-响应(solicit-response):端点发送消息,然后接受相关消息;

  4.通知(notification):端点发送消息。

  •   Port Type(端口类型):特定端口类型的具体协议和数据格式规范。
  •   Binding:特定端口类型的具体协议和数据格式规范。
  •   Port:定义为绑定和网络地址组合的单个端点。
  •   Service:相关端口的集合,包括其关联的接口、操作、消息等。

使用jdk里面自带的wsimport工具,具体使用办法如下:

在JDK的bin文件夹中,有一个wsimport.exe,这个工具依据wsdl文件生成相应的类文件,然后用这些类文件,就可以像调用本地的类一样调用WebService提供的方。该工具可以用于非Java的服务器,如:用C#编写的WebService,通过wsimport则生成Java的客户端实现。

  在命令提示符中使用如下命令:

wsimport http://localhost:8080/Demo/services/MyService?wsdl

  命令参数说明:

  •   -d:生成客户端执行类的class文件的存放目录
  •   -s:生成客户端执行类的源文件的存放目录
  •   -p:定义生成类的包名

  其他命令参数请参照:http://docs.oracle.com/javase/6/docs/technotes/tools/share/wsimport.html

  使用wsimport命令后,可以得到代码,然后可以将代码拷贝到工程里面,也可以将其编译,打包成jar。

比如 javac com/xxx/*.java com/xxx/yyy/*.java

jar cvf dest.jar com/

这样我们就能得到一个dest.jar文件

使用一下webservice的框架自带的一下wsdl4j生成,由于众所周知的原因,java的webservice的jar很多,经常由于版本和实现的不同,会出现一下莫名奇妙的问题,所以这个地方还是推荐使用你所使用的框架的wsdl4j工具生成相应的stub。

wsimport -d E:\data\soap -keep -verbose -Xauthfile E:\data\soap\11.txt http://XXXXXXX

其中11.txt里填写wsdl地址:http://账号:密码@XXXXXXX

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 帐号密码        帐号密码用于保护帐号信息和登录安全,点击修改按钮可以对密码进行修改。 原密码修改 输入当前密码,输入2次您想修改的新密码(符合密码规则)点击确定,修改成功

  • 我正在使用SWIG生成一个围绕freetype的C包装。我的目标是为WinRT生成一个带有C接口的freetype DLL,该接口将在Windows Phone 8上运行,然而,生成的C包装似乎依赖于Tcl。由于我不需要Tcl绑定,而且WinRT默认情况下不提供Tcl,我想知道是否可以以某种方式关闭Tcl依赖项。我正在使用Visual Studio 2012编译生成的代码。 我查阅了文档,只找到了

  • 我已经使用CXF2.7.3生成了从wsdl到java的代码,但是在构建程序集时,我得到了“代码太大”的错误。指示其中一个方法已超过Java64KB限制。我很清楚是哪个类,对我来说,这似乎是CXF中的bug。Actully Axis2也这样做,所以我想知道是否有人知道如何解决这个问题。 如何强制代码生成拆分大型生成方法?或者我应该使用一些外部工具吗?

  • 我必须这样做的代码,但在密码我不知道怎么做,它是在java 编写一个完整的Java程序,执行以下操作: 要求用户输入他的姓名和学生ID。 根据以下规则为学生生成一个密码:a.生成的密码是4个数字B。第一个数字(第一个数字)是你的学生ID. c.的第一个数字。第二个数字(TENS)是你的学生ID.的第四和第五个数字的总和;如果总和大于9,那么考虑那些:例如,如果总和等于17,则第二位数字将为7。d、

  • 我正在尝试创建一个创建密码的java程序,无论是所有小写、小写和大写、小写和大写和数字、小写和大写以及数字和标点符号,该程序还必须创建用户选择的密码之一,并且必须根据用户选择的内容生成密码长度。我已经生成了密码选项供用户选择,并提示他选择一个。我现在被困在如何创建上面提到的密码类型上。一个人建议我使用ASCII值,然后将它们转换为文本。我知道如何将它们转换为文本,但它会显示数字、字母和标点符号。有

  • 注: 内容来自官网资料 Java Generated Code 这个页面准确描述 protocol buffer 编译器为任何给定协议定义生成的java代码。proto2和proto3生成的代码之间的任何不同都将被高亮 - 注意在这份文档中描述的是这些生成代码的不同,而不是基本的消息类/接口,后者在两个版本中是相同的。在阅读这份文档之前你应该先阅读 proto2语言指南 和/或 proto3语言指