`
zhubin215130
  • 浏览: 142348 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

一个根据wsdl生成xfire stub的应用问题

阅读更多
最近在学习用XFire开发webService,遇到点问题请大帮我看看,谢谢
Client主要代码:
                helloClient client = new helloClient();
helloPortType port = client.gethelloHttpPort();
User u = new User();
JAXBElement <String> name = new JAXBElement <String>(new QName("http://service.test.com","value"),String.class,"张三");
u.setName(name);
                //u.getName().getValue();//这句话在这里不会报错,但到服务器上后就出错了,传过去的u不为空,但u.getName()返回空
System.out.println(port.example(u));

接口实现类主要代码:
public String example(User u) {
    return u.getName().getValue();
            //问题就在这里,传过来的u是不为空的,但u.getName()时返回就为空了,而u.getName().getValue将会报错
                道底是哪出错了???
}

aegis.xml:
<?xml version="1.0" encoding="UTF-8"?>
<mappings>
<mapping>
<method name="example">
<parameter index="0" componentType="com.test.service.User" />
</method>
</mapping>
</mappings>
会的朋友请教教我,谢谢了!!!


回复于:2009-07-07 16:05:22
你的错误在于,QName的参数给的不对
在你生成客户端自定义对象的时候,属性的上面有网络空间uri和别名的值,填对了就可以了
对我有用[0]丢个板砖[0]引用举报管理TOP

jq985
(jq985)
等 级:
#11楼 得分:0回复于:2009-07-07 16:07:05
比如生成的客户端User对象的name属性是这样写的
@XmlElementRef(name = "name", namespace = "http://bean", type = JAXBElement.class)
  protected JAXBElement <String> name;
那么你的QName对象必须这样创建
new QName("http://bean","name");
分享到:
评论

相关推荐

    XFire创建WebService服务端和客户端

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

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

    XFire是另一个Java Web服务框架,后来演变为CXF项目的一部分。XFire以其轻量级、高性能和易于使用的特性受到开发者欢迎。与Axis类似,XFire也支持SOAP、WSDL,但更注重XML处理性能和RESTful风格的服务。 1. 发布Web...

    axis1.4开发webservice详细实例

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

    java 调用webservice的几种方法总结

    XFire 是一个基于 Java 的 Webservice 框架,可以用于开发和消费 Webservice。使用 XFire,开发者可以从 JavaBean 中生成 Webservice,也可以从 WSDL 文件中生成 Webservice。 首先,使用 MyEclipse 建立一个 ...

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

    - 服务器端通常会创建一个服务类,继承自由wsdl生成的接口,并实现接口中的方法。 ``` public class MyWebService implements MyWebServiceInterface { @Override public String sayHello(String name) { ...

    较完整的webservice例子

    本资源提供了一个较为完整的Webservice实现案例,它可以帮助我们深入理解Web Service的工作原理以及如何在实际项目中应用。 【描述】:“NULL” 尽管描述为空,但我们可以从标题推测,这个压缩包可能包含一个或多...

    java 调用 web seervice 方法

    Xfire 是一个基于 Java 的 Web Service 框架,它提供了一个简单的方式来调用 Web Service。要使用 Xfire,你需要引入相应的 JAR 包(xfire-all-1.2.4.jar 和 jdom-1.0.jar)。调用 Web Service 可以通过创建一个 ...

    webservices入门程序

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

    java_调用Webservice接口.pdf

    Xfire 是一个 Java 库,提供了 Webservice 的实现和调用功能。使用 Xfire,可以有三种方法来实现 Webservice: 1. 从 JavaBean 中生成 Webservice 2. 从 WSDL 文件中生成 Webservice 3. 手动建立 Webservice 下面...

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

    1. Xfire1.2简介:Xfire是一个轻量级的Web服务框架,它提供了简单的API和直观的配置方式,让开发者能够快速地创建和部署Web服务。 2. Xfire1.2工作原理:Xfire基于Spring框架,利用JAXB(Java Architecture for XML...

    webservice培训.pptx

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

    Java6中实现Web服务

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

    Web_Service开发指南.rar

    Apache CXF是一个开源的Web服务框架,它合并了XFire和Apache Axis2项目,旨在提供一个更强大、更易用的Web服务开发平台。CXF支持多种协议和标准,包括SOAP、REST、WS-*规范等。使用CXF开发Web服务的优点有: 1. 易于...

    跨项目调用webservice接口

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

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

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

Global site tag (gtag.js) - Google Analytics