Axis1.x的简单入门实例

axis=1什么时候对列,什么时候对行 这是因为这些计算是沿着行的方向“跨列”进行的,将每行中的元素作为一个集合来计算平均值、求和等。不过,在其他非聚合计算场景,比如数据拼接、对列元素应用复杂的自定义函数并返回多值结果(且以列作为操作单元)等情况下, axis = 1 也可以用于和列相关的操作,重点在于操作的逻辑单元是列方向的元素组合。二维数组有行和列两个维度,当计算平均值时, axis = 1 意味着“跨行”操作。在涉及计算平均值、求和等大多数常见的聚合计算时,在NumPy和pandas中, axis = 1 通常是对行进行操作。 阅读详情

原文:http://www.cnblogs.com/hoojo/archive/2010/12/20/1911357.html

1、在官方网站下载axis的工程(这个等下就有用的)和源码、jar包等,下载地址是:

http://labs.renren.com/apache-mirror//ws/axis/1_4/

2、解压下载的工程或源码(两个中任意一个都可以),解压axis-bin-1.4可以看到大致目录是这样的:

docs是文档、lib是jar包、sample是示例、xmls是当前工程所需的xml、webapps是当前工程的webroot目录;

我们打开webapps目录就可以看到一个axis的文件夹,这个文件夹里面有WEB-INF文件夹和一些页面,将axis复制到你的tomcat的webapps目录下。然后启动tomcat服务,访问http://localhost:8080/axis/,看到下面的解码就说明部署成功了:

以后我们将和这个工程不离不弃,它将在我们的axis1.x的webService中发挥很大的作用!

3、创建我们自己的web工程,这里我新建的AxisWebService;创建好工程后,将刚才解压的axis-bin中的lib的jar包copy到当前工程的lib中;

axis-ant.jar

axis.jar

commons-discovery-0.2.jar

commons-logging-1.0.4.jar

jaxrpc.jar

log4j-1.2.8.jar

saaj.jar

wsdl4j-1.5.1.jar

activation-1.1.jar

mail-1.4.jar

创建webService类文件,代码如下:

复制代码
  
package com.hoo.service; /** * <b>function:</b>jws的axis WebService * @author hoojo * @createDate Dec 15, 2010 17:03:49 PM * @file HelloWorldService.java * @package com.hoo.service * @project AxisWebService * @blog http://blog.youkuaiyun.com/IBM_hoojo * @email hoojo_@126.com * @version 1.0 */ public class HelloWorldService { public String sayHello(String name, int age) { return name + " say : hello world! [axis] my age is " + age; } }
复制代码

4、复制HelloWorldService.java到我们刚才复制的axis文件夹下即可;也就是tomcat下的webapps下的axis下即可;注意:还有重要的一般就是要将这个java文件中的包名去掉,并且将这个文件重命名为HelloWorldService.jws;如果带包名的话,请求后编译的class将会在包路径下,这样我们在全球当前jws的时候就会出现找不到class,详细的你可以到发布在tomcat下的工程看看WEB-INF目录下的jwsClass就一目了然了。

上面的工作完成后,启动tomcat服务器,访问http://localhost:8080/axis/HelloWorldService.jws

你会看到:

There is a Web Service here

Click to see the WSDL

如果你和我看到的是一样的,就证明你已经成功的部署了一个axis1.x的webService。然后我们点击下就可以看到wsdl的xml文件了,内容如下:

复制代码
  
<? xml version="1.0" encoding="UTF-8" ?> - < wsdl:definitions targetNamespace ="http://localhost:8080/axis/HelloWorldService.jws" xmlns:apachesoap ="http://xml.apache.org/xml-soap" xmlns:impl ="http://localhost:8080/axis/HelloWorldService.jws" xmlns:intf ="http://localhost:8080/axis/HelloWorldService.jws" xmlns:soapenc ="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl ="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap ="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd ="http://www.w3.org/2001/XMLSchema" > - <!-- WSDL created by Apache Axis version: 1.4 Built on Apr 22, 2006 (06:55:48 PDT) --> - < wsdl:message name ="sayHelloResponse" > < wsdl:part name ="sayHelloReturn" type ="xsd:string" /> </ wsdl:message > - < wsdl:message name ="sayHelloRequest" > < wsdl:part name ="name" type ="xsd:string" /> < wsdl:part name ="age" type ="xsd:int" /> </ wsdl:message > - < wsdl:portType name ="HelloWorldService" > - < wsdl:operation name ="sayHello" parameterOrder ="name age" > < wsdl:input message ="impl:sayHelloRequest" name ="sayHelloRequest" /> < wsdl:output message ="impl:sayHelloResponse" name ="sayHelloResponse" /> </ wsdl:operation > </ wsdl:portType > - < wsdl:binding name ="HelloWorldServiceSoapBinding" type ="impl:HelloWorldService" > < wsdlsoap:binding style ="rpc" transport ="http://schemas.xmlsoap.org/soap/http" /> - < wsdl:operation name ="sayHello" > < wsdlsoap:operation soapAction ="" /> - < wsdl:input name ="sayHelloRequest" > < wsdlsoap:body encodingStyle ="http://schemas.xmlsoap.org/soap/encoding/" namespace ="http://DefaultNamespace" use ="encoded" /> </ wsdl:input > - < wsdl:output name ="sayHelloResponse" > < wsdlsoap:body encodingStyle ="http://schemas.xmlsoap.org/soap/encoding/" namespace ="http://localhost:8080/axis/HelloWorldService.jws" use ="encoded" /> </ wsdl:output > </ wsdl:operation > </ wsdl:binding > - < wsdl:service name ="HelloWorldServiceService" > - < wsdl:port binding ="impl:HelloWorldServiceSoapBinding" name ="HelloWorldService" > < wsdlsoap:address location ="http://localhost:8080/axis/HelloWorldService.jws" /> </ wsdl:port > </ wsdl:service > </ wsdl:definitions >
复制代码

分析下wsdl的xml文件内容:

targetNamespace=http://localhost:8080/axis/HelloWorldService.jws

是我们部署的webservice命名空间,也就是我们访问的webService路径。

<wsdl:message name="sayHelloResponse">

<wsdl:part name="sayHelloReturn" type="xsd:string" />

</wsdl:message>

是返回值的信息,sayHelloResponse代表响应,即返回值,type是返回值的类型

<wsdl:message name="sayHelloRequest">

<wsdl:part name="name" type="xsd:string" />

<wsdl:part name="age" type="xsd:int" />

</wsdl:message>

请求方法参数信息,sayHelloRequest即请求,part是参数parameter,type是参数的类型

<wsdl:portType name="HelloWorldService">

<wsdl:operation name="sayHello" parameterOrder="name age">

<wsdl:input message="impl:sayHelloRequest" name="sayHelloRequest" />

<wsdl:output message="impl:sayHelloResponse" name="sayHelloResponse" />

</wsdl:operation>

</wsdl:portType>

portType的name是当前webService的名称,operation是一个操作,即可以调用的方法。name就是方法名称了,parameterOrder是参数,input输入即传入参数,output输出即返回的值;

<wsdl:service name="HelloWorldServiceService">

<wsdl:port binding="impl:HelloWorldServiceSoapBinding" name="HelloWorldService">

<wsdlsoap:address location="http://localhost:8080/axis/HelloWorldService.jws" />

</wsdl:port>

</wsdl:service>

webService的名称和绑定的信息,以及访问的url地址。

5、下面编写客户端代码

代码如下:

复制代码
  
package com.hoo.client; import java.rmi.RemoteException; import javax.xml.namespace.QName; import javax.xml.rpc.ServiceException; import org.apache.axis.client.Call; import org.apache.axis.client.Service; public class HelloWorldClient { /** * <b>function:</b>jws axis WebService客户端 * @author hoojo * @createDate 2010-12-15 下午05:10:28 * @param args * @throws ServiceException * @throws RemoteException */ public static void main(String[] args) throws ServiceException, RemoteException { // webService访问地址 // String url = " http://localhost :8080/axis/HelloWorldService.jws"; String url = " http://localhost:8080/AxisWebService/HelloWorldService.jws " ; // 创建服务 Service service = new Service(); // 创建调用句柄 Call call = (Call) service.createCall(); // 设置请求地址 call.setTargetEndpointAddress(url); /** * 设置调用的方法和方法的命名空间; * 因为这里是手动发布到webroot目录下的,所以命名空间和请求地址一致 * 当然null也可以,因为本身它就没有设置命名空间,一般方法的命名空间是 * 包名倒写组成,如com.hoo.service,ns= http://service.hoo.com */ call.setOperationName( new QName( null , " sayHello " )); /** * 用call调用sayHello方法,设置请求的参数,返回的就是返回值了 */ String result = (String) call.invoke( new Object[] { " jack " , 99 }); System.out.println(result); } }
复制代码

分析上面的代码

url是根据xml文件中的wsdlsoap:address location的信息得到的,命名空间和方法名称是根据

复制代码
  
< wsdl:operation name ="sayHello" > < wsdlsoap:operation soapAction ="" /> - < wsdl:input name ="sayHelloRequest" > < wsdlsoap:body encodingStyle ="http://schemas.xmlsoap.org/soap/encoding/" namespace ="http://DefaultNamespace" use ="encoded" /> </ wsdl:input > - < wsdl:output name ="sayHelloResponse" > < wsdlsoap:body encodingStyle ="http://schemas.xmlsoap.org/soap/encoding/" namespace ="http://localhost:8080/axis/HelloWorldJWS.jws" use ="encoded" /> </ wsdl:output >
复制代码

的信息得到的,而请求参数和返回值的详细信息是在

复制代码
  
< wsdl:message name ="sayHelloRequest" > < wsdl:part name ="name" type ="xsd:string" /> < wsdl:part name ="age" type ="xsd:int" /> </ wsdl:message > - < wsdl:message name ="sayHelloResponse" > < wsdl:part name ="sayHelloReturn" type ="xsd:string" /> </ wsdl:message > - < wsdl:portType name ="HelloWorldJWS" > - < wsdl:operation name ="sayHello" parameterOrder ="name age" > < wsdl:input message ="impl:sayHelloRequest" name ="sayHelloRequest" /> < wsdl:output message ="impl:sayHelloResponse" name ="sayHelloResponse" /> </ wsdl:operation > </ wsdl:portType >
复制代码

里可以很详细的看到。

至于代码的call.invoke是java中反射机制,不懂的建议看看jdk文档java.lang.reflect包下的内容。

运行上面的代码就可以看到控制台输出:

jack say : hello world! [axis] my age is 99

好了,axis的就完成了,下面我们不用官方的axis的工程,我们写一个自己的AxisWebService工程,然后发布的tomcat的webapps中看看。

6、刚才copy了lib下的jar包,现在要copy下web.xml中的内容,去掉里面的AdminServlet这个配置,其他的都可保留。

然后像刚才一样,将HelloWorldService.java复制到webroot目录下,去掉包名,并且修改后缀为HelloWorldService.jws即可。(如果有兴趣可以看看,发布在tomcat目录下的当前工程的web-inf目录,看看里面是否多了些东西)最后发布当前web工程,访问http://localhost:8080/AxisWebService/HelloWorldService.jws,如果看到和刚才一样的界面,证明你快成功了。点击链接看到wsdl的xml就成功了。

好了,还没有完。看看web.xml中的配置,你大概就知道为什么了。

web.xml中最主要的文件就是org.apache.axis.transport.http.AxisServlet,它就是webService的中央控制器;即配置jws的后缀也在web.xml中定义的,在看看还有services/*,这就表明上面的访问路径也可以是这样的:http://localhost:8080/AxisWebService/services/HelloWorldService

当然如果要这样写就需要用wsdd的发布方式,详细请看下文!

参考文档:http://ws.apache.org/axis/java/user-guide.html



深入学习Apache Axis1.x调用WebService Apache Axis1.x是早期流行的Web服务框架之一,它的出现将Web服务的概念推向了实际应用阶段。Axis1.x基于SOAP协议,允许开发者在不同平台和编程语言间实现服务的发布、发现、调用。尽管随着时间演进,更先进的框架如Axis2逐步取代了Axis1.x,但了解Axis1.x的工作原理和架构设计,对于理解当前Web服务技术有着不可忽视的作用。Web服务描述语言(WSDL)是用于描述网络服务的一种XML格式。在创建WebService客户端之前,服务接口需要通过WSDL定义好。 阅读详情

相关推荐

ant.jar wsdl4j-1.5.1.jar jaxrpc.jar jasper-jdt.jar

ant.jar wsdl4j-1.5.1.jar jaxrpc.jar jasper-jdt.jar

一、搭建简单的axis web服务

      1、在官方网站下载axis的工程(这个等下就有用的)和源码、jar包等,下载地址是: http://labs.renren.com/apache-mirror//ws/axis/1_4/ 2、解压下载的工程或源码(两个中任意一个都可以),解压axis-bin-1.4可以看到大致目录是这样的:   docs是文档、lib是jar包、sample是示例、xmls是当前工程所需...

weixin_33778778的博客 254

动作识别(三)Win10复现OpenPose1.7.0+ST-GCN代码

动作识别(三)Win10复现OpenPose1.7.0+ST-GCN代码1.Win10系统配置OpenPose1.7.0的Python API 本人最近在研究基于骨架的动作识别方法,有幸看到端到端的ST-GCN算法,于是决定自己复现一下。(具体原理这里不介绍,大家自行查阅,比如Openpose是个啥?ST-GCN又是个啥?) 1.Win10系统配置OpenPose1.7.0的Python API 安装步骤: (1) ...

QIANFANGshiwo的博客 3040

Axis创建webservice客户端和服务端

一、Axis的介绍 Web Service是现在最适合实现SOA的技术,而Axis是实现Web Service的一种技术框架(架构)。 二、Axis的准备条件 所需要的jar包:     axis.jar     jaxrpc.jar    saaj.jar    wsdl4j-1.5.1.jar    commons-discovery-0.2.j

xqhys的博客 736

unity C# 计算3D空间任意多边形面积,距离,角度测量工具

unity C# 计算3D空间任意多边形面积,距离,角度 using UnityEngine; using System.Collections; using System.Collections.Generic; using UnityEngine.UI; using System; /// /// 划线面积,距离,角度 /// public class UnderlinedMeasureTool : MonoBehaviour { /// /// 相机 /// public Camera _c

qq_22972867的博客 2224

大数据课程综合实验案例:网站用户行为分析

大数据课程综合实验案例1 案例简介1.1 案例目的1.2 适用对象1.3 时间安排1.4 预备知识1.5 硬件要求1.6 软件工具1.7 数据集1.8 案例任务1.9 实验步骤2 本地数据上传到数据仓库Hive2.1 实验数据集的下载2.2 数据集的预处理(1)删除文件第一行记录,即字段名称(2)对字段进行预处理(3)导入数据库3 Hive数据分析3.1 操作Hive3.2 简单查询分析3.3 查询条数统计分析3.4 关键字条件查询分析3.4.1 以关键字的存在区间为条件的查询3.4.2 关键字赋予给定值为

weixin_44616879的博客 1万+

Axis 1.X 入门实例

 AXIS是开源的WS运行引擎,是SOAP协议的一个实现。来源于Apache的一个开源项目Apache SOAP.分为1.X 和2.X.两个的体系结构和使用上有较大的区别。 1。X更加稳定一些。它提供了两种发布方式: 即时发布 与 定制发布.(1)下载与安装  下载地址:http://www.apache.org/dyn/closer.cgi/ws/axis/1_4.  如下载axis-bin-1_4.rar  Axis安装要求必须先安装web服务器. 此处采用apache-tomcat-6.0.29. 将

sunhxp的专栏 2513

NIST随机性测试实战:从理论公式到结果解读

本文详细解析了NIST随机性测试的实战应用,从基础测试到高级测试,涵盖频数测试、块频数测试、游程测试等核心方法。通过实际案例和参数设置经验,帮助读者理解如何解读测试结果并排查常见问题,提升随机数生成质量。文章还分享了自动化测试流程和硬件RNG特殊处理技巧,适合密码学和区块链开发者参考。

weixin_29323365的博客 314

java常用jar包(未整理)

Hibernate一共包括了23个jar包,令人眼花缭乱。本文将详细讲解Hibernate每个jar包的作用,便于你在应用中根据自己的需要进行取舍。 下载Hibernate,例如2.0.3稳定版本,解压缩,可以看到一个hibernate2.jar和lib目录下有22个jar包: hibernate2.jar: Hibernate的库,没有什么可说的,必须使用的jar包 cglib

znit2003的专栏 3073

从 SAP Gateway 旧 add-ons 卸载到 SAP S/4HANA 转换的清理路线

摘要: SAP Gateway系统的维护难点往往源于历史遗留组件的堆积,而非OData服务本身的复杂性。早期系统为支持多种服务类型而安装的各类add-ons(如IW_SCS、IW_CNT、GW_CORE等),随着系统升级和团队更替逐渐成为技术负债。自SAP NetWeaver 7.40起,核心功能已整合至SAP_GWFND组件,使架构显著简化。在向S/4HANA迁移时,需重点清理已废弃的add-ons(如IW_SCS、IW_GIL等),但必须谨慎验证其关联服务是否仍被调用。组件清理需结合系统日志和调用链分析

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 423

Android 11多窗口+分屏+APP窗口嵌套TaskView实现原理一

然而随着版本的迭代升级,google对分屏的定制差异化也越来越大,Androd 11的分屏用的是split-screen-primary和split-screen-secondary的方式,在systemui中去实现的,其定制化的灵活度不是很高,很多业务都是放到sustemui或者fw去实现,但是随着版本的升高,后面出现了TaskView来替代了老版本的分屏方式,但是Task的核心原理其实和之前的方式是一样的,TaskView来实现分屏。

qq_18420641的博客 2615

Axis1.x WebService开发指南—目录索引

Axis1.x WebService开发指南Axis的简单入门实例Axis的jws发布WebServiceAxis的wsdd模式发布WebServiceAxis删除wsdd发布过的WebServiceAxis中传递复杂对象和内部类Axis中的handler 、chain 的特性axis调用RMI模式WebServiceAxis中处理异常信息Axis中传递文件信息Axis常用命令介绍Axis 提供的工具和调试Axis 的wsdl生成代码Axis的Header信息操作.Net调用Axis出现的问

hoojo 4269

数学向量空间的对偶空间解析

对偶空间是线性代数的"进阶语法",它不仅深化了我们对向量空间的理解,还为解决实际问题提供了强大工具。用生活类比解释对偶空间的核心概念,打破"抽象数学"的壁垒;建立对偶空间与原向量空间的直观联系,揭示"对偶"的本质;通过数学推导和代码实现,让读者掌握对偶空间的基本运算;展示对偶空间在科学和工程中的应用,体现其理论价值。范围:本文从有限维实向量空间入手(便于理解),逐步扩展到对偶基、双对偶空间,最后简要提及无限维空间的特殊性。

AI天才研究院 879

Axis的简单入门实例

一、搭建简单的axis web服务       1、在官方网站下载axis的工程(这个等下就有用的)和源码、jar包等,下载地址是: http://labs.renren.com/apache-mirror//ws/axis/1_4/ 2、解压下载的工程或源码(两个中任意一个都可以),解压axis-bin-1.4可以看到大致目录是这样的:   docs是文档、lib是jar包、

初来乍到 512

Oracle EBS R12.2.X JSP部署、编译和配置相关操作。

系统环境 RDBMS : 12.1.0.2.0 Oracle Applications : 12.2.6 背景 在某项目上,需要开发JSP相关程序,比如单点登陆、打印二维条码。当前把JSP部署编译以后,访问提示错误:Requested resource or page is not allowed in this site, 通过查SR发现Oracle EBS R12.2.X版本对客制化JSP进行权限控限,需要设置某些配置文件。 实例操作步骤 上传JSP文件 通常上传到$OA_HTML目录或其子目

陈显平的专栏-Oracle EBS 1911

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

关于AXIS1.4实现webservice接口部署的基础实例

Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。它的功能是实现简单易懂的接口交互,相较于传统的Httpclient来说更加方便(相当于对于Httpclient的一层封装),由于这个封装是公共的,并且由于其方便的使用方式(尤其是在IDE中存在相关的webservic

sunsun314的专栏 3484

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

从WSDL到客户端:Apache Axis 1.x的逆向工程艺术

本文深入探讨了Apache Axis 1.x框架下从WSDL文件逆向生成高质量客户端代码的技术方案,涵盖工具链使用、原理剖析及实战优化技巧。重点解析了WSDL与SOAP协议的关系,详细介绍了WSDL2Java工具的应用,并提供了多工具链对比和高级场景处理方案,帮助开发者高效实现WebService客户端开发。

weixin_29278805的博客 678

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Python进阶学习:axis=0和axis=1的区别和用法

🌟 在这篇博客中,我们将深入探索axis=0和axis=1在数据处理中的奥秘。🔍 通过NumPy和Pandas的实例,我们将揭示它们在不同情境下的区别和用法。💡 从基本概念到实际应用场景,让我们一起揭开这两个参数的神秘面纱!🌈 期待你在这个Python进阶之旅中收获满满,与我们一起共同成长!🤝 Python进阶 #axis=0 #axis=1 #NumPy #Pandas #数据处理 #学习之旅

创作高质量博文,分享知识,共同进步! 8272

Axis1.x 兼容接口返回参数变化

前言: 在Axis1.X版本中,org\apache\axis\encoding\ser\BeanDeserializer这个类对于服务端返回的未知参数,采取的处理是抛出异常,中断程序; 而正确的代码逻辑(我们希望的)应该是:跳过,不作为; 这是Axis1.X一个bug,在Axis 2.0、.NET、X-fire等soap引擎中都不存在此问题 解决方法: 有两种方

进步源于总结 991

使用axis1.x DataHandler方式上传文件

axis默认使用http1.0,需要修改为http1.1,同时项目使用httpclient3

zzhqun的专栏 1055

axis1.x and 2.x differences

Axis1.x and Axis2 have evolved from different architectures. Speed - Axis2 is based on the StAX API, whichgives greater speed than the SAX

sony315的专栏 510

SOAP协议的幕后英雄:Apache Axis 1.x的深度解析

本文深入解析了Apache Axis 1.x作为SOAP协议经典实现的技术细节与应用场景。通过WSDL解析、客户端代码生成及核心通信流程剖析,展示了其在企业级Web服务中的关键作用,特别是在需要严格接口契约的传统系统中。文章还探讨了性能优化、安全实践及现代架构迁移策略,为开发者提供全面指导。

weixin_29230059的博客 797

Axis2.x WebService开发

Axis的简单准备 Axis的入门实例 Axis复杂对象类型的WebService Axis的辅助工具发布、调用WebService Axis WebService会话Session的管理 Axis用控制台Dos命令发布WebService Axis跨多个WebService管理Session Axis用Spring的JavaBean发布WebService Axis异步调用Web

安迪的专栏 4987

用Apache axis开发Web服务

 目前Apache 拥有两个版本的axis  axis1.X 系列 和  axis2, axis2  并不是axis1.x的升级版本,而是一个全新的版本,用他们自己的话说就是complete re-design and re-write ,从使用上来讲两个版本的axis也有很较大不同,下面依次介绍一下。 - 显示引用文字 - Axis1.x的安装配置以及简单例子  

单眼皮的猫 1289

推荐axis1.x和axis2.x的资料

axis1.x http://www.cnblogs.com/hoojo/archive/2010/12/20/1911349.html axis2.x http://www.cnblogs.com/hoojo/archive/2011/03/16/1985160.html 不错的学习资料,推荐一下

妈妈说有这么一群人 1118
上一篇: maven2的一些命令说明
下一篇: Java堆和栈的区别
普通网友
博客等级 码龄15年 4粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值