4

私は非常に単純なラクダのルートを持っています。これは、Webサービスとして公開されているCXFエンドポイントから始まります。次に、それをxmlに変換し、Beanのメソッドを呼び出します。

現在、Webサービスの呼び出し後にCXF固有のオブジェクトを取得しています。シリアル化されたオブジェクトをCXFメッセージリストから取り出して、今後使用するにはどうすればよいですか?

私のルート:

<camel:route>
   <camel:from uri="cxf:bean:helloEndpoint" />
   <camel:marshal ref="xstream-utf8" />
   <camel:to uri="bean:hello?method=hello"/>
</camel:route>

XMLシリアル化メッセージ:

<?xml version='1.0' encoding='UTF-8'?>
<org.apache.cxf.message.MessageContentsList serialization="custom">
   <unserializable-parents />
   <list>
      <default>
         <size>1</size>
      </default>
      <int>6</int>
      <com.whatever.Person>
         <firstName>Joe</firstName>
         <middleName></middleName>
         <lastName>Buddah</lastName>
         <dateOfBirth>2010-04-13 12:09:00.137 CDT</dateOfBirth>
      </com.whatever.Person>
   </list>
</org.apache.cxf.message.MessageContentsList>

XMLは次のようになると思います。

<com.whatever.Person>
   <firstName>Joe</firstName>
   <middleName></middleName>
   <lastName>Buddah</lastName>
   <dateOfBirth>2010-04-13 12:09:00.137 CDT</dateOfBirth>
</com.whatever.Person>
4

2 に答える 2

8

見つけた。私はこれを使わなければなりませんでした。

<camel:convertBodyTo type="com.whatever.Person"/>
于 2010-04-13T19:03:22.823 に答える
0

また、CXFがすぐにサポートすると思うJAXBデータ形式を使用することもできます。

モデルオブジェクトを自動生成するためにCXFwsdl2javaを使用していると思いますか?もしそうなら、@JAXBアノテーションを持つべき生成されたソースコードを見ることができます

于 2010-04-14T12:56:44.357 に答える