由JAVA代码生成Axis1.4容器WebService服务!

[size=x-large][color=darkred]通过WTP正常发布WebService服务[/color][/size]
[*]下载Axis1.4,并验证环境!
[*]IDE使用eclipse,并且集成WTP工具!
[*]创建Web工程;

[img]http://watching2008.iteye.com/upload/attachment/113411/58b2220d-a412-3eda-b227-59d5d31bc3e0.jpg[/img]

[*]新建java类ToLowerCase,[b]建议加个包名,否则后面自动生成的wsdd要手工修改[/b]:

package test;public class ToLowerCase {    public String getLowerCase(String str) {      return str.toLowerCase(); }}

[*]WEB工程导入Axis1.4容器依赖包:axis.jar、jaxrpc.jar、saaj.jar、wsdl4j-1.5.1.jar;
[*]通过WTP工具生成WSDL(类型声明"wsdl:types"、消息"wsdl:message"(依赖类型声明)、服务端口声明"wsdl:portType"(包含操作,操作依赖消息)、绑定(服务端口实现)、服务发布)!

[img]http://watching2008.iteye.com/upload/attachment/113415/74b2119f-0857-3a85-906a-b51fc174baf3.jpg[/img]

服务发布成功后:
[img]http://watching2008.iteye.com/upload/attachment/113438/444db501-7db0-3b6c-b220-0ecdac6e076f.jpg[/img]

[size=x-large][color=darkred]通过WTP正常发布WebService服务失败,或者需要生产客户端代码和服务端代码,请继续![/color][/size]

发布服务过程中如果出错,那就不用管它,主要关注生成的wsdl文件,一步一步继续我们的服务发布。
[img]http://watching2008.iteye.com/upload/attachment/113417/d7dba981-ecb4-34d1-ad71-dbb8a1d665b7.jpg[/img]
[*]修改wsdl服务地址,例如:http://localhost:8088/AxisTest/services/ToLowerCase;
[*]在WebContent下创建build.xml,注意设置为上步定义的服务地址;
例如:

<project name="SimpleService">    <property name="axis.home" value="H:/OpenSource/Apache Axis/axis-1_4" />  <property name="server_gen" value="../server_code" /> <property name="client_gen" value="../client_code" /> <path id="axis.classpath">       <fileset dir="${axis.home}/lib">         <include name="**/*.jar" />      </fileset>  </path> <taskdef resource="axis-tasks.properties" classpathref="axis.classpath" />    <target name="generate-service-stub">        <axis-wsdl2java serverside="true" url="./wsdl/ToLowerCase.wsdl" output="${server_gen}">        </axis-wsdl2java>   </target>   <target name="generate-client-stub">     <axis-wsdl2java url="./wsdl/ToLowerCase.wsdl" output="${client_gen}">         <mapping namespace="http://DefaultNamespace" package="" />        </axis-wsdl2java>   </target>   <target name="deploy">       <axis-admin url="http://localhost:8088/AxisTest/services/ToLowerCase" xmlfile="./WEB-INF/ToLowerCaseService/DefaultNamespace/deploy.wsdd" />  </target>

</project>

根据以上信息,需要设置axis1.4的home;在web工程下增加server_code目录和client_code目录!

[*]生成服务端代码;
执行build.xml,如图:
[img]http://watching2008.iteye.com/upload/attachment/113429/f371212c-8f8a-3fce-b2da-792fd1baa194.jpg[/img]

选择先生成服务端代码,如图:
[img]http://watching2008.iteye.com/upload/attachment/113430/efd353ac-a30a-34f6-903e-3e1104a31b1b.jpg[/img]
[*]同理生成客户端代码;
[*]将生成服务端代码中(server_code目录下)的deploy.wsdd拷贝到build.xml指定的位置"./WEB-INF/ToLowerCaseService/DefaultNamespace/deploy.wsdd"。

[b]注意:最初新建的ToLowerCase类,如果没有包名,需要手工修改服务端代码(server_code目录下)中的wsdd,<parameter name="className" value="DefaultNamespace.ToLowerCaseSoapBindingImpl"/>,value值"ToLowerCase";否则发起服务后无法识别DefaultNamespace![/b]

[*]启动tomcat,发布应用;
[*]再次执行build.xml发布服务,生成server-config.wsdd(此文件一般在运行时tomcat文件夹中,因为tomcat集成到eclipse时一般会单独有个临时目录),拷贝到WEB-INF下,重启tomcat即可;

小结,理解由java代码生成ws服务,axis1.4容器自动化过程:
第一步:创建出ToLowerCase.wsdl,对所要发布服务类进行描述(此过程选择服务描述 样式和编码格式);
第二步:创建deploy.wsdd、undeploy.wsdd,描述所部署的服务(此过程可以创建服务端代码stub)!
第三步:发布服务,创建运行时server-config.wsdd,以后web服务所最终依赖!(服务发布后也可以手工创建客户端代码stub)

Axis1.4容器WebService服务发布过程相关推荐

  1. Java实现的简单的WebService服务发布和Client调用例子

    做大作业,要求用到WS,在网上看了看,自己写了一个,很简单的服务发布和Client调用例子. WebService有很多实现的方式,但是原理基本都是一样的,都是基于SOA的三角模型,所以重点在于理解了 ...

  2. SOFA 源码分析 —— 服务发布过程

    前言 SOFA 包含了 RPC 框架,底层通信框架是 bolt ,基于 Netty 4,今天将通过 SOFA-RPC 源码中的例子,看看他是如何发布一个服务的. 示例代码 下面的代码在 com.ali ...

  3. WebService服务发布与使用(JDK自带WebService)

    简单粗暴,直接上步骤 一.先建立一个web项目,名字叫MyService 名字为MyService 新建Java类 package com.webService; import javax.jws.W ...

  4. 使用CXF发布WebService服务简单实例

    一.说明: 前面介绍了使用axis2来发布Webservice服务,现在介绍一种更popular,更高效的Webservice服务发布技术:CXF Apache CXF = Celtix + XFir ...

  5. 基于jws发布webservice服务

    基于jws发布webservice服务 用途 用于验证基于jws搭建的webservice服务端与客户端. WebService服务端 1.目录结构 D:. │ pom.xml # maven配置 │ ...

  6. 使用Axis2创建一个简单的WebService服务

    使用过Java进行过WebService开发都会听过或者接触过Apache Axis2,Axis2框架是应用最广泛的WebService框架之一了. 这里使用Axis2来开发和部署一个最简单的WebS ...

  7. dubbo源码分析二:服务发布

    本文将深入分析dubbo的服务发布涉及到的流程及主要类的代码.首先,我们先从类的关系图来看一下dubbo发布服务涉及到的相关类. 1.类图 上图展示了部分服务发布过程中需要使用到的类和接口,其中: s ...

  8. Springboot 基于CXF构建WebService服务

    前言 最近因为系统需要接入了一个新的支付通道,一般来说都是使用RestApi 来接入,但是本次接入的支付通道为境外支付,使用的WebService,对于WS我们在实际业务中基本上不会用到,所以查阅了一 ...

  9. prometheus 配置服务器监控、服务监控、容器中服务监控与告警

    最近公司有几个服务遇到了瓶颈,也就是数据量增加了,没有人发现,这不是缺少一个监控服务和告警的系统吗? 主要需求是监控每个服务,顺带监控一下服务器和一些中间件,这里采集的2种,zabbix和promet ...

  10. Dubbo服务端服务发布(一)Invoker创建

    在Dubbo的服务发布过程中,Invoker的构造是一个重要的步骤,Invoker代表的是一个可以调用的服务的接口.它的定义如下: public interface Invoker<T> ...

最新文章

  1. MongoDB Driver:使用正确的姿势连接复制集
  2. controller方法要trycatch吗_拜托,别再满屏try catch了,试试统一异常处理吧
  3. c#位数不够0补充完_Java与C#比较,哪个语言更是适合你?
  4. atitit. js 跨界面 页面 web cs 传值方法总结
  5. POJ 3415 Common Substrings (后缀数组,长度不小于k的公共子串的个数)
  6. 磁力链转bt种子 python_实战Python实现BT种子转化为磁力链接
  7. distpicker省市区插件设置请选择省市区提示/或设置初始值问题
  8. 基于ABAQUS蠕变储层稠油蒸汽吞吐开发过程数值模拟
  9. iOS日常开发之frame和bounds的不同
  10. 使用hBuilder打包成app扫一扫
  11. C语言的数据表现形式及其运算
  12. 阿里云盘和 Teambition 网盘
  13. 解压缩软件RAR Extractor Mac
  14. 【GNN】GN:更通用的 GNN 架构
  15. 2018-2021,60+篇阿里研发效能提升合集,都在这里了
  16. 论文:麦克风阵列增强
  17. HTML外边框塌陷什么意思,你不知道的CSS(边框塌陷)?
  18. mongodb基础操作之聚合操作、索引优化
  19. 阿里巴巴淘系技术:超详|2020年你不应该错过的CSS新特性
  20. 软考高级 真题 2009年下半年 信息系统项目管理师 案例分析

热门文章

  1. 电阻电容等封装对应功率
  2. 采用数值方法计算最速曲线
  3. GBK汉字的索引方法
  4. 计算机键盘功能教案,认识键盘教学设计
  5. 【大结局】三体 III 中的思想实验:死神永生(下)
  6. Linux内核系统调用原理与实现
  7. Base64 转图片
  8. asc怎么用 linux zip_File Roller/Unzip 解压中文 Zip 文件名乱码
  9. sir模型初始值_SIR模型
  10. 【国科大】计算机类课程点评(更新中)