wsimport 使用方法

本文主要介绍wsimport的简单使用方法。帮助大家在webserviceclient开发过程中生成接口代码:

打开java JDK文件夹我们会看到wsimport工具,这是由sun为我们免费提供的的。功能强大,会给我们工作带来极大的方便。

创建服务端代码:

接口

package com.huawei.idp.composer.service;

import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService; @WebService
public interface MyService
{
@WebMethod
public int add(@WebParam(name="a")int a, @WebParam(name="b")int b);
}

实现类

package com.huawei.idp.composer.service.impl;

import javax.jws.WebService;

import com.huawei.idp.composer.service.MyService;

@WebService(endpointInterface="com.huawei.idp.composer.service.MyService")
public class MyServiceimpl implements MyService
{ @Override
public int add(int a, int b)
{
return a + b;
} }

调用wsimport工具。打开dos窗体。输入命令:

wsimport -d D:\test -keep -verbose  http://127.0.0.1:8080/hello?wsdl

这里简介一下參数:

  1. -d 表示输出的文件夹。文件夹必须事先存在,否则导出失败。
  2. -keep 表示导出webservice的class文件时是否也导出源码java文件。
  3. -verbose verbose表示具体信息。

我们打开D:\test会发现生成了例如以下文件:

我们在Eclipse中又一次建立一个project,将这个文件夹复制到src文件夹下



然后開始编写client代码

package com.huawei.idp.composer.client;

import com.huawei.idp.composer.service.impl.MyService;
import com.huawei.idp.composer.service.impl.MyServiceimplService; public class Test
{
public static void main(String[] args)
{
MyServiceimplService myserviceImpl = new MyServiceimplService();
MyService myService = myserviceImpl.getMyServiceimplPort();
System.out.println(myService.add(1, 2));
}
} [调用结果](http://img.blog.csdn.net/20150822175745450)`` 这里值得注意的是,生成的MyServiceimplService类并非服务端实现类,而是继承了Service的类而且提供了方法:

/**

*

* @return

* returns MyService

*/

@WebEndpoint(name = “MyServiceimplPort”)

public MyService getMyServiceimplPort() {

return super.getPort(new QName(“http://impl.service.composer.idp.huawei.com/“, “MyServiceimplPort”), MyService.class);

}

“`

这里直接帮我们生成了一个Qname訪问程序。既然怎样,我们就不用自己写qname了。直接拿来用測试岂不更好?

到此为止,一个简单的webservice就实现了,假设对大家有帮助,请点赞假设有不足之处,敬请指正。

wsimport 使用方法具体解释的更多相关文章

  1. Js apply 方法 具体解释

    Js apply方法具体解释 我在一開始看到javascript的函数apply和call时,很的模糊,看也看不懂,近期在网上看到一些文章对apply方法和call的一些演示样例,总算是看的有点眉目了 ...

  2. Format类及其子类功能和使用方法具体解释

    Format类及其子类功能和使用方法具体解释 1.   Format类结构: ·        java.lang.Object ·        java.text.Format ·         ...

  3. hbase-0.94安装方法具体解释

    先决条件:     1)java环境,须要安装java1.6以上版本号     2)hadoop环境.因为HBase架构是基于其它文件存储系统的,因此在分布式模式下安装Hadoop是必须的,可是,假设 ...

  4. ZooKeeper安装方法具体解释

    ZooKeeper安装方式分为两种,一种为单机模式.一个为集群模式,集群模式须要事先正确配置hadoop集群,安装方法參考hadoop-1.2.1安装方法具体解释 单机模式安装: 1.上传并解压zoo ...

  5. 模式识别 - libsvm的函数调用方法 具体解释

    libsvm的函数调用方法 具体解释 本文地址: http://blog.csdn.net/caroline_wendy/article/details/26261173 须要载入(load)SVM的 ...

  6. const 使用方法具体解释

    const使用方法具体解释 面向对象是C++的重要特性.  可是c++在c的基础上新添加的几点优化也是非常耀眼的 就const直接能够代替c中的#define 下面几点非常重要,学不好后果也也非常严重 ...

  7. hive-0.11.0安装方法具体解释

    先决条件:     1)java环境,须要安装java1.6以上版本号     2)hadoop环境,Hadoop-1.2.1的安装方法參考hadoop-1.2.1安装方法具体解释 本文採用的hado ...

  8. 第44篇-为native方法设置解释执行入口

    对于Java中的native方法来说,实际上调用的是C/C++实现的本地函数,由于可能会在Java解释执行过程中调用native方法,或在本地函数的实现过程中调用Java方法,所以当两者相互调用时,必 ...

  9. 第48篇-native方法调用解释执行的Java方法

    举一个native方法调用解释执行的Java方法的实例,如下: public class TestJNI { static { System.load("/media/mazhi/sourc ...

随机推荐

  1. Jquery学习总结(4)——高效Web开发的10个jQuery代码片段

    在过去的几年中,jQuery一直是使用最为广泛的JavaScript脚本库.今天我们将为各位Web开发者提供10个最实用的jQuery代码片段,有需要的开发者可以保存起来. 1.检测Internet ...

  2. 史上最全: svn与git的对照(二):svn与git的相关概念

    如图1是svnserver端数据的文件夹结构 以下是gitserver端的文件夹结构 纵观svn和git服务端的文件夹结构我们非常easy发现 1.有些目录还是蛮像的.甚至是一样的比方说svn中的co ...

  3. Java线程演示样例 - 继承Thread类和实现Runnable接口

    进程(Process)和线程(Thread)是程序执行的两个基本单元. Java并发编程很多其它的是和线程相关. 进程 进程是一个独立的执行单元,可将其视为一个程序或应用.然而,一个程序内部同事还包括 ...

  4. hdu 4628 Pieces(状态压缩+记忆化搜索)

    Pieces Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) Total S ...

  5. python微框架Bottle(http)

    环境: win7系统 Python2.7 一 背景和概述 眼下项目中须要加入一个激活码功能,打算单独弄一个httpserver来写. 由于之前的游戏中已经有了一套完整的激活码生成工具和验证httpse ...

  6. How to Hide Zip Files Inside a Picture Without any Extra Software in Windows

    http://www.howtogeek.com/119365/how-to-hide-zip-files-inside-a-picture-without-any-extra-software/ c ...

  7. linux 下的文件搜索、可执行文件搜索

    1. whereis 与 which 速度快,只是模糊查询,例如查询 $ whereis mysql,则会将mysql, mysql.ini, mysql*所在的目录都找出来: whereis 查看的 ...

  8. 从SQL注入谈数据访问层

    什么是SQL注入? SQL注入就是应用程序的开发人员未预期的吧SQL语句传入到应用程序的过程,如果直接使用用户输入的值来构建SQL语句的应用程序是很可能会受到SQL注入攻击的.特别是基于浏览器的网络应 ...

  9. Microsoft Edge 针对 Web 开发人员更新日志

    Windows 10 build16215 之 Edge 新功能 新功能: 增加了对高级事件监听器的支持(“once”和“passive”)via 增加了对CSS object-fit/object- ...

  10. 【算法】第二类斯特林数Stirling

    第二类Stirling数实际上是集合的一个拆分,表示将n个不同的元素拆分成m个集合的方案数,记为 或者 . 第二类Stirling数的推导和第一类Stirling数类似,可以从定义出发考虑第n+1个元 ...