2012-03-05 18 views
1

私は残りのエンドポイントにコンテンツをストリーミングしており、これをServerResourceとして実装しました。入力ストリームを消費することは問題ではありませんが、入力を処理している間は、クライアントに情報を戻すことを開始したいと思います。しかし、私は実際には表現を返す必要があるので、これはServerResourceから行うことができないと仮定します(そしてその後、入力ストリームから読み込みを中止します)。ServerResourceからのクライアントへのストリーミング応答

このシナリオでは、どのような方法をお勧めしますか?生のRestletを使い、handleメソッドで処理しますか?人々はこれをどのように一般的に解決しましたか?

「raw」HttpServletを使用して簡単に達成できますが、私はボード全体でrestletを使用できることが大好きです。

答えて

0

最もクリーンなオプションではありませんが、は、クライアントにコンテンツを要求するサーバーへの2番目の接続を開いてもらうことができます。サーバーは、送信を開始するデータがあるまで接続を開いたままにしておく必要がありますが、結果は同じになります。これは、問題の「長いポーリング」アプローチのようなものであり、構造的には、読み込みから書き込みを分けるだけです。

は、これを達成する可能性がより良い方法がありますが、私は当初、迅速な解決策で行くと、それが必要なら、それに戻ってくる傾向にある(すなわち。それは、保守性やパフォーマンスのように、いくつかの方法で問題の場合)

+0

ご返信ありがとうございますが、残念ながら私がクライアントを管理していた場合にのみ動作します。 HttpServletを直接使用すると問題なく動作しますので、私はそのオプションに固執していますが、私は適切なRestletのアプローチに全力を尽くしたいと思います。 – jonbo372

関連する問題