2012-04-14 17 views
0

私はrestletを使って非常に豊富なrest APIを開発しましたが、今はウェブページを提供する必要があります。私はプレイフレームワークを検討しており、それは私の問題のかなり良い解決策のようです。共有するコードがたくさんありますので、同じサーバー/ jvmから実行したいのですが(Herokuの最終的な展開のために)一緒に遊びとリセットを使う

jettyのようなアプリケーションサーバーを設定して、ありがとう!

答えて

1

?ので、どのように?私は演劇プロジェクトまたはのRestletプロジェクトを開始してください、そしてどのように私はそれを修正しない場合は?のRestletや遊びのいずれかに移動するにはURLパスに基づいて、いくつかのオプションがここにあります。

  1. 前者のApache Laye rを押すと、RestletパートとPlayパートを完全に分離することができます。あなたはHerokuに展開しているので、Herokuがあなたに正面のHTTP層を与えないので、これを行うことができるかどうかはわかりません。

  2. HTTPハンドラを変更してください。これには、独自のモジュールを作成するか、Playのコアソースを変更する必要があります。これは確かにあなたのユースケースを解決するだろうが、私はコアを変更することは素晴らしい答えではないと思うし、モジュールのアプローチはかなり残酷だ。

  3. Play 1.xを使用すると、単にRestletサービスを呼び出すすべてのRestlet APIに対して1つのコントローラアクションを設定できます。 Play 2.xでは、グローバルオブジェクトonRouteRequestメソッドを使用できます。

あなたはHerokuのようなのPaaSに展開を考えている場合は、私はあなたの答えのためにオプションで3

+0

感謝を行くだろうと思います! 2つの質問:1.アプリサーバーレベルで何かをするオプションもありますか?私はオプション3を少し見てきましたが、アイデアは好きですが、リクエストとレスポンスオブジェクトをplayletからrestletによって使用可能なものに変換する方法はありません。 –

+0

1)それはオプション2とほとんど同じです。 Nettyはhttpハンドラを公開します。 2)私はRestletで遊んだことはないが、私が理解しているように、それはアプリのサーバーにとらわれていない。 – Codemwnci

+0

Ah。はい、restletはアプリケーションサーバーagnostincですが、私はあなたがplay.mvc.contextとplay.mvc.Http.Request(onRequestとaction.callで利用可能)からどうやって行くのかまだ明確ではありません。それを再注文する必要がありますが、これを正しいとマークして新たな質問を開始します。大変お世話になりました。 –

関連する問題