260.6. REST プロデューサーバインディング
REST プロデューサーは、JSon または rest-dsl のように XML を使用したバインディングをサポートします。
たとえば、json バインディングモードを有効にして jetty を使用するには、rest 設定で設定できます。
restConfiguration().component("jetty").host("localhost").port(8080).bindingMode(RestBindingMode.json);
from("direct:start")
  .to("rest:post:user");
restConfiguration().component("jetty").host("localhost").port(8080).bindingMode(RestBindingMode.json);
from("direct:start")
  .to("rest:post:user");次に、REST プロデューサーを使用して REST サービスを呼び出すと、REST サービスを呼び出す前に POJO を json に自動的にバインドします。
  UserPojo user = new UserPojo();
  user.setId(123);
  user.setName("Donald Duck");
  template.sendBody("direct:start", user);
  UserPojo user = new UserPojo();
  user.setId(123);
  user.setName("Donald Duck");
  template.sendBody("direct:start", user);
				上記の例では、POJO インスタンスの UserPojo をメッセージボディーとして送信します。そして、REST設定で JSon バインディングをオンにしたので、REST サービスを呼び出す前に POJO は POJO から JSon にマーシャルされます。
			
				ただし、レスポンスメッセージのバインディングも実行したい場合は(REST サービスが応答として返されるものなど)、JSon から POJO にアンマーシャリングする POJO のクラス名を指定するよう outType オプションを設定する必要があります。
			
				たとえば、REST サービスが com.foo.MyResponsePojo にバインドされる JSon ペイロードを返す場合は、以下のように設定できます。
			
  restConfiguration().component("jetty").host("localhost").port(8080).bindingMode(RestBindingMode.json);
  from("direct:start")
    .to("rest:post:user?outType=com.foo.MyResponsePojo");
  restConfiguration().component("jetty").host("localhost").port(8080).bindingMode(RestBindingMode.json);
  from("direct:start")
    .to("rest:post:user?outType=com.foo.MyResponsePojo");
					REST サービスを呼び出す応答メッセージに対して POJO バインディングが発生した場合は、outType オプションを設定する必要があります。