使用Eclipse的话还要装web tool platform很多东西,用MyEclipse一步到位,创建WebService很方便。
MyEclipse中有自己的Tomcat,要把事先在电脑上独立安装的Tomcat关掉。
1.File->New->Web Service Project
Project Name取为webservice,Framework使用XFire
下一步使用默认配置即可。
勾上HTTP Client Library
选择Yse即可。MyEclipse8.6使用的JDK最高版本是5,而我本机上已经装到6了
2.在src下添加一个包org.demo.webservice,再添加一个接口IAdd,和一个类Add
1
2
3
4
5
6
|
package
org.demo.webservice;
public
interface
IAdd {
public
abstract
int
add(
int
num1,
int
num2);
}
|
1
2
3
4
5
6
7
8
|
package
org.demo.webservice;
public
class
Add
implements
IAdd{
public
int
add(
int
num1,
int
num2){
return
num1+num2;
}
}
|
3.配置webservice包下面的services.xml。
1
2
3
4
5
6
7
8
9
|
<?
xml
version
=
"1.0"
encoding
=
"UTF-8"
?>
<
beans
xmlns
=
"http://xfire.codehaus.org/config/1.0"
>
<
service
>
<
name
>add</
name
>
<!-- 服务名称 -->
<
namespace
>org.demo.webservice/add</
namespace
>
<!-- 指定命名空间 -->
<
serviceClass
>org.demo.webservice.IAdd</
serviceClass
>
<!-- 指定服务的接口 -->
<
implementationClass
>org.demo.webservice.Add</
implementationClass
>
<!-- 指定接口的实现类 -->
</
service
>
</
beans
>
|
在WebRoot/WEB-INF下有一个web.xml,已经自动加好了XFireServlet
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
<?
xml
version
=
"1.0"
encoding
=
"UTF-8"
?>
<
web-app
xmlns
=
"http://java.sun.com/xml/ns/javaee"
xmlns:xsi
=
"http://www.w3.org/2001/XMLSchema-instance"
version
=
"2.5"
xsi:schemaLocation
=
"http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
>
<
servlet
>
<
servlet-name
>XFireServlet</
servlet-name
>
<
servlet-class
>org.codehaus.xfire.transport.http.XFireConfigurableServlet</
servlet-class
>
<
load-on-startup
>0</
load-on-startup
>
</
servlet
>
<
servlet-mapping
>
<
servlet-name
>XFireServlet</
servlet-name
>
<
url-pattern
>/services/*</
url-pattern
>
</
servlet-mapping
>
<
welcome-file-list
>
<
welcome-file
>index.jsp</
welcome-file
>
</
welcome-file-list
>
</
web-app
>
|
4.在MyEclipse中运行程序Run As MyEclipse Server Application,地址输入:应用程序地址+“/services/"+服务名称+”?wsdl“
出现上图说明WebService发布成功。
当然在MyEclipse中可以很方便地创建客户端来调用WebService,不过接下来我们要在Eclipse中使用XFire来 创建客户端调用WebService
1.为Eclipse安装XFire插件
从Help->Install New SoftWare进入,地址输入http://xfire.codehaus.org/Eclipse+Plugin
2.新建Java Project名曰xfire
3.右键项目名New->other
Package的名称要小写。output directory和package的含义看生成的项目结构便知:
把service和webservice拖到src下,形成
4.右键项目属性,勾上这四项
5.src下创建包Invoke,包下创建类Tyr
1
2
3
4
5
6
7
8
9
10
11
12
|
package
Invoke;
import
service.*;
public
class
Tyr {
public
static
void
main(String[] args) {
addClient client=
new
addClient();
addPortType service=client.getaddHttpPort();
System.out.println(service.add(
4
,
8
));
}
}
|
6.运行
选择Tyr类,Console中可看到结果为12