今天研究了下webservice 终于OK了,所以把它写到自己的博客来,因为网上说的都很复杂
    而在这里,我会很简单的说明,一看就懂

    首先在进行webservice  一定要下载包

    到 
http://ws.Apache.org/axis/网站下载Axis安装包.

      在本文章中,我已经把要用的包上传了,大家可以直接在这下就行了

  然后就写wsdd 文件,也是最重要的.

首先我在网上看到的例子是这样的,大家可以参考下

先写deploy.wsdd

<deployment xmlns="
http://xml.apache.org/axis/wsdd/" xmlns:java="" target="_blank">
http://xml.apache.org/axis/wsdd/providers/java">

  <service name="HelloWorld" provider="java:RPC">

    <parameter name="className" value="HelloWorld"/>

    <parameter name="allowedMethods" value="sayHello"/>

  </service>

</deployment>

在DOS下转换目录到%TOMCAT_HOME%\webapps\axis\WEB-INF,命令:

java -cp %AXISCLASSPATH% org.apache.axis.client.AdminClient deploy.wsdd

你会发现目录下多了一个server-config.wsdd文件,这就是AXIS的配置文件,以后所有的服务发布描述都会在里面找到

其实说了这多,就是为了得到一个server-config.wsdd 而我就把一个成功的server-config.wsdd 拿来改

.最后发现可以功能.如果大家为了快,也可以这样做

以下是server-config.wsdd  的代码 这个文件,是放到 WEB-INF 目录下 和web.xml一起

<?xml version="1.0" encoding="UTF-8"?>

<deployment xmlns="
http://xml.apache.org/axis/wsdd/" xmlns:java="
http://xml.apache.org/axis/wsdd/providers/java">

<globalConfiguration>

  <parameter name="sendMultiRefs" value="true"/>

  <parameter name="disablePrettyXML" value="true"/>

  <parameter name="dotNetSoapEncFix" value="true"/>

  <parameter name="enableNamespacePrefixOptimization" value="false"/>

  <parameter name="sendXMLDeclaration" value="true"/>

  <parameter name="sendXsiTypes" value="true"/>

  <parameter name="attachments.implementation" value="org.apache.axis.attachments.AttachmentsImpl"/>

</globalConfiguration>

<handler type="java:org.apache.axis.handlers.http.URLMapper" name="URLMapper"/>  

  <service name="Login.jws" provider="java:RPC">   

     <parameter name="className" value="com.liuzm.Login"/>// 你要改的就是这.这写上要调用的类.就可以

     <parameter name="scope" value="request"/>

     <parameter name="allowedMethods" value="*"/> // 这*代表所有的方法 

     <messageReceiver class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>

  </service>   

  <transport name="http">   

     <requestFlow>   

        <handler type="URLMapper"/>   

     </requestFlow>   

  </transport>   

</deployment>

类的代码com.liuzm.Login:

public class Login {

public String Add(){

        return "liuzm";

    }

}

在这我只写了一个方法

就这样 完成了

然后在web.xml 加上

<servlet>

        <servlet-name>AxisServlet</servlet-name>

        <servlet-class>org.apache.axis.transport.http.AxisServlet</servlet-class>

    </servlet>

    <servlet-mapping>

        <servlet-name>AxisServlet</servlet-name>

        <url-pattern>/services/*</url-pattern>

    </servlet-mapping>

这样差不多一个webservice 完成了

然后在IE上测试下


http://localhost:8080/mywebservices/services

如果在IE 上看到 login  Add 方法 就说明成功了

也可以写个测试类调用服务器

String url = "
http://localhost:8080/mywebservices/services/Login.jws";//            Service service = new Service();

            Call call;

            try {

                call = (Call) service.createCall();

                call.setTargetEndpointAddress(new java.net.URL(url) );

                call.setOperationName("Add" );// 这是要调用的方法

                 String res = (String) call.invoke( new Object[] {} );

                System.out.println(res);

            } catch (ServiceException e) {

                // TODO Auto-generated catch block

                e.printStackTrace();

            }

        

    }

输出结果 liuzm 也就是Add 的方法.大家可以参考下

备注一下:
如果net与你交互,把http://localhost:8080/mywebservices/services/Login.jws?wsdl 这个地址给它
他那边会自动解析的,你也可以直接输入:
http://localhost:8080/mywebservices/services/Login.jws?wsdl
测试下,如果成功就会显示xml格式的文件
如果完成了这一步,那么祝贺你成功了

Axis安装包

 
点击下载此文件


今天研究了下webservice 终于OK了的更多相关文章

  1. SQLSERVER聚集索引与非聚集索引的再次研究(下)

    SQLSERVER聚集索引与非聚集索引的再次研究(下) 上篇主要说了聚集索引和简单介绍了一下非聚集索引,相信大家一定对聚集索引和非聚集索引开始有一点了解了. 这篇文章只是作为参考,里面的观点不一定正确 ...

  2. 刚刚研究了下ipv6,尝试配置内网VPS的IPv6地址

    刚刚研究了下ipv6,尝试配置内网VPS的IPv6地址是3台设备,分别是客户机Windows系统.核心交换机.PPPoE拨号的路由器 第一步:在PPPoE拨号的路由器上面查看ppp0拨号的地址 ifc ...

  3. 在这个插件帮助下,终于用上免费的Https协议外链的图床了

    前天,强哥发了一篇推文,讲述了应该如何免费且快速的生成自己的博客网站: 期间也有提到一点就是我们在写博客的时候,因为使用的是Markdown格式的文件,而如果想要​Markdown格式的文件在图片上传 ...

  4. 传统模式下WebService与WebAPI的相同与不同

    1.WebService是利用HTTP管道实现了RPC的一种规范形式,放弃了对HTTP原生特征与语义的完备支持:而WebAPI是要保留HTTP原生特征与语义的同时实现RPC,但WebAPI的实现风格可 ...

  5. C语言下WebService的使用方式

    用gSoap工具:      1.在dos环境中到gSoap工具对应的目录gsoap_2.8.18\gsoap-2.8\gsoap\bin\win32路径下,执行wsdl2h -c -o *.h ht ...

  6. .net 下webservice 的WebMethod的属性

    WebMethod有6个属性: .Description .EnableSession .MessageName .TransactionOption .CacheDuration .BufferRe ...

  7. MS06-040漏洞研究(下)【转载】

    课程简介 经过前两次的分析,我们已经对Netapi32.dll文件中所包含的漏洞成功地实现了利用.在系统未打补丁之前,这确实是一个非常严重的漏洞,那么打了补丁之后,这个动态链接库是不是就安全了呢?答案 ...

  8. 研究windows下SVN备份及还原恢复方案

    windows下SVN备份方案 备份策略 svn备份一般采用三种方式: 1)svnadmin dump  2)svnadmin hotcopy  3)svnsync.  注意,svn备份不宜采用普通的 ...

  9. php下webservice使用总结

    基于thinkphp3.2的 1.修改php配置 php.ini extension=php_soap.dll soap.wsdl_cache_enabled=0 2.soap有两种模式 wsdl和 ...

随机推荐

  1. vijos 1067 Warcraft III 守望者的烦恼 矩阵

    题目链接 我们可以很容易的推出dp的式子, dp[i] = sigma(j : 1 to k) dp[i-j]. 但是n太大了, 没有办法直接算, 所以我们构造一个矩阵, 然后快速幂就好了. 就像这样 ...

  2. Myeclipse普通工程转为Maven工程

    在SVN导出的Maven项目,或以前不是用Maven管理的项目想要转换成Maven项目,但Myeclipse中右键Configure 找不到(eclipse可行)Convert to maven pr ...

  3. Kotlin Vertx

    Kotlin & Vertx Kotlin 是一门好语言,值得大家了解一下. Vertx 是一个好框架,也值得大家了解一下. Kotlin 写过js,也写过一点点go,主力一直是java.用了 ...

  4. 异构数据源海量数据交换工具-Taobao DataX 下载和使用

    DataX介绍 DataX是一个在异构的数据库/文件系统之间高速交换数据的工具,实现了在任意的数据处理系统(RDBMS/Hdfs/Local filesystem)之间的数据交换. 目前成熟的数据导入 ...

  5. Java pipeline

    http://cullenprogramming.homelinux.com/PIPEuserguide.htm http://www.cise.ufl.edu/research/ParallelPa ...

  6. Delphi 的接口机制——接口操作的编译器实现过程(1)

    学习COM编程技术也快有半个月了,这期间看了很多资料和别人的程序源码,也尝试了用delphi.C++.C#编写COM程序,个人感觉Delphi是最好上手的.C++的模版生成的代码太过复杂繁琐,大量使用 ...

  7. kafka学习(一)-背景及架构设计

    概念和术语 消息,全称为Message,是指在生产者.服务端和消费者之间传输数据. 消息代理:全称为Message Broker,通俗来讲就是指该MQ的服务端或者说服务器. 消息生产者:全称为Mess ...

  8. objective-c 中代码块(blocks)

    在ios4之后,引入了代码块的特性,在gcd中会经常的用到,所以决定好好的看看代码块文档,把这块总结一下.从头开始讲解代码块. 1.声明和使用代码块 一般用^操作符声明一个块变量,并作为块的开始符.而 ...

  9. 获取第下一个兄弟元素 屏蔽浏览器的差异(nextElementsibling)

    //获取element下一个兄弟元素 function getNextElementSibling(element){ //能力检测 判断是否支持nextElementSibling if(eleme ...

  10. 使用 NuGet 管理项目库

    使用 NuGet 管理项目库 Phil Haack 本文转载自:http://msdn.microsoft.com/zh-cn/magazine/hh547106.aspx 无论多么努力,Micros ...