怎样新建一个Java的Web Service

Python018

怎样新建一个Java的Web Service,第1张

 服务器端的操作:

1. 创建一个WebService项目。(不需要是Java EE 5.0)

2. 创建包与接口以及实现类。

3. 加上WebService的包

4. 编辑配置文件

5. 部署后在浏览器中测试:http localhost:8080/testWebService/services, 格式是固定的,中间换成项目名即可!

至此,服务器端已完成!以下做的是客户端的调用。

1. 创建客户端项目

2.将服务器端的包复制到客户端(注意,实现类要去掉)

3. 加入WebService包

4. 在Next时, 注意将红框中的勾打上。

6. 在包中创建一个类测试调用外部的WebService是否成功!(注意取地址时应加上webservice的名称)

package com.yenange.service

import java.net.MalformedURLException

import org.codehaus.xfire.XFireFactory

import org.codehaus.xfire.client.XFireProxyFactory

import org.codehaus.xfire.service.Service

import org.codehaus.xfire.service.binding.ObjectServiceFactory

public class TestWS {

public static void main(String[] args) {

//1.取得WebService的路径

String url="http /localhost:8080/testWebService/services/testWebService"

//2.创建服务

Service service=new ObjectServiceFactory().create(IMyWebService.class)

//3.创建服务代理

XFireProxyFactory factory=new XFireProxyFactory(XFireFactory.newInstance().getXFire())

//4.调用外部的WebService, 建立对象. 再测试其方法

try {

IMyWebService obj=(IMyWebService)factory.create(service,url)

System.out.println(obj.HelloWorld("leaf"))

} catch (MalformedURLException e) {

e.printStackTrace()

}

}

}

至此,java的WebService调用完成!

1、 编写一个Java Class,里面写一个静态函数sayHello(String name),这个sayHello就是我们要编写的用来做接口的webservice函数。(注:一定要写成静态函数,Axis只会把静态函数转换成WebService)

程序代码(HelloBeauty.java)如下:

public class HelloBeauty

{

public static void main(String[] args)

{

}

public static String sayHello(String name)

{

return name + ",You are a beauty girl . "

}

}

2、 下载axis-1_1.zip,解压,并部署成Web站点。

Axis-1.1目录结构如下:

Axis-1.1

-----doc

-----lib

-----samples

-----webapps

-----xmls

-----LICENSE

-----README

-----release-notes.html

在web服务器上新增一虚拟目录(这里暂把虚拟目录名设为Axis,可以根据情况自行更改),虚拟目录的根节点设置到Axis-1.1目录。

3、 部署

把我们前面编写的HelloBeauty.java拷贝到Axis-1.1/webapps 目录下,并且把文件后缀改成jws,即HelloBeauty.jws.

4、 访问

打开IE,输入http://Web服务器地址/axis/HelloBeauty.jws 会出现经过Axis处理后的页面,页面内容如下。

There is a Web Service here

Click to see the WSDL

看到上面的页面后即代表你的WebService部署成功了。

基于AXIS的web service: 1 比如要建一个Server.java类的web service public class Server { public String printInfo(String name){ return "Hello,"+name} } 2 把Server.java改为Server.Jws放到 …\Tomcat 5.5\webapps\axis中,重启服务器 3 访问 4 在cmd中输入 cd D:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\axis\WEB-INF 输入命令:Java -Djava.ext.dirs=lib org.apache.axis.wsdl.WSDL2Java 5 找到…\Tomcat 5.5\webapps\axis\WEB-INF下生成的localhost文件夹复制到工程中 6 建一个Client端的类进行测试: public class Client { public static void main(String arg[]) throws ServiceException, RemoteException{ ServerService ss=new ServerServiceLocator()Server s=ss.getServer()System.out.println("............"+s.printInfo("shiyou"))} }蓝屏