论坛首页 Java企业应用论坛

手把手教你用axis创建自己的webservice(五)

浏览 21442 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-03-05  
SOA

 好了现在我们将webservice的实现代码发布到tomcataxis web应用中。如将你的代码拷贝到axis/WEB-INF/classes<o:p></o:p>

进入你的deploy.wsdd所在目录。<o:p></o:p>

cd C:\tomcat5\webapps\axis\WEB-INF\classes\com\yy\ws<o:p></o:p>

输入如下命令:<o:p></o:p>

C:\tomcat5\webapps\axis\WEB-INF\classes\com\yy\ws>   java     org.apache.axis.client.AdminClient  deploy.wsdd<o:p></o:p>

AdminClient  -一个axis发布工具,会自动地将你的webservice发布到WEB-INF下的server-config.wsdd文件中。如果显示:<o:p></o:p>

Processing file deploy.wsdd
<Admin>Done processing</Admin><o:p></o:p>

则表示发布成功!<o:p></o:p>

       好了,现在我们已经完成了创建和发布过程,接下来我们来进行最后一步工作——调用我们写的webservice!<o:p></o:p>

      <o:p></o:p>

java 代码<o:p></o:p>

1.          package com.yy.ws.test;   <o:p></o:p>

2.            <o:p></o:p>

3.          import java.net.MalformedURLException;   <o:p></o:p>

4.          import java.rmi.RemoteException;   <o:p></o:p>

5.            <o:p></o:p>

6.          import javax.xml.rpc.ServiceException;   <o:p></o:p>

7.            <o:p></o:p>

8.          import com.yy.ws.ClientRequest;   <o:p></o:p>

9.          import com.yy.ws.MobileBoss;   <o:p></o:p>

10.       import com.yy.ws.MobileBossService;   <o:p></o:p>

11.       import com.yy.ws.MobileBossServiceLocator;   <o:p></o:p>

12.       import com.yy.ws.ServerResponse;   <o:p></o:p>

13.         <o:p></o:p>

14.       public class Test {   <o:p></o:p>

15.           public static void main(String args[]) throws ServiceException, MalformedURLException, RemoteException{   <o:p></o:p>

16.               ClientRequest req = new ClientRequest();   <o:p></o:p>

17.               req.setAmount(1000);   <o:p></o:p>

18.               req.setOpType("charge");   <o:p></o:p>

19.               req.setPhoneNumber("13912345678");   <o:p></o:p>

20.               MobileBossService sl = new MobileBossServiceLocator();   <o:p></o:p>

21.               //URL url = new URL("http://localhost:8080/axis/services/MobileBoss");   <o:p></o:p>

22.               //s.getMobileBoss(url);   <o:p></o:p>

23.               MobileBoss mb = sl.getMobileBoss();//default port   <o:p></o:p>

24.               ServerResponse resp = mb.charge(req);   <o:p></o:p>

25.               System.out.println("client result:"+resp.getResultCode()+"\nclient message:"+resp.getMessage());   <o:p></o:p>

26.           }   <o:p></o:p>

27.       }   <o:p></o:p>

 结果如下:<o:p></o:p>

服务器端显示:<o:p></o:p>

13912345678|charge|1000
13912345678is charged successfully!<o:p></o:p>

客户端显示:<o:p></o:p>

client result:8888<o:p></o:p>

client message:13912345678|charge|1000<o:p></o:p>

      服务器段成功返回消息,大功告成!不是很难吧?!这篇文章的所有代码我都测试过,全部可以直接使用。希望能够对大家有所帮助。<o:p></o:p>

   发表时间:2007-03-27  
用MyEclipse5.0是不是可以简化开发啊!我看他里面代有关于webservice的开发,不过不会用没有用过!呵呵..
0 请登录后投票
   发表时间:2007-04-20  
引用
用MyEclipse5.0是不是可以简化开发啊!我看他里面代有关于webservice的开发,不过不会用没有用过!呵呵..

楼主为什么不在Myeclipse下开发呢?为什么还要配classpath之类的,多麻烦
0 请登录后投票
   发表时间:2007-04-21  
作者写的很明白。我只是接触一些ws的概念,还从没有实践过,不过看完这几篇文章,已经可以自己来做一个简单的例子了。
至于用什么工具开发,不值一提。入门的例子最好用最简单的工具。
0 请登录后投票
   发表时间:2007-04-22  
MobileBossServiceLocator()

是用来做什么的啊!
0 请登录后投票
   发表时间:2007-06-07  
我在执行java     org.apache.axis.client.AdminClient  deploy.wsdd
的时候发生错误:

Exception: AxisFault
faultCode: {http://xml.apache.org/axis/}HTTP
faultSubcode:
faultString: (404)/axis/services/AdminService
faultActor:
faultNode:
faultDetail:
        {}:return code:  404


可以看到是没有找到:/axis/services/AdminService
但是我没有在deploy.wsdd里找到哪里有设置/axis/services/AdminService
LZ或者路过的高手给分析一下发生这种错误都可能是哪些原因,谢谢.
0 请登录后投票
   发表时间:2007-06-07  
自问自答:
java org.apache.axis.client.AdminClient -lhttp://地址:端口/context模块/services/AdminService deploy.wsdd
0 请登录后投票
   发表时间:2007-06-07  
我发现axis1.4和jfreechart0.9.11在同一个工程的话,启动web服务时会报错,不知道有没有人碰到过同样的问题,我的解决办法是把jfreechart里的gnujaxp.jar删掉.
0 请登录后投票
   发表时间:2007-06-12  
楼主的连载很好,对新手很有用,我更希望看到楼主在实际使用过程中遇到的问题及解决方法与大家一起分享一下,这样我觉得会更好
0 请登录后投票
   发表时间:2007-07-12  
在你的帮助下第一次尝试axis例子已经发布成功:),axis的官方文档其实也非常详细。使用axis的自带工具要注意一下classpath。
 

   


0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics