2008-10-14 184 views
5

我试图公开服务使用jax-ws,但我得到的第一个惊喜是,Weblogic不支持请求/响应对象的内部类。在克服这种情况here后,我面临另一个挑战:获取布尔属性与JAXB

生成getXXX()而不是/另外还有isXXX()方法。

我需要生成这种方法因为当我启动服务,我得到的消息:

<WS data binding error>could not find getter for property 'IsXXX' on com.foo.MyClass 

尝试了定制:

<jaxb:globalBindings generateIsSetMethod="false" enableJavaNamingConventions="false"> 

没有效果。 :(

任何帮助

回答

1

BooleanGetter XJC插件JAXB可在http://fisheye5.cenqua.com/browse/~raw,r=1.1/jaxb2-commons/www/boolean-getter/index.html

如果您正在使用的JavaSE 6则需要将其重新打包的工作 - 看http://forums.java.net/jive/message.jspa?messageID=319434

在使用Ant构建象下面这样:

<taskdef name="xjc" classname="com.sun.tools.xjc.XJCTask" classpathref="development.classpath"/> 

    <xjc schema="some.xsd" package="com.acme.jaxb" destdir="gen-src"> 
     <arg value="-Xcollection-setter-injector"/> 
     <arg value="-Xboolean-getter"/> 
    </xjc>   

HTH

+8

两条链路都断开 – 2012-02-14 09:53:13

6

在jaxb 2.1.13中已被修复或更好地支持(详情请参阅JAXB-131)。升级您的依赖关系并配置enableIntrospection xjc选项。有关xjc选项的更多详细信息,请参阅this link。如果您使用的是org.codehause.mojo:jaxb2-maven-plugin:1.3.1插件,请参阅this issue comment以获取解决方法。

选项:-enableIntrospection