`
joy2everyone
  • 浏览: 136146 次
  • 性别: Icon_minigender_1
  • 来自: ...
社区版块
存档分类
最新评论

java webservice wsdl2java error

阅读更多
使用cxf wsdl2java或javax wsimport工具的时候,可能会遇到关于生成的Response类文件名冲突的问题

WSDLToJava Error: Thrown by JAXB : A class/interface with the same name "***" is already in use. Use a class customization to resolve this conflict.


目前可选择的方案:
1.使用-autoNameResolution自动处理
wsdl2java -autoNameResolution http://hello.joy2everyone.com/yourWebService?wsdl

or

wsimport -p com.test.client -keep http://hello.joy2everyone.com/yourWebService?wsdl -B-XautoNameResolution

我所经历的默认环境下是在同文件名上增加数字编号以命名Response文件,
**Response.java, **Response2.java,这种情况不是很好

2.使用自定义bindings,详细可看sun webservice文档

我发现,其实可以避免这个冲突的发生,

例如:

public interface ValidateCCService
    @WebMethod
    @WebResult(name = "response")
    public ValidateCCResponse validateCC(@WebParam(name = "request")ValidateCCRequest request);


这个情况下定义的方法名,如果使用工具生成客户端代码,很可能存在Response冲突,因为定义的wsdl中会有一个关于接口方法的message

<wsdl:message name="validateCCResponse">
</wsdl:message>

方法名定义的message与接口定义返回的ValidateCCResponse,在工具生成客户端代码时就会产生命名冲突。

但是通过更改接口方法名为:

public interface ValidateCCService
    @WebMethod
    @WebResult(name = "response")
    public ValidateCCResponse validate(@WebParam(name = "request")ValidateCCRequest request);


即可解决该冲突,

以上为自己的经验,在此分享下,做下笔记,也希望对大家有帮助,如有错误或更好打方法的,大家分享下!



分享到:
评论

相关推荐

    Java WebService 简单实例-客户端TheClient.rar

    Java WebService 简单实例 http://blog.csdn.net/kingmax54212008/article/details/49764401 前言:朋友们开始以下教程前,请先看第五大点的注意事项,以避免不必要的重复操作。 一、准备工作(以下为本实例...

    php调用java写的webservice

    2. **调用服务方法**:通过SoapClient对象,可以像调用本地函数一样调用Java Web服务的方法。例如,如果Java服务有一个名为`calculate`的方法,我们可以这样调用: ```php $result = $soapClient-&gt;calculate($...

    Linux下C gsoap client访问java webservice server

    2. 加载WSDL:使用`soap_wsdl Binding Style`加载WSDL文件,例如:`soap-&gt;wsdl = "service.wsdl";` 3. 调用Web服务:通过调用生成的函数,如`serviceSoap::method_name(args)`,传递必要的参数。 4. 错误处理:检查...

    QT环境下Webservice服务调用,服务器端是在Java环境下

    在Java环境中,可以通过使用如Apache CXF或Axis2等框架来创建和部署Web服务。 在QT环境下调用Java Web服务,首先需要了解QT的网络编程库,特别是QNetworkAccessManager和QNetworkReply这两个关键类。...

    Java WebService 简单实例 - 服务器端TheService.rar

    Java WebService 简单实例 http://blog.csdn.net/kingmax54212008/article/details/49764401 前言:朋友们开始以下教程前,请先看第五大点的注意事项,以避免不必要的重复操作。 一、准备工作(以下为本实例...

    java利用webservice发布服务定义.pdf

    Java Web Service 是一种基于WSDL(Web服务描述语言)和SOAP(简单对象访问协议)的规范,用于构建可互操作的、跨平台的网络服务。Apache CXF 是一个开源的Java框架,它允许开发者创建和消费Web服务。下面将详细解释...

    java调用net开发的webservice实例

    java调用net开发的webservice实例下载 问题终于解决了,之前加上?wsdl的时候报如下错: - I/O exception (java.net.ConnectException) caught when processing request: Connection timed out: connect - Retrying ...

    axis2搭建webService并包含android调用此WebService服务案例

    2. 在项目中新建一个包(例如edu.sjtu.webservice),并在其中创建`CalculateService.java`,这个类将包含webService的业务逻辑。例如: ```java package edu.sjtu.webservice; public class CalculateService { ...

    PHP调用JAVA的WebService简单实例

    在本文中,我们将探讨如何使用PHP调用由JAVA编写的WebService。这涉及到两个主要部分:服务端(JAVA)和客户端(PHP)。让我们深入了解每个部分。 首先,服务端使用JAVA编程语言,具体是AXIS-1.4作为SOAP(简单对象...

    axis2调用WebService详细说明

    - 使用`wsdl2java.bat`脚本自动生成客户端代码。该脚本位于`axis2-1.4\bin`目录下,命令格式如下: ```bash wsdl2java.bat -uri http://www.webxml.com.cn/WebServices/IpAddressSearchWebService.asmx?wsdl -p ws...

    CXF Web Service & client

    同时,CXF提供了一系列工具,如wsdl2java(WSDL到Java代码的生成器)和cxf-codegen-plugin(Maven插件,用于代码生成)。 ### 7. 集成与部署 CXF可轻松与Spring框架集成,通过Spring配置文件管理服务和客户端实例。...

    基于JQuery的访问WebService的代码(可访问Java[Xfire])

    在本文中,我们将探讨如何使用jQuery来访问遵循SOAP协议的WebService,特别地是与Java的Xfire框架集成的Web服务。通常,许多示例都使用JSON格式传递参数,但请注意,JSON并不适用于所有类型的Web服务,尤其是那些...

    使用javascript调用webservice示例.pdf

    接着,`ajaxRequest()`函数创建了一个对象`op`,包含了请求完成后的处理函数`showResponse`和错误处理函数`showError`。 `WebService`类是处理调用的核心。它包含了Web服务的URL、方法名以及请求选项。在`...

    c#调用j2ee webservice 超详细 超傻瓜教程

    2. J2EE(Java 2 Platform, Enterprise Edition):Java平台的企业版,用于构建分布式、多层的企业级应用程序,包括Web服务。 3. WebService:基于标准的、平台无关的接口,允许不同系统间进行数据交换。 二、C#...

    JAX-WS 实现WebService发布

    JAX-WS还提供了工具,如wsimport,可以从WSDL生成Java客户端存根类,使得调用Web服务就像调用本地方法一样简单。例如: ```bash wsimport -keep -verbose -s src -p ...

    javascrip调webservice

    JAX-WS (Java API for XML Web Services) 是Java平台上的WebService实现标准之一,它提供了一种简单的方式来创建和消费Web服务。JAX-WS支持两种主要的服务端点:SOAP Web服务和RESTful Web服务。在使用JAX-WS时,...

    flex3 java 通信

    2. **BlazeDS**:BlazeDS是Adobe提供的一个免费的服务器端组件,它可以将Java数据和消息服务暴露给Flex客户端。它支持AMF协议,使Flex3应用能够轻松地与Java后端进行双向通信。 3. **HTTP Service**:除了AMF之外,...

Global site tag (gtag.js) - Google Analytics