WebService核心文件【server-config.wsdd】详解及调用示例

作者:玛莎拉蒂-小贱人

一、准备工作

导入需要的jar包:

二、配置web.xml

在web工程的web.xml中添加如下配置:

  1. <servlet>
  2. <servlet-name>AxisServlet</servlet-name>
  3. <servlet-class>org.apache.axis.transport.http.AxisServlet</servlet-class>
  4. <load-on-startup>15</load-on-startup>
  5. </servlet>
  6. <servlet-mapping>
  7. <servlet-name>AxisServlet</servlet-name>
  8. <url-pattern>/services/*</url-pattern>
  9. </servlet-mapping>

三、配置server-config.wsdd文件

在WEB-INF下添加WebService核心文件server-config.wsdd:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <deployment xmlns="http://xml.apache.org/axis/wsdd/"
  3. xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
  4. <globalConfiguration>
  5. <!-- 变量设定 -->
  6. <parameter name="sendMultiRefs" value="true" />
  7. <parameter name="disablePrettyXML" value="true" />
  8. <parameter name="adminPassword" value="admin" />
  9. <parameter name="attachments.Directory"
  10. value="D:\myproject\calileo\xxx\WebContent\WEB-INF\attachments" />
  11. <parameter name="dotNetSoapEncFix" value="true" />
  12. <parameter name="enableNamespacePrefixOptimization" value="true" />
  13. <parameter name="sendXMLDeclaration" value="true" />
  14. <parameter name="attachments.implementation"
  15. value="org.apache.axis.attachments.AttachmentsImpl" />
  16. <parameter name="sendXsiTypes" value="true" />
  17. <requestFlow>
  18. <handler type="java:org.apache.axis.handlers.JWSHandler">
  19. <parameter name="scope" value="session" />
  20. </handler>
  21. <handler type="java:org.apache.axis.handlers.JWSHandler">
  22. <parameter name="scope" value="request" />
  23. <parameter name="extension" value=".jwr" />
  24. </handler>
  25. </requestFlow>
  26. </globalConfiguration>
  27. <handler name="LocalResponder"
  28. type="java:org.apache.axis.transport.local.LocalResponder" />
  29. <handler name="URLMapper" type="java:org.apache.axis.handlers.http.URLMapper" />
  30. <handler name="Authenticate"
  31. type="java:org.apache.axis.handlers.SimpleAuthenticationHandler" />
  32. <!-- 核心重点:服务发布,name:表示发布的service名 -->
  33. <service name="SjrkkService" provider="java:RPC">
  34. <!-- 发布的service接口类 -->
  35. <parameter name="className" value="com.xxx.ws.SjrkkService" />
  36. </service>
  37. <transport name="http">
  38. <requestFlow>
  39. <handler type="URLMapper" />
  40. <handler type="java:org.apache.axis.handlers.http.HTTPAuthHandler" />
  41. </requestFlow>
  42. <parameter name="qs:list"
  43. value="org.apache.axis.transport.http.QSListHandler" />
  44. <parameter name="qs:wsdl"
  45. value="org.apache.axis.transport.http.QSWSDLHandler" />
  46. <parameter name="qs.list"
  47. value="org.apache.axis.transport.http.QSListHandler" />
  48. <parameter name="qs.method"
  49. value="org.apache.axis.transport.http.QSMethodHandler" />
  50. <parameter name="qs:method"
  51. value="org.apache.axis.transport.http.QSMethodHandler" />
  52. <parameter name="qs.wsdl"
  53. value="org.apache.axis.transport.http.QSWSDLHandler" />
  54. </transport>
  55. <transport name="local">
  56. <responseFlow>
  57. <handler type="LocalResponder" />
  58. </responseFlow>
  59. </transport>
  60. </deployment>

四、测试WSDL

在浏览器输入:http://localhost:8080/xxx/services/SjrkkService?wsdl      //xxx和server-config.wsdd文件中的xxx一致,访问结果如下:

五、调WebService

  1. /**
  2. * 调用webservice的方法.
  3. * @param url wsdl链接
  4. * @param method 调用的接口
  5. * @param idCard 传入的参数
  6. * @return
  7. * @throws Exception
  8. */
  9. private String getWebServiceResult( String url, String method, String idCard) throws Exception{
  10. String rtnXml = null;
  11. try {
  12. String endpoint = url;
  13. Service service = new Service();
  14. Call call = (Call) service.createCall();
  15. call.setTargetEndpointAddress(new java.net.URL(endpoint));
  16. call.setOperationName(method);
  17. rtnXml = (String) call.invoke(new Object[]{idCard});
  18. } catch (Exception e) {
  19. e.printStackTrace();
  20. }
  21. return rtnXml;
  22. }

WebService核心文件【web-config.wsdd】调用操作的更多相关文章

  1. WebService核心文件【server-config.wsdd】详解及调用示例

    WebService核心文件[server-config.wsdd]详解及调用示例 作者:Vashon 一.准备工作 导入需要的jar包: 二.配置web.xml 在web工程的web.xml中添加如 ...

  2. .Net 对App.config和Web.config的访问操作(增、删、读、改)

    一.首先引用Configuration 1)App.config如下: using System.Configuration;//若果还没有Configuration,右键引用文件夹添加引用,在.NE ...

  3. CI框架 -- 核心文件 之 config.php

    Config:该文件包含CI_Config类,这个类包含启用配置文件来管理的方法 /** * 加载配置文件 * * @param string $file 配置文件名 * @param bool $u ...

  4. C#中web.config文件详解

    C#中web.config文件详解 一.认识Web.config文件 Web.config 文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NE ...

  5. Web.config文件 详解

    一.认识Web.config文件Web.config 文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序的身份验证方式), ...

  6. web.config 配置

    一.认识Web.config文件   Web.config 文件是一个xml文本文件,它用来储存 asp.NET Web 应用程序的配置信息(如最常用的设置asp.NET Web 应用程序的身份验证方 ...

  7. Web.Config全攻略

    一.认识Web.config文件   Web.config 文件是一个xml文本文件,它用来储存 asp.NET Web 应用程序的配置信息(如最常用的设置asp.NET Web 应用程序的身份验证方 ...

  8. Web.config配置详解【转 】

    一.认识Web.config文件 Web.config   文件是一个XML文本文件,它用来储存   ASP.NET   Web   应用程序的配置信息(如最常用的设置ASP.NET   Web   ...

  9. ASP.NET配置文件Web.config 详细解释

    一.认识Web.config文件 Web.config文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序的身份验证方式), ...

随机推荐

  1. .net core建站踩坑记录

    系统:win10 VS版本:2017 .NET Core 版本: 1.1 零.读取配置文件 参考:http://www.tuicool.com/articles/QfYVBvi 此版本无需添加其他组件 ...

  2. Akka(12): 分布式运算:Cluster-Singleton-让运算在集群节点中自动转移

    在很多应用场景中都会出现在系统中需要某类Actor的唯一实例(only instance).这个实例在集群环境中可能在任何一个节点上,但保证它是唯一的.Akka的Cluster-Singleton提供 ...

  3. ps命令学习笔记

    最近在看linux优化大师这本书,第2章祥细讲解了分析系统用的工具,这里把一些内容整理出来,以便加深印像. 当进行系统分析时,ps命令显示有关选择的活跃进程的信息.ps命令提供当前已存在的进程列表,和 ...

  4. Asp.Net Core 中无法使用 ConfigurationManager.AppSettings

    刚刚接触.net core ,准备把之前的一些技术常用工具先移植到.net Standard上面来, 方便以后使用,结果用到ConfigurationManager 的 AppSettings 就出现 ...

  5. Android不编译某个模块

    Android 5.1 源码,编译相关的文件一般在build目录下build/target/product 放了很多mk文件:一般不同的产品会有不同的目录 假设我不想编译OpenWnn,在build目 ...

  6. [luogu P3128][USACO15DEC]Max Flow [LCA][树上差分]

    题目描述 Farmer John has installed a new system of  pipes to transport milk between the  stalls in his b ...

  7. Java调度实现

    根据自己在项目中用到的调度,简单说说:(如有不正确的地方,请留言...) Java调度:他是用来解决访问时间慢的手段. 通俗的讲就是为需要的数据(你需要展示的数据)建立一张中间表存放,提前把数据读出来 ...

  8. (转)java提高篇(五)-----抽象类与接口

    接口和内部类为我们提供了一种将接口与实现分离的更加结构化的方法. 抽象类与接口是java语言中对抽象概念进行定义的两种机制,正是由于他们的存在才赋予java强大的面向对象的能力.他们两者之间对抽象概念 ...

  9. C指针1

    //定义:指针是一个特殊的数据类型,指针指向内存中的地址,因此,指针变量存储的是内存中的一个地址 //例子,%p表示打印一个地址,打印p表示打印p指向的地址 //输出结果为0x7fff5fbff7dc ...

  10. Java解析OFFICE(word,excel,powerpoint)以及PDF的实现方案及开发中的点滴分享

    Java解析OFFICE(word,excel,powerpoint)以及PDF的实现方案及开发中的点滴分享 在此,先分享下写此文前的经历与感受,我所有的感觉浓缩到一个字,那就是:"坑&qu ...