java WebService简单使用案例

首先,建立一个WebService:

package garfield;

import javax.jws.WebService;
import javax.xml.ws.Endpoint;

@WebService
public class MyJ6WebService {
        public String SayHello(String strName) {
                return "Hello ,"+strName+"!";
        }

        public static void main(String[] args) {
                //发布WebService,注意如果提示:Exception in thread "main" com.sun.xml.internal.ws.server.ServerRtException: Server Runtime Error: java.net.BindException: Address already in use: bind
                //则需要修改一下发布端口
                Endpoint.publish("http://localhost:8030/garfield.MyJ6WebService", new MyJ6WebService());
                System.out.println("WebService was published success !");
        }
}

启动Tomcat,然后运行,系统会输出:WebService was published success !,表示WebService已启动。

可以在浏览器中输入地址:http://localhost:8030/garfield.MyJ6WebService?wsdl

显示WebService信息:

<?xml version="1.0" encoding="UTF-8" ?>
- <!--  Published by JAX-WS RI at http://jax-ws.dev.java.net. RI‘s version is JAX-WS RI 2.2.4-b01.
  -->
- <!--  Generated by JAX-WS RI at http://jax-ws.dev.java.net. RI‘s version is JAX-WS RI 2.2.4-b01.
  -->
- <definitions xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsp="http://www.w3.org/ns/ws-policy" xmlns:wsp1_2="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://garfield/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://garfield/" name="MyJ6WebServiceService">
- <types>
- <xsd:schema>
  <xsd:import namespace="http://garfield/" schemaLocation="http://localhost:8030/garfield.MyJ6WebService?xsd=1" />
  </xsd:schema>
  </types>
- <message name="SayHello">
  <part name="parameters" element="tns:SayHello" />
  </message>
+ <message name="SayHelloResponse">
  <part name="parameters" element="tns:SayHelloResponse" />
  </message>
- <portType name="MyJ6WebService">
- <operation name="SayHello">
  <input wsam:Action="http://garfield/MyJ6WebService/SayHelloRequest" message="tns:SayHello" />
  <output wsam:Action="http://garfield/MyJ6WebService/SayHelloResponse" message="tns:SayHelloResponse" />
  </operation>
  </portType>
- <binding name="MyJ6WebServicePortBinding" type="tns:MyJ6WebService">
  <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
- <operation name="SayHello">
  <soap:operation soapAction="" />
- <input>
  <soap:body use="literal" />
  </input>
- <output>
  <soap:body use="literal" />
  </output>
  </operation>
  </binding>
- <service name="MyJ6WebServiceService">
- <port name="MyJ6WebServicePort" binding="tns:MyJ6WebServicePortBinding">
  <soap:address location="http://localhost:8030/garfield.MyJ6WebService" />
  </port>
  </service>
  </definitions>

在WebService启动的状态下,在命令行中输入:

E:\Temp>wsimport -p garfield.garfieldj6wsclient -keep http://localhost:8030/garf
ield.MyJ6WebService?wsdl
parsing WSDL...

generating code...

compiling code...

E:\Temp>

注意,一定要对应你发布的WebService信息!

然后系统会自动生成相关的接口文件,如下:

新建Java工程,将输出文件引入,然后建立测试类:

package xxh;

import garfield.garfieldj6wsclient.*;

public class WebClient {
        /**
         * @param args
         */
        public static void main(String[] args) {
             //创建一个客户端服务对象
            MyJ6WebService myJ6WS = new MyJ6WebServiceService().getMyJ6WebServicePort();
            //调用服务方法,并得到方法返回值
            String strTest = myJ6WS.sayHello("Garfield");
            //打印服务的返回值
            System.out.println(strTest);
        }
}

在WebService运行情况下,运行客户端测试程序,输出:

Hello ,Garfield!

时间: 2024-10-13 23:30:40

java WebService简单使用案例的相关文章

主题:Java WebService 简单实例

链接地址:主题:Java WebService 简单实例    http://www.iteye.com/topic/1135747 前言:朋友们开始以下教程前,请先看第五大点的注意事项,以避免不必要的重复操作. 一.准备工作(以下为本实例使用工具) 1.MyEclipse10.7.1 2.JDK 1.6.0_22 二.创建服务端 1.创建[Web Service Project],命名为[TheService].   2.创建[Class]类,命名为[ServiceHello],位于[com.

Java WebService 简单实例[转载]

[注意,本文转载自  http://hyan.iteye.com/    ] 一.准备工作(以下为本实例使用工具) 1.MyEclipse10.7.1 2.JDK 1.6.0_22 二.创建服务端 1.创建[Web Service Project],命名为[TheService]. 2.创建[Class]类,命名为[ServiceHello],位于[com.hyan.service]包下. 3.编写供客户端调用的方法,即编译方法代码. 4.进行编译 说明:编译失败的话,请将该项目引用的jdk设置

Java WebService 简单实例

前言:开始以下教程前,请先看第五大点的注意事项,以避免不必要的重复操作. 一.准备工作(以下为本实例使用工具) 1.MyEclipse10.7.1 2.JDK 1.6.0_22 二.创建服务端 1.创建[Web Service Project],命名为[TheService].   2.创建[Class]类,命名为[ServiceHello],位于[com.hyan.service]包下.   3.编写供客户端调用的方法,即编译方法代码. 4.进行编译 说明:编译失败的话,请将该项目引用的jdk

Java WebService简单实例

一.准备工作(以下为本实例使用工具) 1.MyEclipse10.7.1 2.JDK 1.6.0_22 二.创建服务端 1.创建[Web Service Project],命名为[TheService].   2.创建[Class]类,命名为[ServiceHello],位于[com.hyan.service]包下.   3.编写供客户端调用的方法,即编译方法代码. 4.进行编译 说明:编译失败的话,请将该项目引用的jdk设置为1.6.0_17版本或更高版本   5.测试结果 测试地址:http

Java对象简单实用(计算器案例)

Java对象简单实用(计算器案例) 对 Java中的对象与属性,方法的使用,简单写了个案例 1 import java.util.Scanner; 2 class Calculste 3 { 4 int a; //定义两个整数 5 int b; 6 String option; //定义接收操作符的字符串 7 public void count(){ 8 9 //对操作符进行判断 10 switch(option){ 11 case "+": 12 System.out.println

[Java] JavaMail 简单案例

网易提供了免费的 SMTP / POP3服务,可用于编程测试,详情见 什么是POP3.SMTP和IMAP? 只需要拥有一个网易邮箱账号,并开启该账号的 SMTP / POP3 功能,便可以通过程序发送邮件到 SMTP 服务器,并有 SMTP 服务器发送到收件人邮箱:或者通过 POP3 获取网易邮箱上本人的邮件. 下面是一个简单的案例,利用 JavaMail 发送邮件到网易的 SMTP 服务器,随后便可以在收件人信箱找到程序发送邮件. package mail; import java.util.

Java WebService 开发简单实例

Web Service 是一种新的web应用程序分支,他们是自包含.自描述.模块化的应用,可以发布.定位.通过web调用.Web Service可以执行从简单的请求到复杂商务处理的任何功能.一旦部署以后,其他Web Service应用程序可以发现并调用它部署的服务. 实际上,WebService的主要目标是跨平台的可互操作性.为了达到这一目标,WebService完全基于XML(可扩展标记语言). XSD(XMLSchema)等独立于平台.独立于软件供应商的标准,是创建可互操作的.分布式应用程序

Java利用webservice创建接口案例源码

环境要求: JDK1.7,并配置Java的环境变量 BaseDao  接口: /** * 要使得成为一个可供访问的接口,必须添加:@WebService * */ @WebServicepublic interface BaseDao {    //添加一个加法的接口        @WebResult(name="addddddre")    public int add(@WebParam(name="add01")int a,@WebParam(name=&q

webservice简单了解

一:WebService的功能是什么? WebService是一种跨编程语言和跨操作系统平台的远程调用技术 所谓远程调用,就是一台计算机a上的一个程序可以调用到另外一台计算机b上的一个对象的方法,譬如,银联提供给商场的pos刷卡系统(采用交互提问的方式来加深大家对此技术的理解). 远程调用技术有什么用呢?商场的POS机转账调用的转账方法的代码是在银行服务器上,还是在商场的pos机上呢? 什么情况下可能用到远程调用技术呢?例如,amazon,天气预报系统,淘宝网,校内网,百度等把自己的系统服务以w