ZhipSoft.com
    冬去春来
        郑重声明:本Blog纯属个人学习、工作需要,记录相关资料。请不要发表任何有人身攻击的言论,谢谢!!www.ZhipSoft.com
posts - 94,comments - 149,trackbacks - 0

    本文主要描述如何使用Apache开源项目Axis提供的API来实现Web Services。本文中的提到的例子只为了方便本文的描述而提出,有不妥之处请见谅。

    本文的读者应有JAVA web 应用开发基础。应该具有看过WSDLSOAPXML等的基本规范。熟悉Eclipse+MyEclipse开发环境。

    本文可以随意转载使用,但是要保留作者的署名。

一、环境准备

使用Axis来开发Web services 需要准备 web 服务器,Axis API。本文使用的Web container Tomcat5.5, Axis API 采用版本2

1.1软件下载准备

Tomcat下载地址:http://tomcat.apache.org/download-55.cgi#5.5.20

Axis标准包:

http://ftp.wayne.edu/apache/ws/axis2/1_0/axis2-std-1.0-bin.zip

Axis War包:

http://ftp.wayne.edu/apache/ws/axis2/1_0/axis2.war

Axis Eclipse plug-in(代码生成工具和打包工具):

http://apache.justdn.org/ws/axis2/tools/1_0/Axis2_Code_Generator.zip

http://apache.justdn.org/ws/axis2/tools/1_0/Axis2_Service_Archiver.zip

Eclipse+MyEclipse可以到官方网站下载(本文为3.25.0GA

1.2安装

A.首先搭建开发环境,需要将下载到的Eclipse解压缩到一个目录。

B.将下载到的Axis 的两个plug-in解压缩到Eclipse安装目录下的plug-in子目录。

C.安装MyEclipse5.0GA。然后启动MyEclipse,并选择“File->New->Other”可以找到下面的这些Wizards,这些将是本文中用到的很重要的工具。

 

eclipse安装Axis插件后的情况

                             D.下面开始搭建Web Services的部署环境。将下载的

          tomcat报解压缩到一个目录。完成web container

          的安装。

        E.axis2.war包拷贝到tomcat安装目录下的webapps

          目录中。

 F.启动Tomcat(windows 下为TOMCA_HOME/bin中的startup.batLinuxunix环境为startup.sh文件),打开浏览器输入并访问:http://ip:port/axis2来查看。(如果没有进行陪孩子文件的修改此地址应该为http://localhost:8080/axis,如果能看到下面的页面则说明已经安装完成。

 

 

 

验证Axis2 web应用部署

二、Quick Start

环境准备好后,先从一个简单的例子开始。以便对使用Axis来开发Web services的大致流程有个了解。这个例子就是SayHello,请求端输入一个名字字符串,返回的将是一个问候语。

例如:输入了Tom,那么返回的事HiTom.How are you

2.1编写WSDL

A.启动MyEclipse,新建立一个WebAppsFile->New->Project->Web Project,Project Name SayHello,其他保持不改变。

B.选择File->New-Other菜单,进入后找到MyEclipse->Web Services并选择WSDL.

C. 选择“src”目录作为“Enter or select the parent folder”的值,“File name”值给定为SayHello.wsdl。点击“Next”进入下一步。

新建wsdl 

 

D.将目标命名空间设置为“http://ws.tonyzhangcn.org/SayHello/”.在生成代码的时候一般以这个命名空间为package的名字,例如:org.tonyzhangcn.ws.sayhello。这些值可以按需要设置。

设置wsdl属性

 

E.点击“Finish”按钮就可以看到MyEclipse提供的WSDL 设计器的界面了。可以看到设计器为WSDL默认的添加了一个现操作。

  设计器-1

即图中的“NewOperation”。现在将其改名为SayHello,如下图:

 设计器-2

         之后点击设计界面中的“Source”Tab来查看其代码。如下:可以看到我们定义了一个SayHelloWeb Services,她提供了一个SayHello的方法,她能够接受一个String(事实上是tns:SayHelloRequest对象,她对String进行了封装)类型的输入参数SayHelloRequest并返回一个String(事实上是tns:SayHelloResponse对象,她对String进行了封装)类型的SayHelloResponse结果。更多关于WSDL的信息,请参考W3C的规范文档。

 

<?xml version="1.0" encoding="UTF-8"?>

<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://ws.tonyzhangcn.org/SayHello/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="SayHello" targetNamespace="http://ws.tonyzhangcn.org/SayHello/">

<wsdl:types>

<xsd:schema targetNamespace="http://ws.tonyzhangcn.org/SayHello/">

<xsd:element name="SayHelloResponse" type="xsd:string" />

<xsd:element name="SayHelloRequest" type="xsd:string" />

</xsd:schema>

</wsdl:types>

<wsdl:message name="SayHelloResponse">

<wsdl:part element="tns:SayHelloResponse" name="SayHelloResponse" />

</wsdl:message>

<wsdl:message name="SayHelloRequest">

<wsdl:part element="tns:SayHelloRequest" name="SayHelloRequest" />

</wsdl:message>

<wsdl:portType name="SayHello">

<wsdl:operation name="SayHello">

<wsdl:input message="tns:SayHelloRequest" />

<wsdl:output message="tns:SayHelloResponse" />

</wsdl:operation>

</wsdl:portType>

<wsdl:binding name="SayHelloSOAP" type="tns:SayHello">

<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />

<wsdl:operation name="SayHello">

<soap:operation soapAction="http://ws.tonyzhangcn.org/SayHello/NewOperation" />

<wsdl:input>

<soap:body use="literal" />

</wsdl:input>

<wsdl:output>

<soap:body use="literal" />

</wsdl:output>

</wsdl:operation>

</wsdl:binding>

<wsdl:service name="SayHello">

<wsdl:port binding="tns:SayHelloSOAP" name="SayHelloSOAP">

<soap:address location="http://www.example.org/" />

</wsdl:port>

</wsdl:service>

</wsdl:definitions>

至此WSDL的编写已经完成。

2.2WSDL生成Java代码

A.选择菜单“File->New->Other”,从对话框中选取“Axis2 Wizards”下面的“Axis2 Code Generator”.点击“Next”进入下一个页面,保持“Generate java source code from WSDL file”被选中,点击“Next”进入下一步。

B.点击“Browse”来选取存放在src目录下的SayHello.wsdl文件,“Next”进入下一步。设置如下:

Axis2 code generator

 C.点击“next”进入下一个页面,设置“Output path”为本Projectsrc目录。点击“finish”后代在SayHello项目上按F5刷新就可以看到有代码生成好了。但是能看到一堆红“x”,这是由于没有将Axis2jar包放入class path 中以及源代码的package不为org.tonyzhangcn.ws.sayhello引起的。

代码1

 

下面解决这个问题,首先选择“SayHello”项目,并右击选择“Build path->Add External Archives..”,选择上面部署在tomcat中的axis2 web应用WEB-INF/lib目录中的所有jar包。之后右击“src.org.tonyzhangcn.ws.sayhello”项目,选择“Refactor->rename”,做如下修改,并选择OK完成。

代码2

 

这个时候发现test.org.tonyzhangcn.ws.sayhello下面的SayHelloTest.java仍然存在问题。点击此文件中package 关键子前面的红“x”,会提示有两个选项,我们选择下面的那个。

code4

 

选择public class SayHelloTest前的红“x”,选择第一项。

code5

 

进行完这几个改动之后,生成的代码就没有问题了。其中

SayHelloRequestSayHelloResponse是输入输出参数对象。

SayHelloSkeleton是服务端对象,用来编写业务逻辑调用。

SayHelloStub是客户端用来定位endpoint(就是发布的Web Services的地址)的类,客户端根据其提供的方法定位Web服务并发起调用

SayHelloMessageReceiverInOut是一个实现同步调用的web服务信息转换处理类。

Resources目录下的services.xml文件是webservices的描述文件。

SayHelloTest是一个客户端的TestCase示例,用户可以根据这个示例来编写自己的客户端调用类。

2.3编写业务代码

打开SayHelloSKeleton.java文件将其中的实现方法

 

public org.tonyzhangcn.ws.sayhello.SayHelloResponse SayHello(org.tonyzhangcn.ws.sayhello.SayHelloRequest param0)

{

// Todo fill this with the necessary business logic

throw new java.lang.UnsupportedOperationException();

}

 

改为

public org.tonyzhangcn.ws.sayhello.SayHelloResponse SayHello(org.tonyzhangcn.ws.sayhello.SayHelloRequest request)

{

// Todo fill this with the necessary business logic

try

{

SayHelloResponse response = new SayHelloResponse();

response.setSayHelloResponse("Hi,"+request.getSayHelloRequest()+".How are you?");

return response;

}catch(UnsupportedOperationException e)

{

throw e;

}

}

2.4打包

A.选择菜单“File->New->Other”,从对话框中选取“Axis2 Wizards”下面的“Axis2 Services Archive”.点击“Next”进入下一个页面

B.选择编译好的class文件所在目录(本项目应该是WebRoot下面WEB-INF/classes),“Next”进入下一步。

C.选择WSDL文件所在目录,此处为src目录下的SayHello.wsdl文件。“Next”,再“Next”。选择services.xm文件,本文应该是生成再src/resources下面的services.xml文件。之后选取“Generate the services.xml automatically”,然后再点击一下使其变为非选中状态,之后点击“Back”按钮,再点击一次“Next”。(注意:这里本应该不是这么来回折腾的,但是我的机器上只有这样操作finish按钮才能生效。怀疑这是一个bug,如果读到此文的用户没有这种情况,忽略此提示

D.点击“Next”,将记入最后一个页面,此处有两个选项,一个是输出目录一个是处处文件名称。我这里的输出文件名称给的是SayHello。点击“Finish”完成。

 2.5部署

A.将打包好的文件SayHello.jar(或者可以改名为SayHello.aar),拷贝到Tomcat中已经部署的Axis2应用的WEB-INF/services目录下面。

B.启动Tomcat(即点击Tomcat安装目录下的startup.batlinuxunix下执行startup.sh)。

C.打开浏览器,输入http://ipaddress:port/axis2(一般为http://localhost:8080/axis2,并点击其中的“services”链接

testservices

   可以看到SayHello已经被部署。点击SayHello提供的连接可以看到与之对应的WSDL

2.6调用测试

A.修改SayHelloTest.java文件中的方法testSayHello的内容为:

public void testSayHello() throws java.lang.Exception

{

String url="http://localhost:8080/axis2/services/SayHello";

org.tonyzhangcn.ws.sayhello.SayHelloStub stub = new org.tonyzhangcn.ws.sayhello.SayHelloStub(url); // the

org.tonyzhangcn.ws.sayhello.SayHelloRequest request = (org.tonyzhangcn.ws.sayhello.SayHelloRequest) getTestObject(org.tonyzhangcn.ws.sayhello.SayHelloRequest.class);

request.setSayHelloRequest("tonyzhangcn");

System.out.println(stub.SayHello(request).getSayHelloResponse());

// todo Fill in the param14 here

assertNotNull(stub.SayHello(request));

}

B.从菜单中选择“Run>Run as->JUnit Test”

testcase

     可以看到web 服务已经正确的返回了结果。那么,不用TestCase类可以调用WebServices吗?答案是肯定的,我们可以随便些一个带有main方法的类,并仿照SayHelloTest.java中的testSayHello()方法就可以达到调用Web Services的目的了。

 

在我实际操作工程中,还遇到了两个问题:

一个是缺少xalan包中的jar文件,

解决办法:从官网下载,添加进lib中就好了

一个是在自动产生的JUnit Test类中有两个方法,都要实现,

解决办法:可以去掉一个方法。



        本Blog纯属个人学习、工作需要,记录相关资料。请不要发表任何有人身攻击的言论,谢谢! www.zhipsoft.cn
posted on 2007-05-17 22:16 ZhipSoft 阅读(24755) 评论(45)  编辑  收藏 所属分类: Web Servers

FeedBack:
# re: MyEclipse下开发Web Service(Axis)
2007-06-29 09:02 | 过客2
response.setSayHelloResponse("Hi,"+request.getSayHelloRequest()+".How are you?");


我按你的步骤做,提示没有response.setSayHelloResponse这个方法
The method setSayHelloResponse(String) is undefined for the type
SayHelloResponse

是什么原因的?
  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2007-07-06 13:11 | magnate
@过客2
now the method setSayHelloResponse has been replaced by setOut/setIn , u can check it  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis) [未登录]
2007-08-09 17:27 | victor
按照上面的方法走了一遍,还有两个错误,编译不过去

1.SayHelloMessageReceiverInOut类里,
org.apache.axis2.engine.DependencyManager.configureBusinessLogicProvider(obj,msgContext.getOperationContext());提示configureBusinessLogicProvider方法不存在,我看DependencyManager类确实没有这个方法,难道是版本的问题?

2.SayHelloStub类里生成java.lang.Object object = fromOM(getElement(_returnEnv, "document"),org.example.www.sayhello.SayHelloResponse.class,getEnvelopeNamespaces(_returnEnv));代码,但没有getElement()方法,getElement方法怎么写?  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2007-09-06 15:47 | zql
晕,太假了,老是有错  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2007-09-13 15:00 | wangjun
我也碰到类似的问题
1.SayHelloMessageReceiverInOut类里,
org.apache.axis2.engine.DependencyManager.configureBusinessLogicProvider(obj,msgContext.getOperationContext());提示configureBusinessLogicProvider方法不存在,我看DependencyManager类确实没有这个方法,难道是版本的问题?

2.SayHelloStub类里生成java.lang.Object object = fromOM(getElement(_returnEnv, "document"),org.example.www.sayhello.SayHelloResponse.class,getEnvelopeNamespaces(_returnEnv));代码,但没有getElement()方法,getElement方法怎么写?


不知道哦楼主是否有办法解决啊!

如果有的话是否能给我发个邮件
jun.wang@pccw.com  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2007-09-18 16:04 | jjtking
我也是同样的问题,不知道到底错在那里

1.SayHelloMessageReceiverInOut类里,
org.apache.axis2.engine.DependencyManager.configureBusinessLogicProvider(obj,msgContext.getOperationContext());提示configureBusinessLogicProvider方法不存在,我看DependencyManager类确实没有这个方法,难道是版本的问题?

2.SayHelloStub类里生成java.lang.Object object = fromOM(getElement(_returnEnv, "document"),org.example.www.sayhello.SayHelloResponse.class,getEnvelopeNamespaces(_returnEnv));代码,但没有getElement()方法,getElement方法怎么写?


不知道哦楼主是否有办法解决啊!

如果有的话是否能给我发个邮件
jjtking@163.com   回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2007-09-18 16:08 | 老是有问题啦
我也碰到了上面两个问题,不之大如何解决啊,有没有谁能帮忙解答下啊。

我也碰到了上面两个问题,不之大如何解决啊,有没有谁能帮忙解答下啊。

我也碰到了上面两个问题,不之大如何解决啊,有没有谁能帮忙解答下啊。

我也碰到了上面两个问题,不之大如何解决啊,有没有谁能帮忙解答下啊。

我也碰到了上面两个问题,不之大如何解决啊,有没有谁能帮忙解答下啊。  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2007-09-26 15:04 | lddongyu
碰到同样的问题呀,搂主帮帮忙  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2007-10-19 10:56 | 可克
怎么会有nullpointerException异常呢?  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2007-10-26 14:29 | 问题
1.SayHelloMessageReceiverInOut类里,
org.apache.axis2.engine.DependencyManager.configureBusinessLogicProvider(obj,msgContext.getOperationContext());提示configureBusinessLogicProvider方法不存在,我看DependencyManager类确实没有这个方法,难道是版本的问题?

2.SayHelloStub类里生成java.lang.Object object = fromOM(getElement(_returnEnv, "document"),org.example.www.sayhello.SayHelloResponse.class,getEnvelopeNamespaces(_returnEnv));代码,但没有getElement()方法,getElement方法怎么写?

  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2007-12-14 15:37 | 浪子
SayHello.jar在哪里??我找不到
org.apache.axis2.AxisFault: The service cannot be found for the endpoint reference (EPR) /axis2/services   回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2008-03-26 15:46 | xjlinetp
getElement错误是引用的包不对,axis2-kernel-1.0.jar这个包就对了  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis) [未登录]
2008-04-11 13:15 | john
楼主,我在打包的那一步(即最后一个是输出目录一个是输出文件名称时)点击“finish”按钮以后出现一个报错对话框“filesets”。还请楼主指教  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2008-04-13 00:05 | adio
圆满完成!谢谢楼主 !
大家部署的时候一定要细心!
楼主的方法绝对可行!
补充一下,output的element是SayHelloResponse生成的wdsl里总是没有找个xsd:element!本人刚学习,还不知道为什么?
谁明白答复下谢谢!  回复  更多评论
  
# 2
2008-04-29 17:11 | jiangisli
怎么不出来回复一下,大家都是类似的情况!!
  回复  更多评论
  
# 2
2008-04-29 17:27 | jiangsili
我还多了一个SayHello.java文件
你上面是5个,我上多了一个,六个了
怎么回事  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2008-04-30 14:54 | OverLords
又一个圆满完成的,谢谢楼主 !
部署的时候如果不注意某些细节的话铁定出错。  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2008-05-08 12:53 | 小瓶子
太感谢了,没用问题,很多天前就想看了,可是一直没有看到合适的文章....  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2008-05-08 14:36 | 小瓶子
很想知道有多个方法和身份验证怎么开发,期待大家的回答....  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2008-05-13 13:59 | waterblue
我在打包的那一步(即最后一个是输出目录一个是输出文件名称时)点击“finish”按钮以后出现一个报错对话框“filesets”。还请指教  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2008-05-16 17:55 | tangtang
搂主强烈建议把打包这一步的图片传上来,我也遇到filesets问题,不知道怎么解决。  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2008-05-16 17:57 | tangtang
我也碰到这个问题了,你要解决了请告诉我怎么解决的qq:414139396  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2008-05-17 16:13 | tangtang
打包的时候最后提示:filesets 问题到底是怎么回事,帮帮忙给解释下好吗?谢谢
打包的时候最后提示:filesets 问题到底是怎么回事,帮帮忙给解释下好吗?谢谢
打包的时候最后提示:filesets 问题到底是怎么回事,帮帮忙给解释下好吗?谢谢
打包的时候最后提示:filesets 问题到底是怎么回事,帮帮忙给解释下好吗?谢谢
打包的时候最后提示:filesets 问题到底是怎么回事,帮帮忙给解释下好吗?谢谢
打包的时候最后提示:filesets 问题到底是怎么回事,帮帮忙给解释下好吗?谢谢  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2008-05-19 08:49 | tangtang
“filesets”的问题解决了,现在把原因告诉碰到同样问题的朋友。我用的是tomcat6。主要原因是因为eclipse的两个插件的版本的是,我换成:1.3版本就能通过了。希望遇到同样问题的朋友可以参考一下。
  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2008-06-05 09:46 | xulong
解决了 “configureBusinessLogicProvider方法不存在”问题的兄台请把解决的方法贴出来啊,不胜感激!  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2008-07-07 17:13 | QOO
@tangtang
“filesets”的问题解决了,现在把原因告诉碰到同样问题的朋友。我用的是tomcat6。主要原因是因为eclipse的两个插件的版本的是,我换成:1.3版本就能通过了。希望遇到同样问题的朋友可以参考一下。
1.3 <- 是指plugins 或是 JDK? 因為我也是遇到相同的問題,  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2009-03-10 23:14 | ava
能再问个问题吗:我用浏览器能查看ws的wsdl,但是用客户端调用时报如下错误
org.apache.axis2.AxisFault: The service cannot be found for the endpoint reference (EPR) /axis2/services   回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2009-04-07 15:37 | eclip
Error: org.apache.axis2.deployment.DeploymentException: A ClassNotFoundException error occurred in loading the message receiver org.example.www.sayhello.SayHelloMessageReceiverInOut 出现这样错误,该怎么解决啊?楼主  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2009-04-14 22:58 | dabing
1.SayHelloMessageReceiverInOut类里,
org.apache.axis2.engine.DependencyManager.configureBusinessLogicProvider(obj,msgContext.getOperationContext());提示configureBusinessLogicProvider方法不存在,我看DependencyManager类确实没有这个方法,难道是版本的问题?

2.SayHelloStub类里生成java.lang.Object object = fromOM(getElement(_returnEnv, "document"),org.example.www.sayhello.SayHelloResponse.class,getEnvelopeNamespaces(_returnEnv));代码,但没有getElement()方法,getElement方法怎么写?


不知道哦楼主是否有办法解决啊!
---------------------------------------------------------
我开始也遇到这两个问题,后来分析了一下,是引用jar包的时候引用了axis2-1.4.1中lib下的所有jar包,所以有些方法已经过时或者已经被删除了,所以引用axis2-1.0中lib下的jar包到工程下,就不会出现上述问题了。
另外,由于博主的文章是07年的,比较早,我现在按照博主的文章去下载axis安装包时,已经找不到1.0的war文件了,只有bin标准版,所以我就下载了1.4.1的war文件,并把它部署到tomcat中,然后引用jar包时,引用的是1.0标准版中的lib文件夹下的jar包,就没啥问题了。
  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2009-04-14 23:16 | dabing
我在打包的那一步(即最后一个是输出目录一个是输出文件名称时)点击“finish”按钮以后出现一个报错对话框“filesets”。还请指教
--------------------------------------------------------------
这个问题的原因,就是你使用了Axis_Service_Archiver_1.0.0这个打包工具来打包,改用Axis2_Service_Archiver_1.3.0来打包,就ok了!  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2009-04-15 01:33 | dabing
使用Axis2 Code Generator时产生InvocationTargetException 的解决办法

Axis2 Code Generator作为一个在Eclipse中使用的能自动根据WSDL生成Java文件以及根据Java文件生成WSDL的插件,安装好后使用往往会出现InvocationTargetException异常,这时可尝试:

1. 将backport-util-concurrent-3.1.jar从 $AXIS2_HOME\lib (我的是:D:\Tomcat 5.5\webapps\axis2\WEB-INF\lib) 处拷贝至 $ECLIPSE_HOME\plugins\Axis2_Codegen_Wizard_1.3.0\lib;

2. 编辑文件 $ECLIPSE_HOME\plugins\Axis2_Codegen_Wizard_1.3.0\plugin.xml, 在其中runtime元素中增加内容:

<library name="lib/backport-util-concurrent-3.1.jar">
<export name="*"/>
</library>

3. 将 $workspace位置\.metadata\.plugins (我的是:D:\Workbench\.metadata\.plugins)下目录 Axis2_Codegen_Wizard 删除

4. 在命令行下切换至$ECLIPSE_HOME (我的是:D:\MyEclipse 5.5.1 GA\eclipse)目录,然后执行:

eclipse -clear

就OK啦!  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2009-04-15 01:35 | dabing
啊,半夜了,终于挑通了!开心ing~洗洗睡去啦~  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis) [未登录]
2009-04-27 23:20 | zeng
filesets到底怎么回事?不能用AXIS2.0,要用1.4吗?  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2009-04-29 18:55 | haozhengfang
谢谢啦 调通,继续努力学习!大家要注意细节的东西啊  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2009-05-04 15:50 | dabing
@zeng
出现filesets问题是因为版本太老的缘故,作者当时用的是AXIS1.0,而且代码生成工具也用的老版本的工具。
我下载的是AXIS1.4版本,工具也是一起下的,2.0的没用过,你用的时候灵活些,不用字字都照着博主的文章做,博主只是提供了一个大致的流程,出现的各种具体问题,希望大家能自己查找原因,百度和谷歌就是老师嘛,这样也能学习到不少东西呢。一起努力!  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2009-09-06 19:38 | @陈婧
天啦,终于给让我弄出来了。吃晚饭去  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2009-12-03 09:21 | 笔记本
plug in 无法下载啊  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2010-06-02 14:07 | jy
感谢楼主这么好的文章,解决了我很多问题,调了n次,终于调通了。  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2010-06-27 09:50 | yvee
你好。2.4D步骤(打包),一个是Service name,这个是随便自己写的,对吗?另一个是Class name,这个名字写什么呢?我是随便写的。但是最后finish按钮无效。根本无法点击。期待解决  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2010-12-13 19:17 | zhangwei
@eclip
大哥,我也遇到了这个问题,你调出来了没有  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2011-05-13 22:31 | cn00568347
能帮我解释一下  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
2011-05-13 22:33 | cn00568347
能帮我解释一下
http://topic.csdn.net/u/20110512/22/85f2435e-b200-452b-a889-dd1468419aa0.html
里的两个问题吗,是按照你的方法做的,但不知道错在哪里,谢谢  回复  更多评论
  
# re: MyEclipse下开发Web Service(Axis)
# 重要问题
2011-10-15 08:23 | jsqfzhl
在sayHellotest类下需要加上下面一个类才能运行:
public org.apache.axis2.databinding.ADBBean getTestObject(
java.lang.Class type) throws java.lang.Exception {
return (org.apache.axis2.databinding.ADBBean) type.newInstance();
}  回复  更多评论
  
# 重要问题
2011-10-15 08:26 | jsqfzhl
在SayHelloTest.java类下需要加上下面一个类才能运行:



public org.apache.axis2.databinding.ADBBean getTestObject(
java.lang.Class type) throws java.lang.Exception {
return (org.apache.axis2.databinding.ADBBean) type.newInstance();
}  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航: