我是CXF的新手,正在尝试从WSDL创建一个客户端。我过去曾使用Metro和Axis。我下载了apache-
cxf-2.3.3,并使用wsdl2java生成了客户端存根。我使用Maven并使用以下命令将其设置为pom:
<properties>
<cxf.version>2.3.3</cxf.version>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxws</artifactId>
<version>${cxf.version}</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http</artifactId>
<version>${cxf.version}</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-ws-security</artifactId>
<version>${cxf.version}</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<inherited>true</inherited>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.5</source>
<target>1.5</target>
<optimize>true</optimize>
<debug>true</debug>
</configuration>
</plugin>
</plugins>
</build>
构建项目时,出现以下错误:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (default-compile) on project client-cxf: Compilation failure: Compilation failure:
[ERROR] \Devel\Projects\Client-CXF\src\main\java\my\webservice\ServiceRuntimeException.java:[38,149] cannot find symbol
[ERROR] symbol : method required()
和
[ERROR] \Devel\Projects\Client-CXF\src\main\java\my\snmpv2\MyService.java:[76,8] cannot find symbol
[ERROR] symbol : constructor Service(java.net.URL,javax.xml.namespace.QName,javax.xml.ws.WebServiceFeature[])
[ERROR] location: class javax.xml.ws.Service
看起来问题与以下事实有关:生成的代码使用Java 6功能(XmlElementRef为“ require”元素,Service为新构造函数),而CXF
Maven依赖项则为Java 5。
有没有一种方法可以指定所生成的代码应符合Java 5?
实际上,CXF的wsdl2java命令行工具与Java 5兼容的代码,它可能与Java 6不兼容。原因是它生成的代码与JAX-WS 2.2和JAXB
2.2兼容。但是,Java 6中包含的那些API的版本仅为2.1。
有几种选择:
1)最简单的方法是在wsdl2java命令中添加“ -fe jaxws21”,以使其生成兼容jaxws 2.1的代码,而不是2.2
2)将2.2 API罐子添加到JDK的认可目录中
3)在Maven中配置编译器插件以“认可” 2.2个jar
我想使用eclipse链接设置隔离级别,我尝试了以下两种方法: > java.sql.连接 Database aseLogin setTransationIsolation方法 如您所见,getTransactionSolation()方法的返回值之间存在一些不一致。我的问题是,在这两种情况下真正设置了哪种事务隔离?我知道eclipse链接在默认情况下使用不同的连接进行读写操作,即Database
我如何在log4j2中做到这一点?注我仍然需要使用新的属性文件(不是xml或json)。 TIA
我有以下课程 < li >抽象类duck 此类具有< code>flyBehavoir类型的< code>FlyBehavoir 函数,以执行flying < code > preformFly() < br >函数来设置< code > flyBehavoir < code > setFlyBrhavoir(flyBehavoir$flyBehavoir) < li >类DonaldDuck扩展
合规性声明 加拿大 Polar Electro Oy 未批准用户对本设备进行任何更改或改装。任何更改或改装会使用户失去使用本设备的权力。 Polar Electro Oy n’a approué aucune modification apportée à l’appareil par l’utilisateur, quelle qu’en soit la nature.Tout changeme
要成功地创建一个新的连接到本机或远程服务器 - 不管通过 SSL、SSH 或 HTTP,都要在常规选项卡中设置连接属性。如果你的互联网服务供应商(ISP)不提供直接访问其服务器,安全通道协定 (SSH) 或 HTTP 是另一种解决办法。在 连接名 文本框输入一个恰当地描述你的连接名。 当你登录 Navicat Cloud 功能后,你可以从 添加到 下拉列表选择保存连接在 我的连接 或 Navica
若要成功地创建一个新的连接到本地或远程服务器 - 不管通过 SSL、SSH 或 HTTP,都要在常规选项卡中设置连接属性。如果你的互联网服务供应商(ISP)不提供直接访问其服务器,安全隧道协定(SSH)或 HTTP 是另一种解决办法。 【注意】下列的选项会根据连接的服务器类型而有所不同。 添加到 当你登录 Navicat Cloud 功能后,你可以选择保存连接在我的连接或 Navicat Clou