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

CXF wsdl2java

    博客分类:
  • CXF
 
阅读更多
wsdl2java -frontend jaxws21 -p com.monica.bussiness.ticket.service -d d:/build http://localhost:8081/AWS/tktDataExportToKd?wsdl

wsdl2java -frontend jaxws21 -p com.cxf.esb.wsdl2java -d src -client OrderService.wsdl


1、下载apache-cxf-2.6.2在环境变量中配置CXF_HOME ,在PATH中加入%CXF_HOME%\bin

2、输入cmd 进入控制窗口,输入wsdl2java看是否配置成功

3、参考它的文档看这个工具的具体参数的用法
wsdl2java用法:
wsdl2java -p com -d src -all  aa.wsdl
-p  指定其wsdl的命名空间,也就是要生成代码的包名:
-d  指定要产生代码所在目录
-client 生成客户端测试web service的代码
-server 生成服务器启动web  service的代码
-impl 生成web service的实现代码
-ant  生成build.xml文件
-all 生成所有开始端点代码:types,service proxy,,service interface, server mainline, client mainline, implementation object, and an Ant build.xml file.


常见错误:


CXF Service(URL, QName, WebServiceFeature[]) getPort ... is undefined 
关于题目:Service(URL, QName, WebServiceFeature[]) is undefined

网上的资料少,就这个:

原因是CXF自带的javax.xml.service 版本高过 jdk的javax.xml.service。

一个解决办法是:

在使用wsdl2java时,加入参数 -frontend jaxws21


但是重新生成 代码之后 getPort 还会有错误。

如果你用的是myeclipse 那么 尝试一下的办法:


将myeclipse JAVA EE 5 Libraries 删掉 然后再加上。就不会报错了。

myeclipse 的包加载是有顺序的,看下项目下的 .classpath 就明白了。其实我们需要的东西在CXF 包里面都有了。只是myeclipse开始的时候默认加载的是javaee.jar





CXF关于wsdl2java 生成 service class 构造器报错的解决办法
I'm marking this as "not a problem" as the generated code is correct per spec. CXF 2.3.2 is a JAX-WS 2.2 compliant implementation and thus must generate code compliant to the JAX-WS 2.2 specification which requires those constructors like that. HOWEVER, to compile them on Java 6, you will likely need to endorse the 2.2 jaxws-api jar (and likely the jaxb-api jar as well). See the 2.3 migration guide: http://cxf.apache.org/docs/23-migration-guide.html for some details about the endorsed stuff.

The alternative workaround, right now, is to delete the api jars from lib/endorsed. In that case, wsdl2java will detect that the 2.2 versions are not available/endorsed and will switch to generating 2.1 compliant code.

I also just added a new frontend (will be there for 2.3.3) to force 2.1 behavior. With 2.3.3, you'll be able to do "wsdl2java -frontend jaxws21" to tell it to use the JAX-WS 2.1 compliant frontend instead.





解决办法:



Alternative workaround you recommended works great!

"wsdl2java -frontend jaxws21" sounds better to me. I think it will be an important new feature to CXF as not many organisations may have moved past Java6 and would like to have jaxws_2.1
分享到:
评论
1 楼 scwuwei 2015-04-20  
很有用,已成功,谢谢

相关推荐

    使用cxf wsdl2java生成webservice客户端

    使用cxf wsdl2java生成webservice客户端命令

    apache CXF wsdl2java工具使用说明

    ### Apache CXF wsdl2java 工具使用详解 #### 一、Apache CXF 概述 Apache CXF 是一个高性能、轻量级的开源框架,用于构建和使用基于 SOAP 和 REST 规范的 Web 服务。CXF 提供了强大的功能支持,包括 XML 数据的...

    使用CXF: Java 2 WSDL

    【标题】:“使用CXF:Java 2 WSDL” 【描述】:在Java开发中,Apache CXF是一个广泛使用的开源框架,它允许开发者构建和部署Web服务。"Java 2 WSDL"指的是从Java类生成WSDL(Web Services Description Language)...

    wsdl2java源码-grails-cxf-client:用于grails的简单cxf客户端

    wsdl2java源码建造状态 CXF客户端 介绍 有几个不同的插件可以使用 grails 来使用 SOAP Web 服务,但目前没有一个可以处理缓存端口引用的问题。 ws-client 插件可以工作,但它的局限性在于它如何创建和使用 wsdl。 它...

    利用CXF的wsdl2java来建立Web Service.

    本文将深入探讨如何利用CXF的`wsdl2java`工具从WSDL(Web Services Description Language)文件生成Java客户端和服务端代码,从而快速构建Web服务。 首先,我们需要理解WSDL。WSDL是一种XML格式的规范,它定义了Web...

    wsdl2java工具

    `wsdl2java`是Apache CXF框架提供的一款命令行工具,它能够根据WSDL文件自动生成Java客户端和服务端代码,大大简化了Web服务的开发流程。这个工具支持两种方式来获取WSDL:文件路径和URL。 ### 使用WSDL2Java工具 ...

    WSDL2Java--根据wsdl生成Java客户端工具

    1. **安装工具**:根据不同的Web服务框架,如Apache CXF、Axis2等,你需要先下载对应的工具包,包含`WSDL2Java`命令行工具。 2. **运行命令**:在命令行中,输入`WSDL2Java`命令,指定WSDL文件路径和相关选项。例如...

    抛出无法找到主类:org.apache.axis.wsdl.WSDL2Java

    抛出无法找到主类:org.apache.axis.wsdl.WSDL2Java(Throws Could not find main class: org.apache.axis.wsdl.WSDL2Java)。 添加本文的jar包压缩包解压出来的所有jar包到当前使用的java.exe 命令的lib目录下的ext...

    wsdl2java生成工具

    2. **运行WSDL2Java命令**:在命令行中,使用Apache CXF提供的wsdl2java工具,指定WSDL文件的路径,例如: ``` java -jar cxf-codegen-plugin.jar -wsdl <path_to_wsdl> -d ``` 其中,`<path_to_wsdl>`是WSDL...

    wsdl2java 生成wsdljava客户端所需要的包

    2. **安装Apache CXF**:为了使用`wsdl2java`,你需要先在你的开发环境中安装Apache CXF。你可以从官方网站下载并按照指示进行安装。 3. **运行wsdl2java命令**:在命令行中,定位到CXF的bin目录,然后使用以下命令...

    WSDL2Java工具

    WSDL2Java工具是Apache CXF框架的一部分,它实现了WSDL到Java代码的转换,将服务接口描述转化为可执行的Java类,方便开发者在Java环境中调用或实现Web服务。 一、WSDL2Java的作用 1. 生成客户端存根(Stub):通过...

    CXF提供的wsdl2java工具创建客户端

    ### CXF提供的wsdl2java工具创建客户端的相关知识点 #### 一、背景介绍 CXF是一个强大的开源项目,主要用于简化企业级服务(如RESTful Web服务、SOAP Web服务等)的构建过程。它提供了多种工具和服务,使得开发者...

    wsdl2java命令使用所需bin

    描述中提到的"环境变量指定的bin包"是指在运行`wsdl2java`命令之前,需要将Apache CXF或类似的工具包的bin目录添加到系统的PATH环境变量中,这样系统才能识别并执行`wsdl2java`这个命令。Apache CXF是一个开源的、...

    wsdl生成java代码工具

    通过运行`wsdl2java.cmd`,用户可以将WSDL描述转换为可操作的Java类。 4. **使用Wsdl2Java工具**: - **命令行参数**:运行`wsdl2java`时,可以指定各种参数,比如指定输出目录 (`-d`)、选择代码生成模式 (`-...

    wsdl2java源码-camel-cxf-soap-client:使用2向SSL(客户端身份验证)演示客户端SOAP请求/回复

    wsdl2java源码Camel-CXF SOAP 客户端演示(使用 2 路 SSL) 此存储库包含一个示例 Camel-CXF 项目,该项目演示了使用 2 向 SSL(客户端身份验证)的客户端 SOAP 请求/回复。 入门 首先,将此存储库克隆到您的本地...

    cxf实例的java类和配置文件

    - 它具有强大的工具集,如CXF wsdl2java工具,可以从WSDL生成Java代码,反之亦然。 - CXF提供丰富的扩展点,允许自定义行为,如添加安全验证、日志记录等。 总的来说,CXF实例的Java类和配置文件是实现Web服务的...

    WSDL2JAVA工具及工程jar包

    `WSDL2Java`工具通常与Apache CXF、 Axis等开源Web服务框架一起使用。这些工具将WSDL文件解析后,会生成Java客户端的Stubs,这些Stubs就像普通Java类一样,封装了与Web服务交互的所有细节。服务端的实现类则可以帮助...

    apache-cxf生成wsdl

    2. **使用CXF的wsdl2java工具**:CXF提供了一个名为`wsdl2java`的命令行工具,用于将WSDL转换为Java代码。在命令行中,你可以输入以下命令: ```bash wsdl2java -d /path/to/output/directory /path/to/your.wsdl...

    把wsdl文件或地址转化成java代码工具

    转换WSDL文件为Java代码的工具有很多,除了MyEclipse,还有Apache CXF的wsdl2java工具,它是Apache CXF框架的一部分,可以独立于IDE运行。使用CXF的wsdl2java命令行工具,开发者可以在命令行环境中执行转换,同样...

    WebService CXF --- 由WSDL文件开发Client端

    2. **使用CXF wsdl2java工具**:CXF提供了一个命令行工具`wsdl2java`,可以将WSDL转换为Java客户端代码。运行以下命令: ``` cxf-codegen-plugin -wsdlLocation=your-wsdl-url -d output-directory ``` 这将生成...

Global site tag (gtag.js) - Google Analytics