`
xueyong
  • 浏览: 61268 次
  • 来自: ...
社区版块
存档分类
最新评论

xfire根据wsdl生成stub

    博客分类:
  • jave
阅读更多

1.command line生成client stub
我是在xfire的lib目录(具有所有的xfire依赖jar文件)下执行该命令(确保服务开启),
java -cp xfire-all-1.2.5.jar;activation-1.1.jar;bcprov-jdk15-133.jar;ant.jar;commons-logging-1.0.4.jar;jaxb-api-2.0.jar;jaxb-impl-2.0.1.jar;jaxb-xjc-2.0.1.jar;jaxen-1.1-beta-9.jar;jaxws-api-2.0.jar;jdom-1.0.jar;jmock-1.0.1.jar;jsr173_api-1.0.jar;junit-3.8.1.jar;mail-1.4.jar;opensaml-1.0.1.jar;org.mortbay.jetty-5.1.3.jar;saaj-api-1.3.jar;saaj-impl-1.3.jar;servlet-api-2.3.jar;spring-1.2.6.jar;stax-api-1.0.1.jar;stax-utils-20040917.jar;wsdl4j-1.6.1.jar;wss4j-1.5.1.jar;wstx-asl-3.2.0.jar;xbean-2.2.0.jar;xbean-spring-2.8.jar;xercesImpl-2.6.2.jar;xfire-jsr181-api-1.0-M1.jar;xml-apis-1.0.b2.jar;XmlSchema-1.1.jar;xmlsec-1.3.0.jar org.codehaus.xfire.gen.WsGen -wsdl http://localhost:8080/xfirews/services/MathService?wsdl -o . -p com.wstream.client -overwrite true

各参数说明如下:
-wsdl        : location of wsdl file ( can be any valid url )
-o             : output directory for generated classes
-package   : package where client code will be placed
-binding    : binding to use ( jaxb or xmlbeans )
-overwrite: allows to overwrite previously generated classes  ( without this option, generator will refuse to generate classes if such already exists )


2.使用xfire eclipse plugin
在命令行创建stub很麻烦,用xfire plugin很方便。

安装
在eclipse的help->Search for new features to install->next->Create New Remote Site,
输入名为XFire,site为http://dist.codehaus.org/xfire/update/,确认并选择XFire,接受协议一直到完成。

使用
File->new->other->xfire->code generation from WSDL document
WSDL URL path输入:http://localhost:8080/xfirews/services/BookService?wsdl
输出目录:XFireClient/src
 XFireClient是我创建的一个java工程,把xfire的所有jar加入构建路径,在这个工程里就可以调用生成的stub。
包名:com.ws.mathclient

确认后,仔细查看生成的代码以及包。


3.若生成的代码不在你的测试工程下,请复制到测试工程目录里。


4.测试代码片段如下:

MathServiceClient service = new MathServiceClient();

MathServicePortType portType = service.getMathServiceHttpPort();
int i = portType.add(1, 2);
System.out.println(">>>>>"+i);

不出意外会得到3。

分享到:
评论
2 楼 wdl123 2007-09-12  
那请问一下,如果服务端有用户名密码验证的,在客户端要怎么加入验证,谢谢
1 楼 flair 2007-05-26  
可以使用xfire的ant task

相关推荐

    XFire创建WebService服务端和客户端

    1. **生成客户端代理**:XFire提供了一个工具(如`xfire-proxy-gen`)用于从服务端的WSDL(Web Service Definition Language)文件生成客户端代理类。运行这个工具,指定服务的WSDL URL,它会生成相应的Java客户端...

    Web+Services发布与调用(axis,xfire).doc

    - 使用wsdl2java工具生成客户端 stub 和 skeleton 类。 - 创建客户端对象,通过stub调用Web服务方法。 三、XFire简介 XFire是另一个Java Web服务框架,后来演变为CXF项目的一部分。XFire以其轻量级、高性能和易于...

    较完整的webservice例子

    也可以使用CXF提供的wsdl2java工具,从WSDL生成客户端的Stub代码。 5. **Spring集成**:XFire可以无缝集成到Spring应用上下文中,通过Spring的配置管理服务的生命周期,实现依赖注入,使Web Service的开发更加灵活...

    java 调用webservice的几种方法总结

    使用 XFire,开发者可以从 JavaBean 中生成 Webservice,也可以从 WSDL 文件中生成 Webservice。 首先,使用 MyEclipse 建立一个 Webservice 工程,创建 Webservice 接口和实现类。 ```java public interface ...

    axis1.4开发webservice详细实例

    2. 生成WSDL:然后,使用Axis的`wsdl2java`工具,根据这个Java类生成相应的WSDL(Web Service Definition Language)文件。WSDL文件描述了Web服务的接口和消息格式。 3. 创建服务部署文件(.aar):接下来,我们将...

    webservice客户端与服务器端的实现demo

    - **客户端实现**:获取服务器发布的WSDL文件,使用XFire或Axis提供的工具生成客户端 stub 或 proxy 类。这些类封装了与服务端的交互逻辑。 - **安全配置**:根据需求,配置XFireWSS以启用安全特性,如添加证书、...

    java 调用 web seervice 方法

    要使用 Axis2,你需要下载 Axis2 的相应版本,然后运行 `wsdl2java` 工具,指定 Web Service 的 WSDL 地址,该工具会自动生成客户端的 stub 类和回调处理器类。生成的 stub 类提供了直接调用 Web Service 方法的能力...

    java_调用Webservice接口.pdf

    使用 wsimport 工具可以生成客户端Stub代码,例如: ``` wsimport -p . -keep http://localhost:8080/hello?wsdl ``` 这时,会在当前目录中生成如下文件: * HelloService.java * Hello.java * ObjectFactory.java ...

    两种webService傻瓜式教程+代码+实例

    3. 创建Xfire1.2 Web服务:创建服务类并添加适当的注解,然后配置服务描述文件(wsdl或xsd),最后启动Xfire服务器。 4. 消费Xfire Web服务:Xfire提供了Client API,允许通过Java代码直接调用Web服务。也可以生成...

    webservice培训.pptx

    4. **生成WSDL**: Axis会根据服务类自动生成对应的WSDL文件,描述服务的接口和操作。 5. **客户端调用**:客户端通过解析WSDL,了解如何调用服务。它可以使用 Axis 提供的工具生成客户端 stub 或直接编写代码来...

    webservices入门程序

    1. 创建一个服务代理或客户端 stub,这个代理是根据WSDL文件自动生成的,它封装了与服务端交互的细节。 2. 在Struts2的Action类中,通过服务代理调用Web服务的方法。 3. 结合Struts2的拦截器和结果类型,可以处理...

    跨项目调用webservice接口

    ps:主要解决在webservice中,我们想从另外一个项目调用webservice项目的接口,也就是跨项目调用接口 这里主要用到了xfire wsdl 废话不说了 直接上东西 1. 首先新建一个项目 2. 在src下创建两个文件: a) 第一个是你...

    Java6中实现Web服务

    接下来,可以通过Java的命令行工具(如wsimport)自动生成客户端和服务端的必要文件,包括WSDL描述和客户端的Stub类。服务端代码部署后,可以通过HTTP请求调用sayHello方法,实现Web服务的交互。 除了JAX-WS 2.0,...

    Web_Service开发指南.rar

    3. 调用服务:客户端可以通过生成的Stub类调用服务。 三、XFIE篇 XFIE(XML for Interactive Applications)是IBM推出的一个Web服务框架,主要用于构建和消费Web服务。XFIE支持SOAP和RESTful风格的服务,提供了一种...

    Java远程通讯可选技术及原理

    MINA(Multi-purpose Infrastructure for Network Applications)是一个高性能的网络应用框架,它不定义具体的应用层协议,而是提供了一套低级别的API,开发者可以根据需求实现自己的通信协议。 ESB(Enterprise ...

Global site tag (gtag.js) - Google Analytics