`
gongjiayun
  • 浏览: 159706 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

WebService 简单应用

阅读更多
一.编写服务器端

1.在myeclipes中新建一个webservive项目mywebservice

2.配置web.xml
   
<?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>

3.新建接口类Helloworldservice
	package com.web.service;

	public interface Helloworldservice {
		public String sayHellow(String str);
	}

4.新建实现类Helloworldservice
	package com.web.impl;

	import com.web.service.Helloworldservice;

	public class Helloworldimpl implements Helloworldservice {

		public String sayHellow(String str) {
			return "您好,"+str+"!";
		}

	}

5.配置services.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xfire.codehaus.org/config/1.0">
<service>
<!--服务名称-->
<name>hellow</name>
<namespace>gjy</namespace>
<!--服务接口-->
<serviceClass>com.gjy.inter.Helloworldservice</serviceClass>
<!--服务实现类-->
<implementationClass>com.gjy.impl.Helloworldimpl</implementationClass>
</service>
</beans>


至此服务器端编写完毕

在tomcat中部署mywebservice,启动tomcat,在浏览器中输入http://localhost:8088/mywebservice/services/hellow?wsdl,回车,出现以下内容,证明服务器端编写成功
  <?xml version="1.0" encoding="UTF-8" ?> 
- <wsdl:definitions targetNamespace="gjy" xmlns:soapenc12="http://www.w3.org/2003/05/soap-encoding" xmlns:tns="gjy" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap11="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc11="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
- <wsdl:types>
- <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="gjy">
- <xsd:element name="sayHellow">
- <xsd:complexType>
- <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="1" name="in0" nillable="true" type="xsd:string" /> 
  </xsd:sequence>
  </xsd:complexType>
  </xsd:element>
- <xsd:element name="sayHellowResponse">
- <xsd:complexType>
- <xsd:sequence>
  <xsd:element maxOccurs="1" minOccurs="1" name="out" nillable="true" type="xsd:string" /> 
  </xsd:sequence>
  </xsd:complexType>
  </xsd:element>
  </xsd:schema>
  </wsdl:types>
- <wsdl:message name="sayHellowRequest">
  <wsdl:part name="parameters" element="tns:sayHellow" /> 
  </wsdl:message>
- <wsdl:message name="sayHellowResponse">
  <wsdl:part name="parameters" element="tns:sayHellowResponse" /> 
  </wsdl:message>
- <wsdl:portType name="hellowPortType">
- <wsdl:operation name="sayHellow">
  <wsdl:input name="sayHellowRequest" message="tns:sayHellowRequest" /> 
  <wsdl:output name="sayHellowResponse" message="tns:sayHellowResponse" /> 
  </wsdl:operation>
  </wsdl:portType>
- <wsdl:binding name="hellowHttpBinding" type="tns:hellowPortType">
  <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> 
- <wsdl:operation name="sayHellow">
  <wsdlsoap:operation soapAction="" /> 
- <wsdl:input name="sayHellowRequest">
  <wsdlsoap:body use="literal" /> 
  </wsdl:input>
- <wsdl:output name="sayHellowResponse">
  <wsdlsoap:body use="literal" /> 
  </wsdl:output>
  </wsdl:operation>
  </wsdl:binding>
- <wsdl:service name="hellow">
- <wsdl:port name="hellowHttpPort" binding="tns:hellowHttpBinding">
  <wsdlsoap:address location="http://localhost:8088/mywebservice/services/hellow" /> 
  </wsdl:port>
  </wsdl:service>
  </wsdl:definitions>


二.客户端编写

1.新建一个普通的java工程WebwerviceClient,引入XFire的jar包


2.编写客户端代码

package com.web.client;

import java.net.MalformedURLException;
import java.net.URL;

import org.codehaus.xfire.client.Client;

public class HelloworldClient {
	public static void main(String args[]){
		 try {
			   Client client=new Client(new URL("http://localhost:8088/mywebservice/services/hellow?wsdl"));
			   Object[] result=client.invoke("sayHellow", new Object[]{"龚先生"});
			   System.out.println(result[0]);
			  } catch (MalformedURLException e) {
			   e.printStackTrace();
			  } catch (Exception e) {
			   e.printStackTrace();
			}

	}
}


启动服务端,运行客户端,出现结果: 您好,龚先生!

至此一个简单的webservice应用开发完毕.


分享到:
评论

相关推荐

    白色简洁风格的韩国个人网页源码下载.zip

    白色简洁风格的韩国个人网页源码下载.zip

    倒车雷达51单片机超声波测距(含仿真)

    基于AT89C51的超声波测距

    白色宽屏风格的室内设计公司整站网站源码下载.zip

    白色宽屏风格的室内设计公司整站网站源码下载.zip

    白色简洁风格的眼睛设计制作企业网站模板.zip

    白色简洁风格的眼睛设计制作企业网站模板.zip

    (178721838)基于Mysql和OpenCV的人脸识别系统(源码和部署教程).zip

    基于Mysql和OpenCV的人脸识别系统(源码和部署教程).zip。内容来源于网络分享,如有侵权请联系我删除。另外如果没有积分的同学需要下载,请私信我。

    “预防夏季中暑”知识讲座教案课件.pptx

    “预防夏季中暑”知识讲座教案课件

    Java毕业设计-基于springboot+vue的在线教育平台源码+文档+视频教程

    Java毕业设计-基于springboot+vue的在线教育平台源码+文档+视频教程 系统说明: 3.3 角色功能分析 3.3.1 管理员用例分析 数据统计:管理员可以查看系统的数据统计信息,如用户数量、订单数量等。 轮播管理:管理员可以管理系统首页的轮播图内容,包括添加、编辑、删除等操作。 课程管理:管理员可以管理系统中的课程信息,包括审核待审批的课程、编辑课程内容等。 分类管理:管理员可以管理课程的分类信息,包括添加、编辑、删除分类。 讲师管理:管理员可以管理系统中的讲师信息,包括审核讲师入驻申请、编辑讲师信息等。 学员管理:管理员可以管理系统中的学员信息,包括查看学员列表、禁用学员账号等。 用户管理:管理员可以管理系统中的用户信息,包括查看用户列表、禁用用户账号等。 订单管理:管理员可以管理系统中的订单信息,包括查看订单列表、处理订单退款等操作。如下图3-1所示: 图3-1 管理员用例图 管理员用例表描述了管理员在黑板擦在线教育系统中的常见操作,包括登录系统、数据统计、轮播管理、课程审核和分类管理等。管理员首先通过输入用户名和密码登录系统,然后可以查看系统的数

    用QT写的一个UDP数据发送测试小程序

    采用QT写了一个基于UDP协议的数据发送小程序,可以发送自定义帧结构数据和记录的数据文件,使用方便。

    其实这就是历年摘出来的

    其实这就是历年摘出来的

    疫苗预约系统:数据库设计与数据安全性

    在传统信息管理方法中,我们面临诸多挑战:处理信息耗时、数据错误率高、数据修正困难以及数据检索不便。为了解决这些问题,引入计算机化的疫苗预约系统软件显得尤为重要,这样的系统不仅能够规范信息管理流程,实现管理工作的系统化和程序化,还能帮助管理人员准确、迅速地处理信息。 在开发工具的选择上,我们经过慎重考虑,最终选择了Eclipse作为开发工具,以及Mysql作为数据库工具,以便于实现疫苗预约系统的各项功能。系统的核心功能包括管理员对用户的管理以及新闻公告的发布。 疫苗预约系统是一款基于软件开发技术构建的应用系统,它在信息处理方面表现出色,无论是数据的快速添加、维护、统计还是查询,都能轻松应对,极大地提高了信息处理的速度和准确性。

    基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)

    基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目),本资源中的源码都是经过本地编译过可运行的,评审分达到98分,资源项目的难度比较适中,内容都是经过助教老师审定过的能够满足学习、毕业设计、期末大作业和课程设计使用需求,如果有需要的话可以放心下载使用。 基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)基于python

    白色宽屏风格的肉制品销售企业网站模板.zip

    白色宽屏风格的肉制品销售企业网站模板.zip

    白色简洁风格的房产交易中心企业网站源码下载.zip

    白色简洁风格的房产交易中心企业网站源码下载.zip

    白色简洁风格的高级西餐牛排模板下载.zip

    白色简洁风格的高级西餐牛排模板下载.zip

    漂亮的收款打赏要饭网HTML页面源码.zip

    漂亮的收款打赏要饭网HTML页面源码,一款简洁而美观的HTML页面,专为个人收款和接受他人打赏而设计

    白色简洁风格的网上眼镜商城网站源码下载.zip

    白色简洁风格的网上眼镜商城网站源码下载.zip

    白色卡通精致的机器人企业网站模板下载.zip

    白色卡通精致的机器人企业网站模板下载.zip

    知攻善防-应急响应靶机-web2.z22

    知攻善防-应急响应靶机-web2.z22

Global site tag (gtag.js) - Google Analytics