转载http://blog.csdn.net/songdexv/article/details/7827289
最近需要使用axis根据wsdl文件生成客户端代码,由于axis不像axis2中有WDSL2Java这个脚本,而且在使用axis中的WDSL2Java类时,碰到了一些问题,主要就是类路径的问题,按照网上说的使用java 命令来运行,但是总是报错说WDSL2Java类找不到,后面发现如果在eclipse里面做这件事的话简直太容易了。
一 . 下载axis-1.4.1-bin.zip,下载地址是http://www.apache.org/dyn/closer.cgi/ws/axis/1_4.解压,要用到lib里的所有jar包,但是这里还不够,还要再另外下载几个,activation.jar, mail.jar, xmlsec-1.2.1.jar, xalan.jar.
二.eclipse里进行第二个步骤,新建一个工程,然后将刚才提到的所有jar包引入,找到axis.jar里的WSDL2Java.class文件,这个class是可以右键run的.
三 . 右键点击WSDL2Java.class -- run us -- run Configurations -- Arguments,Program argument.这里是给main传参数的,在这里参数自然就是wsdl文件的位置了.输入-p packagename -u XXX\XX.wsdl,(XXX代表路径),或者wsdl地址也可以
搞定,就是这样了,run一下就ok了,工程目录下会有自动生成的java文件
四。
以前项目上用到webservice都是我们服务端提供wdsl,现在集团统一下发了wdsl。刚接手一时还不知道怎么弄,在网上查了很多资料。
当然AXis的WSDL2Java在网上有很多资料,但是我看到有些网友说需要JDK1.5,让我迷茫了一些时间(我们项目比较老,用的jdk1.4)。
慢慢了解了WSDL2Java后,才知道,自己以前对webservice服务有多么陌生,虽然现在也是一知半解,^_^。
测试环境:
jdk1.4、axis1.4
1,新建web工程 webservice
2,把axis1.4下的所有jar包导入classpath
3,把已知的wsdl文件放入工程的web-info/下(目录不是随意)
4,写一简单的批处理文件wsdl2Java.bat(也可一再dos下进行)
[java] view plaincopy
set Axis_Lib=E:/workspace/cattsoft/csm/webservice/WebRoot/WEB-INF/lib
set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib% org.apache.axis.wsdl.WSDL2Java
set Output_Path=E:/workspace/cattsoft/csm/cust/src
%Java_Cmd% -o%Output_Path% --server-side GrpAcctInfoSer.wsdl
双击wsdl2Java.bat文件,会生成服务端和客户端代码
还会生成部署文件:deploy.wsdd,卸载文件:undeploy.wsdd
5,从下载的axis1.4的jar包中找到web.xml覆盖工程中的web.xml,相当于配置访问的servlet
6,部署工程,并启动服务器。把deploy.wsdd复制到部署路劲的web-info下,利用org.apache.axis.client.AdminClient 命令生成server-config.wsdd文件
cmd到deploy.wsdd的位置:
[java] view plaincopy
java -cp %AXIS_CLASSPATH% org.apache.axis.client.AdminClient -lhttp://localhost:8080/test/services/MyServer deploy.wsdd
AXIS_CLASSPATH:在环境变量中配置的类路径,指向axis下的所有jar包
生成server-config.wsdd文件后,访问:
[html] view plaincopy
http://localhost:7001/servlet/AxisServlet
就会现实服务列表。
注:我当时做到这一步时,访问wsdl时报错:
Fault - makeTypeElement() was told to create a type "{http://ws.chinaunicom.cn/GrpAcctInfoSer/unibssBody/syncGrpAccountInfoReq}>>cust_infos>cust_info", with no containing element
困扰我好久,还是google给力,好像是axis的一个bug,虽然用浏览器访问不了wsdl,但是客户端访问是正常的。
解决方案连接:
[html] view plaincopy
http://www.coderanch.com/t/222942/Web-Services/java/Developing-Web-Services-Apache-A
分享到:
相关推荐
2. **Axis1.4工具**:这些是命令行工具,如wsdl2java和java2wsdl,用于将Java类转换为WSDL或反之亦然,便于服务的生成和发布。 3. **示例和文档**:提供了一些示例项目和详细的API文档,帮助开发者了解如何使用Axis...
本方法是用axis1.4技术,实现java客户端调用webservice。已经可实现过可行的,如果不行可加我QQ号302633进行详细解析。
- WSDL2Java和Java2WSDL工具:这两个工具是Axis1.4的核心部分,它们帮助开发者在WSDL和Java代码之间转换。 - JAX-WS(Java API for XML Web Services):这是Java平台标准,用于创建和处理Web服务,它是Axis2的...
5. **暴露端点**:在Axis1.4中,你需要通过`wsdl2java`工具生成服务的WSDL(Web Service Description Language)文件,然后将这个WSDL文件的位置暴露为一个HTTP端点。Spring Boot可以通过`@Bean`注解创建一个`...
Axis1.4是Apache组织提供的一款基于Java的Web服务框架,它允许开发者轻松地创建、发布和调用Web服务。本文将深入探讨如何使用Axis1.4.jar包以及Eclipse IDE来实现WSDL(Web Service Description Language)和服务端...
在Java开发中, Axis1.4 是一个广泛使用的开源框架,用于构建和部署Web服务。本文将深入探讨如何使用Axis1.4与Java项目整合,搭建Web服务客户端,并通过具体的客户端代码实例进行详解。 首先,我们需要理解Web服务...
7. **数据绑定**: Axis1.4提供了数据绑定框架,如JAX-RPC(Java API for XML-Based RPC),可以将Java对象直接映射到SOAP消息,简化了数据的序列化和反序列化过程。 8. **异常处理**:在出现错误时,Axis1.4会抛出...
本文将深入探讨如何在Axis1.4中实现头部鉴权,包括其实现类模板的详细介绍。 ### 标题解析:“Axis1.4如何实现头部鉴权” 标题明确了讨论的主题——在Apache Axis 1.4中实现基于HTTP头部的鉴权机制。头部鉴权是一...
在本文中,我们将深入探讨如何在Spring Boot项目中集成并使用Axis1.4来发布Web服务。Spring Boot以其简化配置和快速开发能力而受到广泛欢迎,而Axis1.4是Apache软件基金会的一个开源项目,主要用于生成和消费SOAP ...
AXIS1.4是Apache软件基金会开发的一个开源Java库,用于构建和使用Web服务。它提供了在Java平台上创建Web服务的工具和API,使得开发者能够快速实现SOAP(Simple Object Access Protocol)通信。在这个"AXIS1.4 ...
Axis1.4 使用 JAX-RPC(Java API for XML-based RPC)进行数据绑定,可以通过使用 `@WebService` 和 `@WebMethod` 注解来标记服务类和方法。对于复杂类型数组,需要定义对应的 Java 类,并使用 `@XmlType` 和 `@...
标题“axis1.4.1.zip”所指的是一份针对Axis1.4版本的修复补丁包,这个补丁主要是为了解决在Java Development Kit (JDK) 1.8环境下,高并发场景下出现的`ConcurrentModificationException`问题。`...
了解并熟练使用Axis1.4和Axis2的相关jar文件,对于开发和维护Web服务至关重要。这不仅可以帮助开发者快速构建服务,还能确保与现有系统和其他Web服务的互操作性。在实际项目中,应根据具体需求选择适合的版本,同时...
2. 生成服务接口:使用Axis1.4的wsdl2java工具,根据Java类生成WSDL文件和服务接口代码。 3. 部署服务:将生成的服务接口和实现类部署到Axis1.4服务器上,可以使用`wsdeploy`命令或者在管理控制台进行操作。 4. ...
Axis1.4是Apache Axis的一个版本,它是一个流行的开源工具,用于实现和部署Java Web服务。Apache Axis1.4支持SOAP(Simple Object Access Protocol)和WSDL(Web Services Description Language),这两种技术是构建...
在Java开发中,Axis1.4是一个常用的开源工具,用于构建和部署Web服务。本实例主要探讨如何将Axis1.4与Java项目整合,搭建Web服务的服务端。下面我们将详细阐述Axis1.4、Web服务以及如何在服务端进行设置。 一、 ...
在 Axis1.4 开发 Web 服务(Web Service)时,使用正确的库文件至关重要。Axis 是 Apache 组织提供的一款开源工具,它主要用于构建和部署 SOAP(Simple Object Access Protocol)Web 服务。以下是对给定文件中每个 ...
首先,了解 Axis1.4:Axis 是一个开源的Java Web服务框架,它允许开发者快速地创建和部署Web服务。Axis1.4是该框架的一个较老版本,尽管它可能不如最新版本的功能强大,但在某些场景下,如支持老版本的Web服务规范或...
标题 "axis1.4+activation.jar+mail.jar" 指涉的是一个基于Java的Web服务开发工具包,Axis1.4,以及两个必要的库文件:activation.jar和mail.jar。这些组件在Java应用程序中,尤其是涉及到网络通信和邮件处理时扮演...
Axis1.4会根据这些类自动生成Web服务所需的部署描述文件(wsdd)和JavaServer Pages(JSP)。 3. **生成服务端**:使用`wsdl2java`命令,将Java类转换为WSDL文件,然后使用`deploy`命令将服务部署到Web服务器上。...