2011-09-09 17 views
6

HTTP経由のXMLインターフェイスを使用して、Webアプリケーションの一部のサービスをリモートクライアントに公開する必要があります。 提供されるサービスの数は限られています(3-7)。要求と応答の両方を簡単に保つ必要があり、特別なデータタイプやエンティティ間の関係は必要ありません。シンプルなXMLインターフェイス用の適切なツール

私の目標は、コードをきれいにしてクリアな状態に保ち、堅牢で実用的なアプリケーションを作成することです。 このタスクに使用する適切なXMLバインディング\処理ツールに関するアドバイスを本当にありがとうと思います。

UPD:私の悪いが、restletを実装するために必要であることを言及していない、しかし、私に関する限り、それは、使用するXMLツール上の制限はありません。

ありがとうございます。

+0

お探しの情報のタイプは? –

+0

Restletやその他のフレームワーク(Jersey、jax-rs)を使用するように制約されていますか? – Santosh

答えて

1

どのように好きですか? http://x-stream.github.io/

XStreamは、オブジェクトをXMLにシリアル化して元に戻すための単純なライブラリです。

+0

私はこれをプロジェクトで使用し、設定の容易さにとても満足していました。 – jtoberon

2

最近、Apache CXFを使っていくつかの作業を行い、そのJAX-RSサポートがシンプルでDRYフレンドリーなコードを書くことができるようになりました。

妥当な量の柔軟性があります。いくつかの異なるデータバインディングレイヤーを選択できます。

8

JAX-RS仕様(JSR-311)は、HTTP経由でRESTfulなサービスを作成するための標準的な手段を提供します。いくつかのJAX-RS実装があります:Jersey、RESTEasy、Wink。 JAXB(JSR-222)JAX-RSのための標準的な結合層(XMLからオブジェクトへの/)であり、そしていくつかの実装があります。MOXyは、等メトロJaxMe、

これらの実装も来るさプレJava EEアプリケーションサーバー(つまりGlassFishとWebLogicにはJerseyが含まれています)にバンドルされています。ここで

は、私はGlassFishの中ジャージー& MOXYを使用して一緒に置く例です。

+1

彼は恩恵に値する。 –

0

私の助言は、バインディングツールをまったく使用しないことです。あなたがワイヤで送信しているものが実際にはXMLであるという事実を扱ってください。 Spring Web Servicesのリファレンスマニュアルには、「contract first」と呼ばれるこの背後にある根拠が記載されています。right here

あなたが書いたのはSOAPサービスではなくRESTサービスです。それは、私が製本ツールを使用しないことに反対している点については重要ではありません。「契約第一」の原則が依然として適用されます。

幸運を祈る!

関連する問題