`
毛驴追飞机
  • 浏览: 16742 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

利用MyEclipse快速创建webService服务

阅读更多

创建web项目



 

添加webservice支持,使用xfire



 添加支持以后,MyEclipse自动配置web.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee   http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
 <!-- start 添加webservice支持以后,Myeclipse自动配置XFire -->
  <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>
  <!-- end 添加webservice支持以后,Myeclipse自动配置XFire -->
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>

 创建接口

package com.hx.webservice;

public interface IWebServiceTest {
	public String getStr();
}

 创建实现类

package com.hx.webservice.imp;

import com.hx.webservice.IWebServiceTest;

public class WebServiceTest implements IWebServiceTest{

	public String getStr() {
		// TODO Auto-generated method stub
		return "webservice  调用成功!";
	}

}

 

配置service文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xfire.codehaus.org/config/1.0">
<service>  
        <!-- webserviceq名称,调用时需要指定这个 -->  
        <name>testService</name>  
        <!-- 自己服务的地址 -->  
        <namespace>http://localhost:8080/WebService</namespace>  
        <!-- 接口类 -->  
        <serviceClass>com.hx.webservice.IWebServiceTest</serviceClass>  
        <!-- 实现类 -->  
        <implementationClass>com.hx.webservice.imp.WebServiceTest</implementationClass>  
    </service>  
</beans>

 启动Tomcat,地址栏输入:http://localhost:8080/WebService/services/testService?wsdl



 部署成功。

创建client端,访问webservice服务:

package com.hx.client;

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;

import com.hx.webservice.IWebServiceTest;


public class Client {
	public static void main(String agrs[]){
		//这里是创建一个service,需要传入一个接口类,因为我们后面必须调用相应的接口方法
		Service srcModel = new ObjectServiceFactory().create(IWebServiceTest.class);
		//代理工厂,这里是为了后面创建相应的接口类
		XFireProxyFactory factory = new XFireProxyFactory(XFireFactory.newInstance().getXFire());
		//webservice地址,不需要加wsdl
		String testServiceUrl = "http://localhost:8080/WebService/services/testService";
		
		//利用工厂返回相应的接口类
		IWebServiceTest iTest = null;
		try {
			iTest = (IWebServiceTest)factory.create(srcModel,testServiceUrl);
			String str = iTest.getStr();
			System.out.println(str);
		} catch (MalformedURLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

 出现错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/httpclient/methods/RequestEntity
	at java.lang.Class.getDeclaredConstructors0(Native Method)
	at java.lang.Class.privateGetDeclaredConstructors(Class.java:2404)
	at java.lang.Class.getConstructor0(Class.java:2714)
	at java.lang.Class.getConstructor(Class.java:1674)
	at org.codehaus.xfire.transport.http.HttpChannel.sendViaClient(HttpChannel.java:108)
	at org.codehaus.xfire.transport.http.HttpChannel.send(HttpChannel.java:48)
	at org.codehaus.xfire.handler.OutMessageSender.invoke(OutMessageSender.java:26)
	at org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:131)
	at org.codehaus.xfire.client.Invocation.invoke(Invocation.java:79)
	at org.codehaus.xfire.client.Invocation.invoke(Invocation.java:114)
	at org.codehaus.xfire.client.Client.invoke(Client.java:336)
	at org.codehaus.xfire.client.XFireProxy.handleRequest(XFireProxy.java:77)
	at org.codehaus.xfire.client.XFireProxy.invoke(XFireProxy.java:57)
	at $Proxy0.getStr(Unknown Source)
	at com.hx.client.Client.main(Client.java:26)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.httpclient.methods.RequestEntity
	at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
	... 15 more

 添加包commons-httpclient-3.0.jar,继续运行:



 成功,几分钟搞定。说到底任何技术都是方便我们使用。更多的精力还是要花在业务上面。

  • 大小: 60.4 KB
  • 大小: 58.5 KB
  • 大小: 189.2 KB
  • 大小: 7.6 KB
分享到:
评论

相关推荐

    利用myeclipse开发的webservice

    利用MyEclipse的工具,你可以将接口和实现类转换为Web服务。这通常涉及到在服务类上应用JAX-WS(Java API for XML Web Services)的注解,如`@WebService`和`@SOAPBinding`,然后通过右键菜单选择"发布为Web服务"。...

    MyEclipse开发WebService教程

    总结来说,MyEclipse开发Web Service的过程包括创建Web Service工程、编写服务类、设置服务注解、部署服务、创建客户端项目、生成客户端代理类以及编写测试类进行调用。这个过程涵盖了Java Web Service的基本原理,...

    myeclipse根据wsdl文件生成webservice服务端

    本文将深入探讨如何利用MyEclipse实现这一过程,并结合相关源码和工具进行详细讲解。 首先,我们需要理解WSDL文件。WSDL是一种XML格式的规范,用于描述Web服务及其接口。它定义了服务的位置、服务的操作以及如何...

    myeclipse 开发webservice 方法

    这篇博文将深入探讨如何利用MyEclipse来创建和调试Web服务。 一、Web服务基础 Web服务是一种基于互联网的软件应用,它能够通过标准的协议(如HTTP)进行通信,使得不同的系统间能够交换数据。最常见的Web服务标准是...

    myeclipse制作webservice接口

    本教程将介绍如何利用myeclipse和Axis2工具,自动生成WSDD(Web Service Deployment Descriptor)文件,以图形化方式快速构建WebService接口,确保内容的原创性。 【知识点详解】 1. WebService基础: WebService...

    myeclipse快速开发axis2webservice

    本教程将详细介绍如何利用MyEclipse集成开发环境快速开发基于Axis2的Web服务。 首先,我们需要了解什么是MyEclipse。MyEclipse是一款强大的Java EE集成开发环境,它在Eclipse的基础上增加了许多企业级开发所需的...

    java快速搭建webservice

    总结,Java 快速搭建 WebService 的步骤主要包括:安装环境、创建项目、编写服务类、生成 WSDL、部署服务和测试。关键在于理解并应用 XML、SOAP、WSDL 和 UDDI 等核心技术,以及利用像 MyEclipse 这样的 IDE 提高...

    Myeclipse的一个webservice插件

    在Myeclipse中集成Axis2插件,开发者可以利用其强大的功能来快速构建、测试和发布基于SOAP(简单对象访问协议)的Web服务,同时也支持RESTful风格的服务。 【标签解析】 "Myeclipse的插件"标签表明了这个插件是专门...

    MyEclipse下开发WebService(Axis).pdf

    在MyEclipse中使用Apache Axis开发Web服务,结合强大的IDE功能和Axis的API,可以高效地创建、部署和测试Web服务。了解这个过程对于具备Java Web应用开发基础的开发者来说至关重要,它能帮助开发者快速进入Web服务...

    eclipse,myeclipse开发webservice

    这些文档和教程旨在帮助开发者理解如何利用这些工具在Eclipse和MyEclipse中创建、部署和测试Web服务。 【标签】"eclipse java myeclipse webservice"强调了与Java相关的Web服务开发。Eclipse和MyEclipse都是Java...

    MyEclipse下XFire开发Webservice实例.doc

    通过这个过程,开发者可以在MyEclipse中快速创建和测试XFire支持的Web服务。这种集成使得开发、调试和测试Web服务变得更加直观和高效,同时也充分利用了XFire的特性,如轻量级、高性能和与Spring的集成。

    webservice 小例子 myeclipse 部署即可用

    以下将详细介绍如何利用MyEclipse和XFire来创建和部署Web服务: 1. **创建Web服务项目** 在MyEclipse中,选择"File" -&gt; "New" -&gt; "Other",然后在弹出的对话框中找到"MyEclipse" -&gt; "Web" -&gt; "Web Service",点击...

    MyEclipse配置WebService(组图).

    MyEclipse中的Web服务功能是基于XFire Java SOAP框架构建的,XFire是一个开源的Java SOAP框架,具备轻量级信息处理能力,利用STAX进行SOAP信息交互。XFire不仅支持Web服务标准,还与Spring框架集成,兼容JAXB、...

    MyEclipse下XFire开发Webservice实例

    - 使用MyEclipse的Web服务向导创建JAVA代码,选择通过JAVA CLASS创建Web服务。 - 自动创建一个名为`HelloWebService`的接口和实现类`HelloWebServiceImpl`,在实现类中定义服务方法`example`。 4. **配置与部署...

    用MyEclipse6.0开发XFire WebService应用

    【标题】"用MyEclipse6.0开发XFire WebService应用"主要涉及的是在Java Web开发环境中,利用MyEclipse6.0这个强大的集成开发环境(IDE)来创建和消费基于XFire技术的Web服务。XFire是Apache CXF项目的一部分,是一个...

    myeclipse搭建webservice实例讲解.pdf

    XFire则是一个轻量级的、高性能的Web服务框架,它允许开发者快速地创建和消费Web服务。 首先,我们需要创建一个新的Web Service Project工程。在这个例子中,我们将其命名为"MyWebService"。关键在于选择项目类型时...

Global site tag (gtag.js) - Google Analytics