axis2开发webservice总结

摘要:
配置axis2开发环境。有很多在线教程。

需求环境:对接方公司提供wsdl文件,我方按照该wsdl文件开发服务端。

  1. 配置axis2开发环境,网上教程很多,不再啰嗦。环境搭好后执行wsdl2java -uri file:///C:/Users/lenovo/Desktop/ws/jc/UtcsService.wsdl -s -ss -ap -sd -ssi -d adb -o buildserver1

命令行格式为:wsdl2java [options] -uri <url or path> : A url or path to a WSDL

其中常用的options具体如下:

-o <path>指定生成代码的输出路径
-a生成异步模式的代码
-s生成同步模式的代码
-p <pkg>指定代码的package名称
-l <languange>使用的语言(Java/C) 默认是java
-t为代码生成测试用例
-ss生成服务端代码默认不生成
-sd生成服务描述文件 services.xml,仅与-ss一同使用
-d <databinding>指定databingding,例如,adb,xmlbean,jibx,jaxme and jaxbri
-g生成服务端和客户端的代码
-pn <port_name>当WSDL中有多个port时,指定其中一个port
-sn <serv_name>选择WSDL中的一个service
-u展开data-binding的类
-r <path>为代码生成指定一个repository
-ssi为服务端实现代码生成接口类
-S为生成的源码指定存储路径
-R为生成的resources指定存储路径
--noBuildXML输出中不生成build.xml文件
--noWSDL在resources目录中不生成WSDL文件
--noMessageReceiver不生成MessageReceiver类
-o <path>为生成的代码指定一个保存路径.Specify a directory path for the generated code.
-a生成异步代码 (默认关闭).Generate async style code only (Default: off)
-s生成同步代码 (默认关闭). 优先权高于选项 -a. Generate sync style code only (Default: off). Takes precedence over -a.
-p <pkg1>为生成的代码指定一个包名称.Specify a custom package name for the generated code.
-l <language>生成的代码的语言类型,目前只支持java和c (默认java) .Valid languages are java and c (Default: java).
-t为生产的代码产生测试代码.Generate a test case for the generated code.
-ss生成服务端代码 (i.e. skeletons) (默认关闭.Generate server side code (i.e. skeletons) (Default: off).
-sd生成服务端descriptor (i.e. services.xml). (默认关闭). 当使用 -ss选项的时候才有效.Generate service descriptor (i.e. services.xml). (Default: off). Valid with -ss.
-d <databinding>数据绑定模式,可选 adb, xmlbeans, jibx 和 jaxbri (默认adb).Valid databinding(s) are adb, xmlbeans, jibx and jaxbri (Default: adb).
-g生成所有类,与-ss使用时有效.Generates all the classes. Valid only with -ss.
-pn <port_name>当wsdl描述中式多个端口时指定一个端口Choose a specific port when there are multiple ports in the wsdl.
-sn <service_name>当wsdl是多服务的情况下指定一个服务名称Choose a specific service when there are multiple services in the wsdl.
-u打包数据绑定类 Unpacks the databinding classes
-r <path>产生一个生成的代码的清单Specify a repository against which code is generated.
-ns2p ns1=pkg1,ns2=pkg2为wsdl里的每个schema 指定一个namespace,Specify a custom package name for each namespace specified in the wsdls schema.
-ssi为每个服务的实现生成一个接口(默认关闭)Generate an interface for the service implementation (Default: off).
-wv <version>WSDL版本 可选 : 2, 2.0, 1.1 ,WSDL Version. Valid Options : 2, 2.0, 1.1
-S <path>为生成的源文件指定目录Specify a directory path for generated source
-R <path>为生成的资源指定目录Specify a directory path for generated resources
-em <file path>指定外部的映射文件Specify an external mapping file
-fFlattens the generated files
-uwSwitch on un-wrapping.
-xsdconfig <file path>Use XMLBeans .xsdconfig file. Valid only with -d xmlbeans.
-ap为所有端口生成代码Generate code for all ports
-or覆盖已经存在的类Overwrite the existing classes
-b生成兼容axis1 的代码Generate Axis 1.x backward compatible code.
-sp不生成命名空间前缀(可减少包大小)Suppress namespace prefixes (Optimzation that reduces size of soap request/response)
-E<key> <value>Extra configuration options specific to certain databindings. Examples:
 
-Ebindingfile <path>(for jibx) - specify the file path for the binding file
-Etypesystemname <my_type_system_name>(for xmlbeans) - override the randomly generated type system name
-Ejavaversion 1.5(for xmlbeans) - generates Java 1.5 code (typed lists instead of arrays)
-Emp <package name>(for ADB) - extension mapper package name
-Eosv(for ADB) - turn off strict validation.
-Ewdc(for xmlbeans) - Generate code with a dummy schema. if someone use this option
they have to generate the xmlbeans code seperately with the scomp command comes with the xmlbeans distribution and replace the Axis2 generated classes with correct classes
--noBuildXMLDont generate the build.xml in the output directory
--noWSDLDont generate WSDLs in the resources directory
--noMessageReceiverDont generate a MessageReceiver in the generated sources
--http-proxy-host <host>Proxy host address if you are behind a firewall
--http-proxy-port <port>Proxy port address if you are behind a firewall
-ep <package-name-list>Exclude packages - these packages are deleted after code generation
-sin <interface-name>Skeleton interface name - used to specify a name for skeleton interface other than the default one
-scn <class-name>Skeleton class name - used to specify a name for skeleton class other than the default one
-EbindingFileName <path>(for jaxbri) - specify the file path for the episode file
-oaa <override-absolute-address>-change the absolute http addresses to local file addresses generated by wsdl2java tool
-ebc <exception-base-class>-generated Exceptions are inherited from this exception rather than the java.lang.Exception class
-uon <use-operation-name>-by default the first letter of the generated method name changeed to lowercase. This option stops that and make it same as operation name

 主要是记录java代码打包发布到tomcat里,利用wsdl2java生成的src文件和resource文件,打包就是将resource文件里的service.xml放进src文件夹下,新建的META-INF文件下,然后将src文件打成jar包或arr包,放进D:appapache-tomcat-8.5.3webappsaxis2WEB-INFservices文件夹下

axis2开发webservice总结第1张

这个就是打成的jar包

http://blog.csdn.net/yanghaitaohhh/article/details/17641303

免责声明:文章转载自《axis2开发webservice总结》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇selenium.获取浏览器大小、设置浏览器位置、最大化浏览器iOS开发——面试篇&amp;amp;面试总结(五)取消GCD任务下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

matlab绘图方法汇总

Matlab画图 强大的画图功能是Matlab的特点之中的一个,Matlab提供了一系列的画图函数,用户不须要过多的考虑画图的细节,仅仅须要给出一些基本參数就能得到所需图形,这类函数称为高层画图函数。此外,Matlab还提供了直接对图形句柄进行操作的低层画图操作。这类操作将图形的每个图形元素(如坐标轴、曲线、文字等)看做一个独立的对象,系统给每个对象分配一...

Cxf -wsdl2java 使用参数介绍

wsdl2java -h 可以得到详细的参考文档: G:cxfapache-cxf-3.1.6in>wsdl2java -h wsdl2java -fe|-frontend <front-end-name> -db|-databinding <data-binding-name> -wv <wsdl-version...

Java安全之Axis漏洞分析

Java安全之Axis漏洞分析 0x00 前言 看到个别代码常出现里面有一些Axis组件,没去仔细研究过该漏洞。研究记录一下。 0x01 漏洞复现 漏洞版本:axis=<1.4 Axis1.4 freemarker 下载Axis包1.4版本将Axis放到tomcat的webapp目录中。freemarker.jar放到Axis的 lib目录下。运行t...

复杂对象类型的WebService高级部分

从客户端除了传递字符串以外还可以传递复杂对象(对象必须序列化了),List,Map,数组和文件。 (1)定义一个对象实现了serializable 接口package cn.com.chenlly.ssh.webservice.axis; import java.io.Serializable;import java.util.ArrayList;impo...

WebService开发实例(Axis2实现,无需安装,快速实现)

曾经做过的项目里涉及Android客户端向服务器发送请求,服务器访问数据库获得数据并返回给Android客户端。当时Android客户端与服务器的通信已经实现,我只负责客户端布局和数据呈现的部分,近日有遇到类似项目,所以计划完整的研究和实现一下整个通信过程。 目前选择的方案是服务器端开启Webservice,Android客户端通过第三方的ksoap ja...

动态调用WebService

from:http://www.cnblogs.com/xl888/archive/2008/10/29/1321797.html 多数时候我们通过 "添加 Web 引用..." 创建客户端代理类的方式调用WebService,但在某些情况下我们可能需要在程序运行期间动态调用一个未知的服务。在 .NET Framework 的 System.Web.Se...