如何生成webservice接口,供别人调用

问题描述

现在项目有个任务,需要写一个接口供其他厂家调用,工程是用普通的javaweb工程,需要新建个webservice工程吗?有木有大神来指点下,求指导啊

解决方案

解决方案二:

解决方案三:
1、普通类就可以了,不要放在包中(也可以放进包中)2、下载axis2,并把axis2放在tomcat_homewebapps下,再在axis2WEB-INF建立Pojo文件夹,并把1中所编译的class放进该文件夹下3、启动tomcat,访问http://localhost:8080/axis2/services/listServices,你写的接口就应该会出现了
解决方案四:
如何你将类放在包中,就不能按上述2步骤来了,你需要打成**.aar包放进axis2WEB-INFservices下
解决方案五:
引用2楼yufengdxw的回复:

1、普通类就可以了,不要放在包中(也可以放进包中)2、下载axis2,并把axis2放在tomcat_homewebapps下,再在axis2WEB-INF建立Pojo文件夹,并把1中所编译的class放进该文件夹下3、启动tomcat,访问http://localhost:8080/axis2/services/listServices,你写的接口就应该会出现了

能部署到weblogic上吗?
解决方案六:
建议使用CXF框架,发布服务的步骤是第一步:<servlet><servlet-name>cxfServlet</servlet-name><servlet-class>org.apache.cxf.transport.servlet.CXFNonSpringServle</servlet-class><!--如果使用了spring,则使用-CXFServlet-></servlet><servlet-mapping><servlet-name>cxfServlet</servlet-name><url-pattern>/services/*</url-pattern></servlet-mapping>

将上面信息配置到web.xml中第二步:@WebServicepublicinterfaceSimpleWebservice{publicStringsayHello(Stringname);}

publicclassSimpleWebserviceImplimplementsSimpleWebservice{/*(non-Javadoc)*@seeorg.jbeer.sample.bean.service.SimpleWebservice#sayHello(java.lang.String)*/@OverridepublicStringsayHello(Stringname){return"hello"+name;}}

第三步:JaxWsServerFactoryBeanfactory=newJaxWsServerFactoryBean();factory.setAddress(“SimpleWebservice”);factory.setServiceBean(newSimpleWebserviceImpl());factory.setServiceClass(SimpleWebservice.class);factory.create();

如果你当前项目使用了spring,那么使用起来将会更简单了,直接通过spring配置,就可以发布一个服务了。具体你可以百度一下springcxf
解决方案七:
直接定义一个借口罗使用注释方法将服务段的信息@WebService注释中例如:以下代码:packageorg.jsoso.jws.server;importjava.util.ArrayList;importjavax.jws.WebMethod;importjavax.jws.WebParam;importjavax.jws.WebResult;importjavax.jws.WebService;importjavax.jws.WebParam.Mode;importjavax.jws.soap.SOAPBinding;/*提供WebService服务的类*/@WebService(name="Example",targetNamespace="http://www.jsoso.com/wstest",serviceName="Example")@SOAPBinding(style=SOAPBinding.Style.RPC)publicclassExample{privateArrayList<Person>persons=newArrayList<Person>();;/****返回一个字符串*@paramuserName*@return*/@WebMethod(operationName="toSayHello",action="sayHello",exclude=false)@WebResult(name="returnWord")//自定义该方法返回值在WSDL中相关的描述publicStringsayHello(@WebParam(name="userName")StringuserName){return"Hello:"+userName;}/***webservices方法的返回值与参数的类型不能为接口*@paramperson*@return*@throwsHelloException*/@WebMethod(operationName="sayHello",action="sayHello")@WebResult(partName="personList")publicPerson[]sayHello(@WebParam(partName="person",mode=Mode.IN)Personperson,StringuserName)throwsHelloException{if(person==null||person.getName()==null){thrownewHelloException("说hello出错,对像为空。。");}System.out.println(person.getName()+"对"+userName+"说:Hello,我今年"+person.getAge()+"岁");persons.add(person);returnpersons.toArray(newPerson[0]);}}

解决方案八:
jws是JDK定义的webservice标准,基于SOAP的,还有JSR基于REST的,都可以通过注解实现如果考虑开源框架,Asix和xfire是不错的选择
解决方案九:

解决方案十:
用过XFire,用myeclipse创建还比较好用,你可以试试。

时间: 2024-08-03 15:01:09

如何生成webservice接口,供别人调用的相关文章

关于eclipse生成webService 客户端 服务器不能调用问题

问题描述 各位仁兄:预祝新年快乐!问题如下:小弟利用eclipse自带插件生成webService客户端,测试publicstaticvoidmain(String[]args)throwsException没有任何问题(服务端是AXIS2),但是我启动服务后(TOMCAT,框架SSH2),调用同一个客户端就报错了.JobRunShell.run(211)ERROR:JobDEFAULT.ContractWarnNotifythrewanunhandledException:org.spring

php中创建和调用webservice接口示例

  这篇文章主要介绍了php中创建和调用webservice接口示例,包括webservice基本知识.webservice服务端例子.webservice客户端例子,需要的朋友可以参考下 作为开发者来讲,要想写webservice接口或者调用别人的webservice接口,首先需要了解什么是webservice.简单说, WebService就是一些站点开放一些服务出来, 也可以是你自己开发的Service, 也就是一些方法, 通过URL,指定某一个方法名,发出请求,站点里的这个服务(方法),

php中创建和调用webservice接口示例_php实例

作为开发者来讲,要想写webservice接口或者调用别人的webservice接口,首先需要了解什么是webservice.简单说, WebService就是一些站点开放一些服务出来, 也可以是你自己开发的Service, 也就是一些方法, 通过URL,指定某一个方法名,发出请求,站点里的这个服务(方法),接到你的请求,根据传过来的参数,做一些处理,然后把处理后的结果以XML形式返回来给你,你的程序就解析这些XML数据,然后显示出来或做其它操作. 写webservice需要了解:基础的 Web

web service-已知wsdl文件,如何写webservice接口

问题描述 已知wsdl文件,如何写webservice接口 现在别人发了一个wsdl文件和一些接口参数说明给我.请问我如何调用这个接口. wsdl内容大致如下 解决方案 有地址,那么在vs里面项目-添加服务引用,填入地址即可 解决方案二: 根据wsdl2java直接生成客户端,然后调用就行 解决方案三: 这个webservice接口好简单,用RPCServiceClient调用就很方便 参见AXIS2的org.apache.axis2.rpc.client.RPCServiceClient类中的

使用javascriptcore实现供h5调用的native接口

在app开发中使用webview,经常需要从js端调用和原生相关的交互功能.那么这样一层bridge的开发工作具体采用什么方案来实现呢? JS call OC: 方案1: 最古老也是使用最广泛.且跨平台的方案是在页面内嵌入一个iframe,然后通过该iframe触发的webview相关事件来进行hook,从而达到通信的目的. 其中回调方法的传递是通过生成一个id并保存,来回传递id,在js端再通过id获取到对应的fuction实现回调.大名鼎鼎的cordova就是采用了这种方案实现了bridge

java调用webservice接口发送xml报文

问题描述 java调用webservice接口发送xml报文 1.webservice接口是axis1发布的 2.请求报文格式如下 <?xml version="1.0" encoding="gbk"?><SOAP-ENV:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XM

soap-C++调用webservice接口出错,具体如图所示,请大神帮忙~~

问题描述 C++调用webservice接口出错,具体如图所示,请大神帮忙~~ 我已经安装了soap toolkit 3.0 不知道为什么还不行~ 报错如下: ------ 已启动生成: 项目: myclient, 配置: Debug Win32 ------ 1>生成启动时间为 2016/1/6 19:01:21. 1>InitializeBuildStatus: 1> 正在对"Debugmyclient.unsuccessfulbuild"执行 Touch 任务.

java调用https的webservice接口

问题描述 对端系统提供了一个https的webservice接口,并且提供了证书client.jks,和密码,请问我客户端怎么调用这个接口啊?哪个大虾能提供一个调用样例.我看网上大多是这样调用的,我这样调用不行,没有.truststore,是否可以根据jks生成.truststore?publicstaticvoidmain(String[]args)throwsException{System.setProperty("javax.net.ssl.keyStore","te

java调用外部webservice接口

问题描述 哪位高手能提供一个Java调用外部webservice的例子··? 解决方案 解决方案二:网上一搜一大把搜搜这个JAX-WS解决方案三:Publicvoidmain(Stringargs[]){Stringurl="*****";//webservice接口地址Serviceservice=newService();try{Callcall=(Call)service.createCall();call.setTargetEndpointAddress(newURL(url)