2008-10-14 60 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