MyEclipse+Xfire开发Webservice

      今天有个朋友问到webserivce的基本用法,结合互联网上的文章,我完善了一下:分为xFire和CXF两部分来演示。以前是第一部分的实施过程。请大家测试。对于CXF的,我在下一篇文章中继续介绍。

=====================================================================

 MyEclipse Web Services是建立在XFire JavaSOAP框架和工具基础上的, XFire是一款开源的JavaSOAP框架。本例将给各位演示一个入门级Web Services的编写过程。
一、环境配置:MyEclipse8.0+JDK1.6
二、创建Web Service Project
   1)在MyEclipse中选择File—>New—>Other,选择Web Service Project

MyEclipse+Xfire开发Webservice


2)项目名称:WebServiceServer,Framework:XFire,其他选项默认
3)Next,这一步保持默认值
4)Project Library选择,选择XFire 1.2   Core Libraries

5)Finish完成项目创建。

6)完成以上5步后,查看WebRoot/WEB-INF/web.xml
      这里指明了当遇到/services/*请求时,将选用XFireConfigurableServlet来处理

<?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>

    注意把xalan.jar加到lib下
三、创建Web Service Code
1)通过File—>New—>Other—>Web Services—>Web Service wizard创建JAVA CODE

2)选择通过JAVA CLASS创建Web Service


 

MyEclipse+Xfire开发Webservice

 

 3)创建HelloWebService.java,通过New创建com.service package,向导将为工程自动创建对应的接口类与实现类

4)修改HelloWebServiceImpl.java

package org.csdn.net;
public class HelloWebServiceImpl implements IHelloWebService {
	
	 public String example(String message) {
	        return getAuthor()+","+message;
	     }
	     private String getAuthor(){
	        return "meteorWJ";
	     }

	
}

四、部署并测试WebSericeServer(Tomcat6.0)
1)部署WebServiceServer 

2)启动服务器

3)测试WebService
MyEclipse提供了一个Web Service Explorer来测试Web Service
 

 

 

4)选择WSDL模式(在SOAP浏览器的右侧)

 

5)在Explorer中选择WSDL Main,在右边的URL中输入
http://localhost:8089/WebServiceServer/services/HelloWebService?WSDL,单击"Go"
其中8080是服务器端口号,我用的是tomcat,tomcat用的是8080.services在web.xml中指定的
    若在Status中显示成功打开WSDL文件则测试成功

也可以在浏览器中输入
   http://localhost:8089/WebServiceServer/services

 

 五、创建WebService客户端
经过以上几步,我们已经成功发布了一个WebService,现在需要创建一个客户端来调用该服务
   1)创建Java Project:WebServiceClient(这是project名称,不是选项,当初看成选项,郁闷半天也没有找到此选项)
   2)引入MyEclipse Libraries
   右键WebServiceClient—>Build Path—>Add Libraries

  选择XFire 1.2 HTTP Client Libraries
3)创建HelloWebService.java
在src目录下创建com.client.HelloWebService.java
package com.client;

import java.net.URL;
import org.codehaus.xfire.client.Client;

public class HelloWebService {
   public static void main(String[] args) throws Exception
   {
       Client client = new Client(new URL("http://localhost:9089/WebServiceServer/services/HelloWebService?wsdl"));
       Object[] results = client.invoke("example", new Object[] {"hello"});
       System.out.println((String) results[0]);
   }
}
   4)在确认服务器启动的情况下,运行HelloWebService.java
右键点击Run As>Java Application,在控制台中看到输出结果。

 

 ==========================================================

 此例并非个人原创,欢迎大家板砖。

 

你可能感兴趣的:(java,Web,webservice,MyEclipse,servlet)