Java中WebService实例

Java中WebService实例WebServices是由企业发布的完成其特定商务需求的在线应用服务,其他公司或应用软件能够通过Internet来访问并使用这项在线服务。WebService的关键技术和规则:1.XML:描述数据的标准方法.2.SOAP:表示信息交换的协议(简单对象访问协议).3.WSDL:Web服务描述语言.4.UDDI:通用描述、发现与集成,他是一种独立于平台,基于XML语言的用于在互联网上描述商务的协议。一、利用JDKweb服务api实现,这里使用基于SOAPmessage的WebService:1.首先创

大家好,又见面了,我是你们的朋友全栈君。

Web Services是由企业发布的完成其特定商务需求的在线应用服务,其他公司或应用软件能够通过Internet来访问并使用这项在线服务。

Web Service的关键技术和规则:

1.XML:描述数据的标准方法.

2.SOAP:表示信息交换的协议(简单对象访问协议).

3.WSDL:Web服务描述语言.

4.UDDI:通用描述、发现与集成,他是一种独立于平台,基于XML语言的用于在互联网上描述商务的协议。

 

一、利用JDK web服务api实现,这里使用基于SOAP message的Web Service:

1.首先创建一个Web Services项目,作为Web services Endpoint.

2.创建一个HelloService.java类

3.使用apt编译HelloService.java(例如: apt -d bin(bin存放编译后的文件目录) scr/com/yjpeng/hello/HelloService.java)后,会生成jaxws目录。

4.使用java com.yjpeng.hello.HelloService执行HelloService.java文件,在浏览器中输入http://localhost:8080/helloService?wsdl出现如下图

Java中WebService实例

5.使用wsimport命令生成客户端:wsimport -p com.yjpeng.webservice -keep http://localhost:8080/helloService?wsdl 这时会在当前目录中生成如下文件:

Java中WebService实例

6.编写好客户端文件HelloClient.java

运行结果在控制台输出 hello,你好  证明利用JDK web服务API实现web service成功!

 

 

二、使用xfire框架,我这里使用的是MyEclipse集成的xfire进行测试,利用xfire开发WebService可以有三种方法:

a.一种是从JavaBean中生成。

b.一种是从wsdl文件中生成。

c.一种是自己建立webservice。

 

具体实现步骤如下:

1.用Myeclipse建立webService工程(注意:Web Service&J2EE Details中的Framework选XFire),目录结构如下:

Java中WebService实例

2.创建IHello.java接口

3.创建IHelloImpl.java实现IHello.java接口

4.修改Service.xml文件,加入以下代码

 <service>
 <!– 为该Service起一个名字 –>
  <name>HelloService</name>
  <!– service的接口类 –>
  <serviceClass>
  com.yjpeng.hello.IHello
  </serviceClass>
  <!– service的接口实现类–>
  <implementationClass>
  com.yjpeng.hello.IHelloImpl
  </implementationClass>
  <!– wsdl的样式–>
  <style>wrapped</style>
  <use>literal</use>
  <scope>application</scope>
 </service>

5.把该Web Service项目部署到tomcat里面启动tomcat在浏览器地址栏输入http://localhost:8080/TestWebServices/services/Hello?wsdl 出现如下图

Java中WebService实例

6.然后在展开HelloService后面的wsdl可以看到Java中WebService实例

7.创建一个客户端HelloClient.java类

运行HelloClient.java类可以输出 你好            1.

三、使用axis1.4开发webservice方法

首先下载axis1.4包和tomcat服务器,并将解压后的axis1.4包下面的webapps下的axis目录复制到tomcat服务器的webapps文件夹中。axis支持三种Web Service的部署和开发,分别为:

a.Dynamic Invocation Interface(DII)

b.Stubs 方式

c.Dynamic Proxy方式

1.编写DII(Dynamic Invocation Interface)方式Web Service

a.编写服务程序HelloClient.java

b.将HelloClient.java文件拷贝到axis_home下,重命名为HelloClient.jws.

c.访问链接http://localhost:8080/axis/HelloClient.jws?wsdl页面显示axis自动生成的wsdl文件

d.编写访问服务的客户端TestHelloClient.java需要导入相应的axis.jar包,在下载的axis的WEB-INF/lib/目录下。

运行TestHelloClient.java在控制台输出hell,张三,测试成功.

2.编写Dynamci Proxy方式访问服务

a.编写部署服务端程序,用上边DII方式使用的HelloClient.java

b.编写代理接口HelloClientInterface.java需要扩展java.rmi.Remote类

c.编写访问服务的客户端TestHelloClient.java

运行TestHelloClient.java在控制台输出hell,张三,测试成功.

 

四、使用axis2开发webservice

研究中….

 

五、在java web项目中开放一个webservice接口实例

1.引入需要的jar包
Java中WebService实例 

2.创建一个接口类IAddNumbers.java

3.创建一个AddNumberImpl.java实现IAddnumbers.java接口类

4.在WEN-INF目录下创建一个sun-jaxws.xml文件

5.在web.xml文件中增加

6.部署web项目 启动相应部署服务器。访问http://localhost:8080/TestJaxWebService/addNumberImpl?wsdl 这样每次启动web服务器就开放了一个web service的接口。

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/162628.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • yii报错400

    yii报错400当你在使用yii2.0过程中程序出现400的错误可以在控制器内加入public$enableCsrfValidation=false;即可解决

    2022年6月3日
    36
  • 架构学习——业务架构图

    架构学习——业务架构图一、什么是业务架构图?业务架构图,顾名思义就是对于产品的业务架构进行梳理和整合,它表达的是业务系统之间的关系,帮助开发人员梳理业务结构。二、为什么要画业务架构图?业务架构图帮我们更好的从宏观的角度整体性的审查我们的产品帮助用户和需求方从业务角度出发更好的了解我们的产品功能有了业务架构图我们可以更好的对目前已有的功能和以后计划开发的功能进行抽象、设计、开发三、如何画业务架构图?站在巨人的肩膀上我们要学会站在巨人的肩膀上学习,先看看一些比较牛的公司他们是怎么画的业务架构图,借鉴他人的画法和思

    2022年10月7日
    2
  • L2-029 特立独行的幸福

    L2-029 特立独行的幸福原题链接对一个十进制数的各位数字做一次平方和,称作一次迭代。如果一个十进制数能通过若干次迭代得到 1,就称该数为幸福数。1 是一个幸福数。此外,例如 19 经过 1 次迭代得到 82,2 次迭代后得到 68,3 次迭代后得到 100,最后得到 1。则 19 就是幸福数。显然,在一个幸福数迭代到 1 的过程中经过的数字都是幸福数,它们的幸福是依附于初始数字的。例如 82、68、100 的幸福是依附于 19 的。而一个特立独行的幸福数,是在一个有限的区间内不依附于任何其它数字的;其独立性就是依附于它的的幸福数

    2022年8月9日
    5
  • 舆情分析系统技术解决方案及作用论文_网络舆情解决方案

    舆情分析系统技术解决方案及作用论文_网络舆情解决方案网络舆情分析工作的开展最先需要做好的就是网络舆情的搜集工作,由于互联网信息内容庞杂多样,舆情信息搜集起来困难,所以要进行舆情分析更是难上加难。但若舆情信息收集的不全,就极易导致舆情分析不正确。那么,到底舆情分析工作要怎么做呢?针对此问题,提供了以下舆情分析系统技术解决方案,供各位参考。在了解方案的前,先来说说为什么要采用舆情分析系统进行监测分析。一、使用舆情分析系统进行监测分析的意义网络信息化时代,信息数据量庞大,若一味采用人工进行舆情信息分析,容易出现收集的舆情不全、舆情分析不正确等问题。而通过利用

    2022年9月20日
    4
  • arp内网攻击_外网和内网怎么设置

    arp内网攻击_外网和内网怎么设置arpspoof是一款进行arp欺骗的工具,攻击者通过毒化受害者arp缓存,将网关mac替换为攻击者mac,然后攻击者可截获受害者发送和收到的数据包,可获取受害者账户、密码等相关敏感信息。本次测试是在局域网内进行,利用kali截获centos相关数据攻击者ip:192.168.157.129受害者ip:192.168.157.2501、在kali中开启端口转发功能:echo…

    2022年10月7日
    3
  • 软件测试经典面试题(小题汇总)[通俗易懂]

    整理收集一些大家的题,自己来作答,回答不妥或者不全的还请大家指正网络(一)简单描述下TCP协议TCP:传输控制协议,是传输层通信协议。它有面向连接、可靠、字节流传输等特点TCP建立连接时,需要三次握手协议TCP三次握手的过程如下:客户端发送SYN保温给服务端,进入SYN_SEND(SEQ=X)状态服务端收到SYN保温,回应一个SYN(SEQ=Y)ACK(ACK=X+1)报文,进入…

    2022年4月13日
    35

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号