问题描述
那位有时间帮我实现一个webservicesA+B的计算啊。
解决方案
解决方案二:
分太少了!自己做啦~~~
解决方案三:
不太清楚楼主的意思,说清楚点呗
解决方案四:
......路过,具体
解决方案五:
用AXSI2开发的一个简单例子:首先写个简单的JAVA类,如下:packagepart;publicclassHello{publicintadd(inta,intb){returna+b;}}表示我开发的这个WEBSERVICE会接受一个名字,然后返回一个echo加名字:编译后放在part文件夹下面,在part同级目录下运行如下命令(当然首先你必须先在电脑上配置好AXIS2)%AXIS2_HOME%binjava2wsdl-cp.-cnpart.Hello-ofHello.wsdl然后会生成一个文件Hello.wsdl,在运行:%AXIS2_HOME%binWSDL2Java-uriHello.wsdl-ppart.skeleton-dadb-s-ss-sd-ssi-obuildservice这样就会生成一些JAVA类(生成了一个build文件夹,JAVA类在这文件夹里),这些类就是服务器端的代码,然后里面有个HelloSkeleton.java,里面会有个方法要你自己处理下,也就是你想实现的加法然后再build文件夹下运行ant(推荐使用1.7.x版本,AXIS2和ant都可以到www.apache.org里面下),然后你就可以在生产的目录里找到Hello.aar文件,把这个文件放到%TOMCAT_HOME%webappsaxis2WEB-INFservices下就可以了,在浏览器里输入http:\localhost:8080axis2,你就会发现里面有个services链接,点进去就会发现hello这个服务。
解决方案六:
用AXSI2开发的一个简单例子:首先写个简单的JAVA类,如下:packagepart;publicclassHello{publicintadd(inta,intb){returna+b;}}表示我开发的这个WEBSERVICE会接受a,b,然后返回一个a+b,:编译后放在part文件夹下面,在part同级目录下运行如下命令(当然首先你必须先在电脑上配置好AXIS2)%AXIS2_HOME%binjava2wsdl-cp.-cnpart.Hello-ofHello.wsdl然后会生成一个文件Hello.wsdl,在运行:%AXIS2_HOME%binWSDL2Java-uriHello.wsdl-ppart.skeleton-dadb-s-ss-sd-ssi-obuildservice这样就会生成一些JAVA类(生成了一个build文件夹,JAVA类在这文件夹里),这些类就是服务器端的代码,然后里面有个HelloSkeleton.java,里面会有个方法要你自己处理下,也就是你想实现的加法然后再build文件夹下运行ant(推荐使用1.7.x版本,AXIS2和ant都可以到www.apache.org里面下),然后你就可以在生产的目录里找到Hello.aar文件,把这个文件放到%TOMCAT_HOME%webappsaxis2WEB-INFservices下就可以了,在浏览器里输入http:\localhost:8080axis2,你就会发现里面有个services链接,点进去就会发现hello这个服务。
解决方案七:
Skeleton里写逻辑
解决方案八:
Skeleton里写逻辑
解决方案九:
新建一个webserviceproject项目testWS25,packagecom.test.client;importjava.net.MalformedURLException;importorg.codehaus.xfire.XFire;importorg.codehaus.xfire.XFireFactory;importorg.codehaus.xfire.client.XFireProxyFactory;importorg.codehaus.xfire.service.Service;importorg.codehaus.xfire.service.binding.ObjectServiceFactory;importcom.test.ws.MathService;publicclassCallXfireWebService_POJO{publicstaticvoidmain(String[]args){ServiceserviceModel=newObjectServiceFactory().create(MathService.class);XFirexfire=XFireFactory.newInstance().getXFire();XFireProxyFactoryfactory=newXFireProxyFactory(xfire);//StringserviceUrl="http://localhost:8090/xfire/services/MathService";StringserviceUrl="http://localhost:8086/testWS25/services/MathService";intp1=115;intp2=4;intp3=9;intp4=240;MathServiceclient=null;try{client=(MathService)factory.create(serviceModel,serviceUrl);}catch(MalformedURLExceptione){System.out.println("Clientcallwebservicehasexception:"+e.toString());}intresult1=(int)client.add(p1,p2);intresult2=(int)client.minus(p3,p4);System.out.println(result1);System.out.println(result2);}}
packagecom.test.ws;publicinterfaceMathService{publiclongadd(intp1,intp2);publiclongminus(intp3,intp4);}
packagecom.test.ws;publicclassMathServiceImplimplementsMathService{publiclongadd(intp1,intp2){System.out.println(p1+p2);returnp1+p2;}publiclongminus(intp3,intp4){System.out.println(p3-p4);returnp3-p4;}}
web.xml:<?xmlversion="1.0"encoding="UTF-8"?><web-appxmlns="http://java.sun.com/xml/ns/j2ee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"version="2.4"xsi:schemaLocation="http://java.sun.com/xml/ns/j2eehttp://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"><servlet><servlet-name>XFireServlet</servlet-name><servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class><load-on-startup>0</load-on-startup></servlet><servlet-mapping><servlet-name>XFireServlet</servlet-name><url-pattern>/services/*</url-pattern></servlet-mapping><welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list></web-app>
<?xmlversion="1.0"encoding="UTF-8"?><beansxmlns="http://xfire.codehaus.org/config/1.0"><service><name>MathService</name><namespace>http://localhost:8090/XFireWebService/MathService</namespace><serviceClass>com.test.ws.MathServiceImpl</serviceClass></service></beans>在项目WebServices文件下的services.xml:
其中:http://localhost:8090/XFireWebService/MathService要改成自己tomcat服务器的端口如8086CallXfireWebService_POJO类里的StringserviceUrl="http://localhost:8086/testWS25/services/MathService";也要改当然,服务是要能启动起来的。不清楚的话,可以Email我:paul_acce@hotmail.com
解决方案十:
在项目WebServices文件下的services.xml:<?xmlversion="1.0"encoding="UTF-8"?><beansxmlns="http://xfire.codehaus.org/config/1.0"><service><name>MathService</name><namespace>http://localhost:8090/XFireWebService/MathService</namespace><serviceClass>com.test.ws.MathServiceImpl</serviceClass></service></beans>
解决方案十一:
运行CallXfireWebService_POJO类里的main()函数