Axis提供两种发布方式:
1.即时发布(Instant deployment)
2.定制发布(cutstom deployment)
即时发布是一种非常简单的web service发布方式, 但是限制太多, 因此 在实际开发中 定制发布 才是首选..
3.即时发布JWS ( java web service):
即时发布,提供了一种非常简单的发布形式,发布者只要有java源代码.也就是.java文件,然后把其后缀名改成.jws(也就是Java Web Service的缩写)拷贝到%TOMCAT_HOME%\webapps\axis 目录中,即完成了所有的发布工作.axis的编译引擎会处理所有的事情.
下面是一段代码示例:
public class HelloWroldJWS {
public String test(String a ,String b){
System.out.println("my first web service jws 即使发布!");
System.out.println("a="+a+",b="+b);
return a+b;
}
}
把HelloWorldJWS.java文件改成 HelloWorldJWS.jws文件,然后拷贝到%TOMCAT_HOME%\webapps\axis\目录中,启动tomcat服务.
然后访问:http://localhost:9999/axis/HelloWorldJWS.jws
就能看到click to see the WSDL这个超链接,就说明发布成功.
接下来就是写Client代码了..
import java.rmi.RemoteException;
import javax.xml.namespace.QName;
import javax.xml.rpc.ServiceException;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
/***
* Client Code;
* web service 实例;
* @author 周海涛;
*/
public class ClientDemo {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Service service=new Service();
String url="http://localhost:9999/axis/HelloWroldJWS.jws";
try {
Call call=(Call) service.createCall();
call.setTargetEndpointAddress(url);
call.setOperationName(new QName(url,"test"));
try {
String result=(String)call.invoke(new Object[]{"ZhouHaiTao","I LOVE Peng Xiao Ting"});
System.out.println(result);
} catch (RemoteException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (ServiceException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
控制台输出结果:
ZhouHaiTaoI LOVE Peng Xiao Ting.
my first web service jws 即使发布!
a=ZhouHaiTao,b=I LOVE Peng Xiao Ting.
注意:假如你现在手里只有.class 或者一个 jar包,jws就不能在满足你的需求了,最要命的就是即时发布不支持带包的类,这点AXIS 的用户手册上面也写得很明白.
分享到:
相关推荐
即时发布是指在开发环境中直接将 Web Service 部署到服务器上的过程。即时发布使得开发者可以快速地部署和测试 Web Service。 2.2.2 定制发布(WSDD) 定制发布是指根据具体的需求和环境来定制 Web Service 的部署...
web service在第一次启动时出现启动缓慢的问题,通常是指在运行或访问web service时遇到的启动延迟现象。这种问题可能会在不同的web service应用中出现,尤其是在首次连接或部署新服务时更为常见。web service是一种...
1. **交互式调用**:开发者可以通过输入XML消息或者直接通过图形用户界面(GUI)调用Web Service,实时查看返回结果,这种即时反馈对于调试和测试极为方便。 2. **WSDL导入**:支持直接导入Web Service的WSDL文件,...
总结来说,这个项目为初学者提供了一个学习Web Service、XML和HTTP协议的应用实例,同时也展示了如何通过这些技术实现简单的即时通讯功能。尽管可能在功能和设计上与实际的QQ存在差距,但它对于理解网络通信和Web ...
**Ajax与Web Service在重构网上书店中的应用** Ajax(Asynchronous JavaScript and XML)是一种在无需刷新整个网页的情况下,能够更新部分网页的技术。它通过在后台与服务器进行少量数据交换,使网页实现异步更新,...
- **即时发布 (JWS)**:适用于快速测试,但限制较多。 - **定制发布**:更灵活,适合实际项目开发。 - **示例**:以下是一个简单的 JWS 方式的服务端和客户端示例。 **服务端**: ```java // HelloWorldjws.java...
总的来说,这些Web Service接口在商业和贸易领域扮演着重要角色,提供即时的数据更新,帮助企业和个人做出明智的决策。开发者可以通过集成这些接口,构建出各种财务分析工具、投资顾问应用或市场监控系统。然而,...
基于J2EE的Web Service分布式应用研究涉及的技术领域非常广泛,从文档中提取的知识点包含了J2EE技术、Web Service技术、分布式系统设计、服务架构、以及异步与同步服务模式等多个方面。 1. J2EE技术:J2EE(Java 2 ...
4. **动态Web**:使用Ajax等技术实现网页内容的即时更新,无需刷新整个页面。 5. **开放API**:提供应用程序接口(API),允许第三方开发者构建基于该平台的服务和应用。 #### 二、Web 2.0中的典型案例:Flickr ...
**Ajax与Web Service在重构网上书店中的应用** Ajax(Asynchronous JavaScript and XML)是一种在无需刷新整个网页的情况下,能够更新部分网页的技术。它通过在后台与服务器进行少量数据交换,使网页实现异步更新,...
这个系统主要利用了Ajax、Web Service和ASP三种核心技术,构建出一个交互性强、响应速度快且易于扩展的网络平台。 Ajax(Asynchronous JavaScript and XML)是前端开发中的一个重要技术,它允许网页在不刷新整个...
这个“XFire Web service所有包”显然包含了XFire与Web服务相关的所有库和开发资源,使得开发者能够将XFire的功能扩展到网络服务上,实现更灵活的数据交互和远程调用。 XFire的核心功能包括: 1. **服务器发现**:...
bottle-service, 从ServiceWorker缓存恢复的即时web应用程序 瓶服务从ServiceWorker缓存恢复的即时web应用程序 现场演示 - 请使用 Chrome 或者 Opera 桌面即时应用演示 - TodoMVC在页面重新加载,托管在免费的Heroku...
### WAS Web Service概述 IBM WebSphere Application Server (WAS) 是IBM WebSphere 软件平台的基础部分,同时也是构建服务导向架构(Service Oriented Architecture, SOA)的关键组成部分。它提供了一个一流的Java 2...
在Android平台上,实现即时通知通常会借助Google的云消息推送服务(Google Cloud Messaging,简称GCM),但在iOS系统中,对应的则是Apple Push Notification service(APNs)。然而,这里提到的"android apns"可能是...
例如,在社交网站上,用户可以看到他们的QQ好友是否在线,从而决定是即时聊天还是发送离线消息。在论坛或博客中,可以显示作者的在线状态,增加用户间的互动。还可以用于游戏平台,显示队友或对手的在线情况,提高...