5

jax-ws を使用してサービスを公開しようとしていますが、最初に驚いたのは、Weblogic が要求/応答オブジェクトの内部クラスをサポートしていないことでした。ここでこの状況を乗り越えた後、私は別の課題に直面しています:

getXXX()メソッドではなく/メソッドに追加して生成しisXXX()ます。

このメソッドを生成する必要があるのは、サービスを開始したときに次のメッセージが表示されるためです。

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

カスタマイズを試みました:

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

効果なし。:(

何か助けはありますか?

4

3 に答える 3

7

これは修正されたか、jaxb 2.1.13 でサポートされていると言えます (詳細については、JAXB-131を参照してください)。依存関係をアップグレードし、enableIntrospection xjc オプションを構成します。xjc オプションの詳細については、このリンクを参照してください。org.codehause.mojo:jaxb2-maven-plugin:1.3.1 プラグインを使用している場合は、回避策についてこの問題のコメントを参照してください。

オプション: -enableIntrospection

于 2012-02-14T10:49:32.030 に答える
2

この問題を解決する別のプラグインを次に示します。

http://code.google.com/p/nebulent-xjc-booleangetter/wiki/AboutThisProject

getXXX()デフォルトに加えてを生成するisXXX()ため、これらのクラスをすでに使用しているコードは、プラグインの適用後に壊れることはありません。

于 2012-06-21T13:16:34.667 に答える
1

JAXB用のBooleanGetterXJCプラグインは、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

于 2009-06-17T21:25:39.773 に答える