WebService初始手

    技术2022-05-20  33

    一直以来,总是听说WebService,但是总是抽不出来时间来研究。这两天闲下来了,就仔细研究了一番。

    首先,说一下环境:

    Tomcat 5.5.28/Tomcat 6.0.29

    axis-bin-1_4.zip

    Myeclipse 6.5

    注意:

    axis-解压以后,仅仅有以下几个文件:

    axis.jar axis-ant.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.jar

    mail.jar

     

    我提供的附件包之中存在完整的jar文件,下载附件包以后,完全可以放心的去使用。

     

    传统方法就是将axis-bin-1_4.zip解压,然后将axis/webapps/axis文件包拷到tomcat_home/webapps 下,然后启动tomcat服务器,在浏览器中输入

    http://localhost:8080/axis/

    即可访问。那是axis提供的访问方法,相信很多初学者像我一样,想自己搭建一个自己的服务。

    当我按照网上写的方法,把所有的jws文件放到axis文件夹下事,访问也成功,但是无论怎么做,客户端总是不编译不成功。这就是axis环境配置的弊端,太麻烦,而且还要求tomcat 、jdk、axis三个classpath配置均要正确,一个出错都通不过。我配置了好长时间,总是无法成功,所以,我想到了一个方法,就是将自己写的axis文件夹放到tomcat上,然后将Myeclipse6.5启动,创建一个web项目,然后倒入axis中的所有的jar文件,然后在Myeclipse中进行编译,运行客户端,一切正常。呵呵……总算有点成果。

    好了废话不多说了,贴出代码以及运行图示,所有所需要的文件,均在附件之中,只需要下载使用即可。

     

    首先,下载附件包,然后解压,将axis文件包解压出来,将axis文件包拷贝到tomcat中,运行tomcat,在地址栏中输入:

    http://localhost:8080/axis/wsTestService.jws

    效果图如下:

     

    点击链接以后,出现如下界面:

     

     

     

     

    看到这些界面,说明webservice服务已经成功,下面来写客户端。

    在写客户端的时候,我一直出错,主要是因为classpath配置总是出错。索性我就使用IDE进行编译以及运行。

    打开MyEclipse6.5,创建一个项目,然后将下面代码粘贴上,

    import org.apache.axis.client.Call; import org.apache.axis.client.Service; public class wsTestClient { public static void main(String args[]) { System.out.println("Start invoking"); try { String strUri="http://localhost:8080/axis/wsTestService.jws"; Service service = new Service(); Call call = (Call) service.createCall(); call.setTargetEndpointAddress(new java.net.URL(strUri)); call.setOperationName("getName"); String ret = "" + call.invoke(new Object[] {}); System.out.println("I am " + ret + "."); call.setOperationName("getAge"); String age = "" + call.invoke(new Object[]{}); System.out.println("age:--->" + age); } catch (Exception e) { System.err.println(e.toString()); } System.out.println("Finished the invoking."); } }

    然后将刚才的axis/WEB-INF/lib下的所有的jar全部倒入到刚刚创建的项目中,运行程序,运行之前,要保证Tomcat已经启动,运行的界面如下:

     

    当你看到console窗口中出现图上的结果之后,说明WebService已经创建成功。具体的高级应用我暂时还没有研究,呵呵……这种方法省去了好多的classpath的配置问题,哪些问题有的时候是很烦人,也是没有意思的浪费时间的事情。Ok,先这样吧。

     

    附件地址:

    http://download.csdn.net/source/3054991

     


    最新回复(0)