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. BottomupSort算法 c++代码实现

    #include <iostream> using namespace std; #define N 100 int A[N]; static int n; void Initial() ...

  2. git bash上传代码到github

    今天,老爷机notebook开始卡了,我决定格盘重装系统. 顺便复习一下git本地命令的使用 1,配置 2先跳过一般的操作.介绍链接github远程库的操作 我的两个钥匙在C:\Users\bond\ ...

  3. 事件冒泡、事件委托、jQuery元素节点操作、滚轮事件与函数节流

    一.事件冒泡定义 事件冒泡是指在一个对象触发某类事件(比如单击onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true,那 ...

  4. oracle-plsql序列问题

    场景:用来汇总工作中数据库的异常问题! 1 问题 序列在会话中未定义 解决: 创建Sequence后直接查询它的当前值(CURRVAL)会出错,要先调用Sequence对象.NEXTVAL,才能查询当 ...

  5. Objective-C 自定义UISlider滑杆 分段样式

    效果 自定义一个功能简单的分段的滑杆 可显示分段名 为了显示效果,我们将滑块和节点都设置为不规则 这里只实现了分段的slider,未分段的没有实现,有兴趣的可以定义另一种类型做个判断修改下 需求分析 ...

  6. Java 程序员技能导图 1.0

    做Java开发已经一年,并非科班出身,在毕业工作三年后毅然决然辞职,参加培训机构从零开始.在这期间迷茫.失望.绝望时常伴我左右,但是在不断自我提高与努力中渐渐看到一些小小的成果使我不断坚信自己的选择并 ...

  7. Uva 122 树的层次遍历 Trees on the level lrj白书 p149

    是否可以把树上结点的编号,然后把二叉树存储在数组中呢?很遗憾如果结点在一条链上,那将是2^256个结点 所以需要采用动态结构 首先要读取结点,建立二叉树addnode()+read_input()承担 ...

  8. react-router 离开路由前确认

    react路由在做离开前确认时,有两种方法 第一种是我们写的是动态路由,可以做一个简单的离开前确认 path: '/association/administration', component: Ad ...

  9. Hadoop新生报到(一) hadoop2.6.0伪分布式配置详解

    首先先不看理论,搭建起环境之后再看: 搭建伪分布式是为了模拟环境,调试方便. 电脑是win10,用的虚拟机VMware Workstation 12 Pro,跑的Linux系统是centos6.5 , ...

  10. matplotlib实现数据可视化

    一篇matplotlib库的学习博文.matplotlib对于数据可视化非常重要,它完全封装了MatLab的所有API,在python的环境下和Python的语法一起使用更是相得益彰. 一.库的安装和 ...