web service

XFire Java SOAP 框架介绍
XFire Java SOAP框架概述
MyEclipse Web Services是建立在XFire Java SOAP框架和工具基础上的, XFire是一款开源的Java SOAP框架。它拥有一个轻量级的信息处理模块,通过STAX来与SOAP信息相结合。提供了一个工作在Web Services下的简单API,支持POJO和schema开发. XFire支持 Web Services standards,Spring 整合, 支持JBI , 支持 JAXB ,XMLBeans,Java 5 和JAX-WS.并支持HTTP, JMS, XMPP, In-memory传输协议.


一. 创建Web Service工程

在MyEclipse 5.0中引入了一个新的工程类型即Web Service工程,该工程扩展了MyEclipse Web Project来支持额外的Web Service配置,开发和部署.本部分将使用Web Services Project wizard来创建和配置一个新的Web Service Projects Web Service Wizard将完成下列的动作:
创建MyEclipse J2EE Web Project
在工程中的web.xml文件中配置XFire Servlet
创建XFire services.xml配置文件
在工程中的构建路径中添加MyEclipse-XFire类库
添加一个指定的MyEclipse web project builder到.projects文件,以便部署services.xml文件到它合适的位置.如: <webroot>/WEB-INF/classes/META-INF/xfire/

运行Web Service Project Wizard
该向导包括三个页面, Page-1搜集Web Project配置细节, Page-2搜集XFire配置细节, Page-3在新建的构建路径中配置XFire类库
1. 执行Web Services Project Wizard.
1). 选择File>New>Other
2). 扩展MyEclipse种类按照J2EE工程的种类
3). 选择Web Services Project然后点击Next,如图所示

http://tech.it168.com/j/e/2006-10-28/200610281432707_3.shtml 详细:


在.web.xml 里边添加
<servlet>
<display-name>Apache-Axis Servlet</display-name>
<servlet-name>AxisServlet</servlet-name>
<servlet-class>org.apache.axis.transport.http.AxisServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/servlet/AxisServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>*.jws</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
第一个是制定AxisServlet的类是必须的,余下的是配置servlet mapping的,可根据需要进行修改,比如不需要对 *.jws做mapping的时候就可以去掉相应的部分。完成了上边的必须配置我们就有两种方式来发布了:

1、动态发布,直接把Calculator 的java文件复制到webroot下,把Calculator.java更名为Calculator.jws,然后通过http://localhost:8080/Calculator.jws 访问就可以 ,通过 http://localhost:8080/Calculator.jws?wsdl 就可以看到相应的wsdl。这种方式调试起来比较麻烦,而且我再测试的时候也不能带package的信息,而且一些高级的配置无法实施,不建议采用。
Web服务(Web Service)是一种基于Web的应用程序接口,允许不同的应用程序通过网络进行通信和交互。 ### 特征 Web服务通常具有以下特征: - 完好的封装性:使用者仅看到Web Service提供的功能列表,不能看到其实现细节。 - 松散耦合:只要服务的接口保持不变,就不影响使用者,而且客户端和服务端的生命周期不相互影响,同时需要一种适合Internet环境的消息交换协议。 - 使用标准协议规范:Web Service架构使用开放的标准协议进行描述、传输和交换。 - 高度可互操作性:可以跨越平台、语言进行调用。 - 高度可集成能力:高度可互操作性所带来的高度可集成能力,使得Web Service可用于集成异构的软件系统。 - 动态性:可以自动发现服务并进行调用 [^1]。 ### 与Web API的关系 Web API由Web Service演变而来,所有Web Service都是API,但并非所有API都是Web Service。两者都有利于信息的传输,但Web API比Web Service更具灵活性 [^2]。 ### 使用方法示例 以在“添加Web引用”界面添加服务为例:在“添加Web引用”界面,“URL”输入本地wsdl文件并点击右侧箭头;在身份验证弹出框输入账号口令,即可看到对方的Web service服务名是SI_03AA6_SNZYXT2ERP_JHDGBService,其函数/方法为SI_03AA6_SNZYXT2ERP_JHDGB()。把该服务命名为“ws1”,然后点击【添加引用】 [^3]。 ### 代码示例 以下是一个简单的Java代码示例,展示如何调用Web服务: ```java public class TestHelloWorld { public static void main(String[] args) throws Exception { HelloWorld_PortType helloWorld_portType = new HelloWorldServiceLocator().getHelloWorld(); String result = helloWorld_portType.sayHelloWorldFrom("Charles"); System.out.println(result); } } ``` 该代码通过`HelloWorldServiceLocator`获取`HelloWorld_PortType`实例,调用`sayHelloWorldFrom`方法并输出结果 [^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值