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

作者:Vashon

一、准备工作

导入需要的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核心文件【server-config.wsdd】详解及调用示例的更多相关文章

  1. WebService核心文件【web-config.wsdd】调用操作

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

  2. [js高手之路]深入浅出webpack系列2-配置文件webpack.config.js详解

    接着上文,重新在webpack文件夹下面新建一个项目文件夹demo2,然后用npm init --yes初始化项目的package.json配置文件,然后安装webpack( npm install ...

  3. [js高手之路]深入浅出webpack教程系列2-配置文件webpack.config.js详解(上)

    [js高手之路]深入浅出webpack教程系列索引目录: [js高手之路]深入浅出webpack教程系列1-安装与基本打包用法和命令参数 [js高手之路]深入浅出webpack教程系列2-配置文件we ...

  4. [js高手之路]深入浅出webpack教程系列3-配置文件webpack.config.js详解(下)

    本文继续接着上文,继续写下webpack.config.js的其他配置用法. 一.把两个文件打包成一个,entry怎么配置? 在上文中的webpack.dev.config.js中,用数组配置entr ...

  5. MATLAB中的参数估计函数详解及调用示例【联合整理】

    前言 因为最近项目上的需要,才发现MATLAB的统计工具箱中的参数估计函数,觉得很简单很好用,现在把所有的参数估计函数整理一下,并在最后面附上调用示例. 参与人员 由于时间关系,这篇随笔是两个人一起整 ...

  6. Asp.net中web.config配置文件详解(一)

    本文摘自Asp.net中web.config配置文件详解 web.config是一个XML文件,用来储存Asp.NET Web应用程序的配置信息,包括数据库连接字符.身份安全验证等,可以出现在Asp. ...

  7. MySQL Cluster 配置文件(config.ini)详解

    MySQL Cluster 配置文件(config.ini)详解 ################################################################### ...

  8. SQL Server表分区详解

    原文:SQL Server表分区详解 什么是表分区 一般情况下,我们建立数据库表时,表数据都存放在一个文件里. 但是如果是分区表的话,表数据就会按照你指定的规则分放到不同的文件里,把一个大的数据文件拆 ...

  9. tomcat中server.xml配置详解(转载)(一)

    转载自:https://www.cnblogs.com/starhu/p/5599773.html tomcat中server.xml配置详解 Tomcat Server的结构图如下:(该文件描述了如 ...

随机推荐

  1. DirectWrite文字排版——字符串去尾

    DirectWrite是 DirectX 家族中专门用来做文本处理的部分,主要配合Direct2D进行渲染工作. 一.字符串去尾介绍 在文字渲染中,不免会遇到字符串去尾的需求.字符串去尾指的是:当字符 ...

  2. IT人的自我导向型学习:学习的4个层次

    谈起软件开发一定会想到用什么技术.采用什么框架,然而在盛行的敏捷之下,人的问题逐渐凸显出来.不少企业请人来培训敏捷开发技术,却发现并不能真正运用起来,其中一个主要原因就是大家还没有很好的学习能力.没有 ...

  3. 最近一段时间开发客户端app的感悟

    关于android和cocos2d 凭着对大学时候写html+css的一点点的记忆,我还是认为android的布局xml文件还是参考了html+css,只是他更加臃肿!就想 android平台本身那样 ...

  4. [ASP.NET] 下一代ASP.NET开发规范:OWIN

    今天投简历 准备面试了... 本节目录: OWIN简介 OWIN规范 Katana Hello World(3种Host) 自定义Middleware OWIN简介 OWIN(Open Web Int ...

  5. [Tool] WireShark基本使用

    Wireshark(前称Ethereal)是一个网络封包分析软件. 在windows平台上,Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换. [参数设置]: 抓包参数(Cap ...

  6. HDFS-RAID原理和实现

    HDFS-RAID 是Facebook基于hadoop-20-append分支(第一代Hadoop)开发的raid方案,对HDFS的修改极少,主要包括为NameNode增加了根据block信息找到bl ...

  7. [CLR via C#]17. 委托

        回调函数是一种非常有用的编程机制,它已经存在很多年了.Microsoft .NET Framework通过委托(delegate)来提供一种回调机制.不同于其他平台(比如非托管C++)的回调机 ...

  8. C#十五子游戏

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  9. 不可或缺 Windows Native (3) - C 语言: 运算符,表达式,条件语句,循环语句,转向语句,空语句等

    [源码下载] 不可或缺 Windows Native (3) - C 语言: 运算符,表达式,条件语句,循环语句,转向语句,空语句等 作者:webabcd 介绍不可或缺 Windows Native  ...

  10. 重新想象 Windows 8.1 Store Apps (79) - 控件增强: MediaElement, Frame

    [源码下载] 重新想象 Windows 8.1 Store Apps (79) - 控件增强: MediaElement, Frame 作者:webabcd 介绍重新想象 Windows 8.1 St ...