-
CXF自动生成客户端时出现异常10
生成代码是出现WSDLToJava Error: java.lang.IllegalArgumentException: An operation with name [{h
ttp://www.centra.com/CWS}Add] already exists in this service异常什么原因?
问题补充:
如果不是自己写的服务器怎么处理?2009年1月13日 16:08
2个答案 按时间排序 按投票排序
-
采纳的答案
你看一下这个帖子:
http://www.iteye.com/topic/134360
希望对你有帮助。
引用
我猜想你应该是用<jaxws:endpont>标签来发布你的service吧?
只传递serviceBean Object给他,CXF这样会根据你的Impl类去反射,然后去生成wsdl,通过观察你的HibernateEntityDao, 他继承了HibernateGenericDao, 这个类里有重载的get方法, 跟泛型没多大关系..
这里,我有一个work around的方法. 就是不用JAX-WS API,用CXF的API:
JaxWsServerFactoryBean sf = new JaxWsServerFactoryBean();
sf.setServiceClass(CompanyService.class);
sf.setAddress("http://localhost:9001/Hello");
CompanyManager impl = new CompanyManager();
sf.setServiceBean(impl);
sf.create();
你也可以通过spring的配置,标签应该是:<jaxws:server>
<jaxws:server serviceClass="**.CompanyService" serviceBean="#companyManager" address="/companyService">
</jaxws:server>
这样的话,CXF就是通过Interface去生成你的WSDL, 而不是根据你的Impl类去生成wsdl.就不会有重载的问题,如果在你的Interface上有重载的问题,你可以加@WebMethod(operationName="")的方式来解决.
我只测过代码的,配置文件没测过,你需要看cxf的jaxws.xsd来配置..不过我记得是那样的...
2009年1月14日 10:25
相关推荐
当我们谈论“自动生成”CXF客户端时,通常是指利用IDE中的功能,根据服务的WSDL(Web Service Description Language)文档,自动生成对应的客户端代码。在MyEclipse这样的IDE中,这个过程相当直观。以下是具体步骤:...
- **生成客户端代码**:CXF提供 wsdl2java 工具,可以根据WSDL文件自动生成Java客户端 stub类。这些类包含了调用远程服务的方法。 3. **使用CXF生成客户端代码** - **命令行方式**:通过CXF的wsdl2java命令,可以...
Spring会自动管理CXF客户端的生命周期,提供更灵活的控制。 4. **Eclipse开发环境**:Eclipse是广泛使用的Java IDE,具有丰富的插件支持。对于CXF项目,可以安装CXF插件,提供代码生成、调试和部署等功能,使开发...
这一步会自动生成客户端所需的所有类。 3. 创建客户端代理:使用`JAXBContext`和`Service`类来创建Web Service客户端代理,通过代理调用远程服务的方法。 四、调用Web Service 1. 实例化客户端:根据生成的服务接口...
这通常涉及生成服务代理类,这些类可以从WSDL(Web服务描述语言)文件中自动生成。CXF提供了wsdl2java工具来完成这个任务。 2. **配置客户端**:配置客户端的连接参数,如服务地址、认证信息、超时设置等。这些可以...
生成XFire客户端的过程主要是通过反向工程从Web服务的WSDL(Web Service Description Language)文件中自动生成Java客户端代码。WSDL文件定义了Web服务的接口、消息格式、操作和地址等信息。以下是一般步骤: 1. **...
5. **客户端生成**:学习如何使用CXF的工具自动生成客户端代码,以便于调用服务。 6. **安全与认证**:了解CXF支持的安全机制,如WS-Security、OAuth等,以及如何实现用户认证和授权。 7. **异常处理**:学习如何...
5. **错误处理**:CXF生成的客户端代码会自动处理Web服务调用中可能出现的错误,比如HTTP错误代码或SOAPFault。这使得客户端代码更加健壮和易于调试。 6. **安全性**:CXF支持各种安全特性,如基本认证、证书认证、...
- 创建服务代理:使用CXF的`JAXRSClientFactory`,可以生成客户端代理对象,该对象可以直接调用服务端的RESTful接口。 - 调用服务:通过代理对象,客户端可以执行`@GET`、`@POST`等HTTP操作,向服务端发送请求并...
- **Fault**:用于传输错误信息,当请求处理过程中出现异常时,将在此元素中描述错误详情。 SOAP的语法规则强调了XML的使用以及SOAP特定命名空间的遵循,禁止了DTD引用和XML处理指令的包含,这些规则确保了SOAP消息...
- 异常处理:CXF客户端如何处理可能出现的网络错误、服务不可用等问题。 - 安全性:如何在客户端配置安全认证,如WS-Security,以访问需要身份验证的Web服务。 - 性能优化:如何设置连接池、超时时间等参数,提升...
当服务出现错误时,CXF会生成详细的错误报告,并通过SOAP Faults或HTTP响应状态码向客户端传达错误信息。开发者可以通过自定义异常类和错误处理策略来优化这一过程。 总之,Apache CXF笔记涵盖了从基础的Web服务...
1. **创建服务代理**:在Spring配置文件中声明客户端代理bean,CXF会自动生成代理类。 2. **注入服务代理**:在需要调用Web服务的类中,通过@Autowired注解注入服务代理。 3. **调用服务**:通过代理对象调用Web服务...
4. **工具支持**:CXF提供了一套强大的工具,如WSDL(Web Service Description Language)生成器和客户端代码生成器,帮助开发者快速生成服务接口和客户端代码。 5. **扩展性**:CXF具有良好的扩展性,可以集成...
4. **测试Web服务**:掌握CXF提供的测试工具,如cxf-codegen-plugin生成客户端测试代码,以及模拟服务器进行服务测试。 5. **处理异常和错误**:学习如何在CXF中处理服务调用可能出现的异常,以及如何自定义错误...
除了上述两种手动编写代码的方式外,还可以利用工具来自动生成客户端代码,这种方式可以极大地提高开发效率。 1. **工具推荐**: - WsImport:Java SE自带的一个工具,用于从WSDL文件生成客户端代码。 - CXF:一...
开发者只需要定义一个与服务接口匹配的Java接口,XFire会自动生成代理类,使得开发者可以像调用本地方法一样调用远程Web服务。这种方式降低了Web服务调用的复杂性,提高了开发效率。 2. **绑定配置(Binding ...
5. **Web服务客户端生成**:开发者可以利用工具,如Apache CXF、Microsoft .NET的wsdl.exe或svcutil.exe,根据WSDL自动生成对应的客户端代码,简化调用服务的过程。 6. **错误处理和调试**:SOAP响应中可能包含错误...
4. **代码生成工具**:CXF提供了强大的代码生成工具,可以从WSDL(Web Service Definition Language)文件自动生成服务端和客户端代码,简化了开发过程。 5. **集成性**:CXF可以很好地与Spring框架集成,使得配置...
- 这个操作会根据WSDL文件自动生成客户端所需的Java代码,包括代理类和服务客户端类等。 3. **配置客户端**: - 配置客户端的环境,如设置SOAP协议版本、安全设置等。 - 修改生成的代码以适应实际需求,如添加...