axis2开发webservice总结

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

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

命令行格式为: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
-f Flattens the generated files
-uw Switch 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

--noBuildXML Dont generate the build.xml in the output directory
--noWSDL Dont generate WSDLs in the resources directory
--noMessageReceiver Dont 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:\app\apache-tomcat-8.5.3\webapps\axis2\WEB-INF\services文件夹下

这个就是打成的jar包

时间: 2024-10-09 17:57:58

axis2开发webservice总结的相关文章

AXIS2 开发WebService

1.服务端的开发 a.     axis2不支持事务.对数据库增删改查一般都需要事务处理的,但是在对外发布的接口中是不能配置事务的.      解决方法:或者写一个代理类或者直接在dao中进行事务管理. b.     axis2不支持方法重载.  在对外发布的接口中不能使用方法重载, [WARN] We don't support method overloading. Ignoring [updateClassifyTask]                  [WARN] We don't

使用Axis2开发WebService

一.准备 1.下载Axis2.eclipse插件 axis2-1.6.2-war.zip: http://mirror.bjtu.edu.cn/apache//axis/axis2/java/core/1.6.2/axis2-1.6.2-war.zip axis2-1.6.2-bin.zip: http://mirror.bjtu.edu.cn/apache//axis/axis2/java/core/1.6.2/axis2-1.6.2-bin.zip axis2-eclipse-codegen

axis2开发webservice之编写Axis2模块(Module)

http://www.zhuke.com/user/zkuser3511807?p6=123.baidu.com=&lvhttp://www.zhuke.com/user/zkuser20028089?p6=123.baidu.com=&lvhttp://www.zhuke.com/user/zkuser87621851?p6=123.baidu.com=&lvhttp://www.zhuke.com/user/zkuser37700051?p6=123.baidu.com=&am

java开发webservice的几种方式(转载)

webservice的应用已经越来越广泛了,下面介绍几种在Java体系中开发webservice的方式,相当于做个记录. 1.Axis2方式 Axis是apache下一个开源的webservice开发组件,出现的算是比较早了,也比较成熟.这里主要介绍Axis+eclipse开发webservice,当然不用eclipse也可以开发和发布webservice,只是用eclipse会比较方便. (1)下载eclipse的Java EE版本 http://www.eclipse.org/downloa

Apache axis2 + Eclipse 开发 WebService

一.简介 Apache Axis2是下一代 Apache Axis.Axis2 虽然由 Axis 1.x 处理程序模型提供支持,但它具有更强的灵活性并可扩展到新的体系结构.Axis2 基于新的体系结构进行了全新编写,而且没有采用 Axis 1.x 的常用代码.支持开发 Axis2 的动力是探寻模块化更强.灵活性更高和更有效的体系结构,这种体系结构可以很容易地插入到其他相关 Web 服务标准和协议(如 WS-Security.WS-ReliableMessaging 等)的实现中.Apache A

myeclipse 10 +Axis2 1.62 开发WebService手记

由于临时需求,不得不用java来开发一个webservice,之前对java webservice一片空白.临时查资料,耗费近一天,终于搞定,效率是慢了点.呵呵. 首先 配置Tomcat 中WebService解析容器,下载Axis2-1.6.2 注意分别下载 红框的两个文件   其中注意将 axis2-1.6.2-war.zip 中axis2.war解压出 ,放到tomcat 中 webapps中,然后在浏览器中输入http://localhost:8080/axis2/ 测试容器是否成功.(

基于Myeclipse+Axis2的WebService开发实录

最近开始学习了下在Myeclipse开发工具下基于WebSerivce的开发,下面将相关相关关键信息予以记录 Myeclipse的安装,本文以Myeclipse2014-blue为开发环境,相关配置执行完善 从http://archive.apache.org/dist/ws/axis2/tools/下载Axis2包,下载 axis2-eclipse-codegen-wizard.zip,下载axis2-eclipse-service-archiver-wizard.zip 从http://ax

axis2+spring开发webservice服务器端

需求:开发VAC与SP间订购通知接口服务器端(SP端),给定VacSyncService_SPClient.wsdl文件 首先,官网下载axis2-1.6.2-bin.zip和axis2-1.6.2-war.zipaxis2-1.6.2-bin.zip包含axis2的jar包,工具和例子axis2-1.6.2-war.zip包含了axis2的web应用,发布web服务时,将自己的程序以特定文件结构发布到axis2的web应用的service目录中 1.根据wsdl生成服务器端代码解压axis2-

spring+resteasy开发webservice服务

有一段时间没有更新博客,主要是最近一段时间自己比较迷茫,一直在思考自己以后的路该怎么走.希望大家也可以给我一些建议,谢谢!好了,回归正题,今天给大家带来的是spring+resteay开发webservice服务,不知道大家是否在这之前接触过webservice,我之前所了解的webservice是使用cxf还有axis2开发的,但是我觉得实现起来比较麻烦,而且不灵活,今天给大家介绍一种比较灵活的提供webservice服务的技术:resteasy.下面我重点讲解的resteasy常用的一些知识