web前端

位置:IT落伍者 >> web前端 >> 浏览文章

MyEclipse配置WebService


发布日期:2020年06月21日
 
MyEclipse配置WebService

开发环境

JDK+ Eclipse +MyEclipse

概述

本文介绍了使用MyEclipse Web Service来迅速开发和测试一个HelloWorld Web Service其中包括:

介绍了MyEclipse Web Services的基本概念

创建一个MyEclipse Web Services工程

创建一个简单的HelloWorld Web Service

在Web容器中如Tomcat 中部署Web Service

使用Web Services Explorer来测试部署的Web Services

XFire Java SOAP框架概述

MyEclipse Web Services是建立在XFire Java SOAP框架和工具基础上的 XFire是一款开源的Java SOAP框架它拥有一个轻量级的信息处理模块通过STAX来与SOAP信息相结合提供了一个工作在Web Services下的简单API支持POJO和schema开发 XFire支持 Web Services standardsSpring 整合 支持JBI 支持 JAXB XMLBeansJava 和JAXWS并支持HTTP JMS XMPP Inmemory传输协议

创建Web Service工程

在MyEclipse 中引入了一个新的工程类型即Web Service工程该工程扩展了MyEclipse Web Project来支持额外的Web Service配置开发和部署本部分将使用Web Services Project wizard来创建和配置一个新的Web Service Projects Web Service Wizard将完成下列的动作:

创建MyEclipse JEE Web Project

在工程中的webxml文件中配置XFire Servlet

创建XFire servicesxml配置文件

在工程中的构建路径中添加MyEclipseXFire类库

添加一个指定的MyEclipse web project builder到projects文件以便部署servicesxml文件到它合适的位置如: /WEBINF/classes/METAINF/xfire/

运行Web Service Project Wizard

该向导包括三个页面 Page搜集Web Project配置细节 Page搜集XFire配置细节 Page在新建的构建路径中配置XFire类库

执行Web Services Project Wizard

) 选择File>New>Other

) 扩展MyEclipse种类按照JEE工程的种类

) 选择Web Services Project然后点击Next如图所示

Figure: New Project Wizard Launcher

添加Project Name点击Next

Figure: Page Collecting web configuration details

在向导的Page中添加XFire servlet和servicexml文件的配置信息按照默认的值即可

Figure: XFire servlet and servicesxml configuration

在向导的Page中选择类库添加到工程的构建路径中其中XFire Core Library是需要的如果要在工程中开发一个客户端应用 XFire HTTP Client Libraries也是需要的

Figure: Selecting XFire libraries to add to new web service project buildpath

选择Finish完成Web Service工程的创建过程

Figure显示了新创建的HelloWorld Web Service工程的组织结构Web Service 工程和一个标准的MyEclipse Web工程很相似 XFire Web Service配置元素如图红色区域显示:

Figure: Web services artifacts of a new web service project

创建Web ServiceCodefirst Strategy

在这部分将用MyEclipse Web Service Wizard并通过使用Codefirst Strategy来创建一个HelloWorldService示例

执行MyEclipse Web Service Wizard有两种方法来执行MyEclipse Web Service Wizard

方法从MyEclipse perspective toolbar中来执行向导

在打开的Web Service Wizard上的workbench上来选择新Web Service按钮

方法从workbench menubar执行向导

从workbench menubar选择: File>New>Other>MyEclipse>Web Service

Figure: Launching Web Service Wizard

在Page选择HelloWorld 工程并选择Create web service from Java bean

选择Next到Page

Figure: Page of new web service wizard

填写Web Service的名字HelloWorldService

选择Java Source folder或者选择New按钮来新建一个source folder

填写Java package或者通过选择Browse按钮来选择一个已经存在的package也可以选择New按钮来新建一个Java package

注意:对Service接口和Service执行的类的默认值是基于所填入Web Service名字来产生的

选择Next来初始化Web Service的创建过程

Figure: Page of new web service wizard

该向导产生了IHelloWorldService Java接口和HelloWorldServiceImpl Java类并且在servicesxml配置文件中创建了一个﹤SERVICE>实体(如图所示)注意到example(String message)方法在接口类中产生当Web Service部署后作为一个测试操作

Figure: Newly created HelloWorld interface and implementation class

部署Web Service Project

Web Service可以部署在任何MyEclipse支持的JEE应用服务器上该部分将演示如何在Tomcat Web容器上部署HelloWorld工程

部署HelloWorld Web Service Project

Figure显示了如何部署HelloWorld应用

从Server Manager中选择Deployer按钮(step)

在Server Deployments对话框中选择Add to create a new deployment (step)

在New Deployment对话框中选择HelloWorld工程并选择Exploded Archive选项

在New Deployment对话框选择Finish来将HelloWorld在Tomcat 默认的位置中打包为WAR

选择OK完成部署

Figure: Threestep deployment process

新HelloWorld WAR部署将出现在Server Manager视图中Tomcat 节点下

Figure: Servers Manager View depicting deployed HelloWorld web service project

启动Tomcat服务器

使用Web Service Explorer测试Web Service

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

在MyEclipse perspective中选择toolbar button来执行Web Service Explorer

Figure: Web Services Explorer launch button on workbench toolbar

选择WSDL模式(Figure)

在活动面板中键入HelloWorldService WSDL文档的//localhost:/HelloWorld/services/HelloWorldService?WSDLWeb Service Explorer将下载自动产生的WSDL文档该WSDL文档由XFire framework并产生一系列的操作能够调用service

在活动面板中选择example操作并在in域中键入HelloWorld

选择Go按钮来调用在HelloWorldService上的example操作结果出现在Status面板上

Figure: Web Services Explorer testing HelloWorldService

创建Java Test客户端

XFire提供了一个动态的代理框架能够读取WSDL文档和创建潜在的消息服务使Java类来执行在Web Service的行为该部分将为HelloWorld Web Service写一个Java Web Service客户端

增加XFire类库配置

为了使example client能够在HelloWorld工程中运行需要增加XFire HTTP Client类库到工程的构建路径中

在Package Explore视图中右击HelloWorld工程选择Build Path>Add Library

选择MyEclipse Libraries

选择XFire HTTP Client Libraries

Figure: Choosing the XFire HTTP Client Libraries

选择Finish

创建HelloWorldClient类

执行Java类向导来创建HelloWorldClient类

Figure: HelloWorldClient defined in New Java Class Wizard

代码如下:

package orgstephencatws;

import dehausxfire*;

import dehausxfireservice*;

import dehausxfireservicebinding*;

import dehausxfireclient*;

import *;

public class SampleClient {

/**

* @param args

*/

public static void main(String[] args) {

Service srvcModel = new

ObjectServiceFactory()create(IHelloWorldServiceclass);

XFireProxyFactory factory =

new XFireProxyFactory(XFireFactorynewInstance()getXFire());

String helloWorldURL =

//localhost:/HelloWorld/services/HelloWorldService;

try {

IHelloWorldService srvc = (IHelloWorldService)factorycreate(srvcModel

helloWorldURL);

String result = srvcexample(hello world);

Systemoutprint(result);

} catch (MalformedURLException e) {

eprintStackTrace();

}

该段代码定义了创建一个XFire web service proxy的过程该代理支持POJO IHelloWorldService接口

右键点击Run As>Java Application或者Debug As>JavaApplication来运行或调试该程序

               

上一篇:请慎用spring-ClassPathXmlApplicationContext手动加载sprin

下一篇:Spring集成Quartz的XML配置