网上有不少 教程提到要 安装Axis插件啊什么的 有的还要把代码转成wsdl或是用wsdl转成代码啊,把这个生成的东东copy到那里, 把这个生成的东东copy到那里再如何如何发布
但是对于大家开发项目的 不可能改一行代码就去生成一次 或怎么怎么部署一下 所以最简单的方式就是把 Axis集成到项目中 这样一来 配置好了 就可以不用那麽多繁琐的操作了也便于调试
嗯 操作如下 其实非常简单 这里参考了这篇文章http://wenku.baidu.com/view/ed459167ddccda38376baf6b.html
1) 首先下载 嗯就下这个就够了 插件什么都去洗洗睡吧
http://axis.apache.org/axis2/java/core/download.cgi 下载那个war包
ok 下载后解压缩如下,然后 先放着不管 一会来用
2)然后新建一个webProject 我起名叫AxisWeb 然后把刚才那些解压的东西开始挑选着 copy到我们自己的项目中来
把axis2-web这个文件夹copy到我们的WebRoot文件夹下
把解压出来的WEB-INF中除了 classes文件夹 通通的copy到我们自己项目的WEB_INF下面
(然后把解压出来WEB-INF/classes下的org文件夹 copy 到我们自己的classes文件夹下myeclipse中看不到classes 到目录中找 貌似不拷也可以 因为网上说拷贝 但是理论上项目刷新后 classes中的 就应该被刷掉了)
3)在WEB-INF下建立一个文件夹 名字为 services然后在他下面建立子文件夹RSService(这个随便起) 叫做META-INF 然后在下面建立一个services.xml 里面的内容接下来说 然后现在的目录结构如下所示
4)services.xml的内容根据你写的服务代码而定
如我写的一个服务接口UserManagerImpl和一个类User
package common.impls; import Model.User; public class UserManagerImpl { public User addUser(){ User user=new User(); user.setName("123"); user.setAge(12); return user; } }
package Model; public class User { private String name; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
<?xml version="1.0" encoding="UTF-8"?> <service name="AxisService"> <description>AxisService</description> <parameter name="ServiceClass"> common.impls.UserManagerImpl </parameter> <operation name="addUser" mep="http://www.w3.org/2004/08/wsdl/in-out"> <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" /> </operation> </service>
浏览器输入 http://localhost:8080/AxisWeb/services/AxisService?wsdl 这就是我们的服务的 其他地方就可以访问了