2011-06-28 2 views
3

受信XMLを受け取り、結果をビジネスオブジェクトに解析するRESTfulサービスを作成しようとしています。私はXMLとビジネスオブジェクトを持っています。Spring XMLバインディング

xmlをRESTfulなサービスに入れてビジネスオブジェクトを自動的に作成するという観点から、データバインディングを実行する方法はありますか。

現在、私はこの作業を手動で行っていますが、これを行うには最良の方法ではありません。私はおそらく、XMLとオブジェクトへの転送をマップする方法があると考えています。ありがとう。

答えて

0

私はまさにあなたが求めているのですが、JSONではflexjsonを使用しています。 org.springframework.oxmパッケージには、XMLデータのシリアライズとデシリアライズのためのフレームワークが含まれていると思いますが、個人的には試していません。

+0

ええ、JAXB、Castor、JiBXなどを使用できます。 –

1

これは、OXM(例:JAXB)とSpring Web MVCの@RequestBody注釈を使用して実行できます。ここではXMLペイロードからユーザーオブジェクトを作成するための簡単なRESTfulな例です:あなたはすでにので、私はそれでそれを残しておきます作業XMLペイロード部分を持っているよう

@RequestMapping(
    value = "/users", 
    method = RequestMethod.POST, 
    headers = "content-type=application/xml") 
@ResponseStatus(HttpStatus.CREATED) 
public String createUser(@RequestBody User user, HttpServletResponse res) { 
    Long userId = userDao.create(user); 
    response.addHeader("Location", "https://stackoverflow.com/users/" + userId); 
    return null; 
} 

ですね。

+0

私はJAXBを使用しましたが、かなりうまくいきます...あなたがマップを扱っている場合を除き、カスタムアダプターを扱う必要があります。 –

関連する問題