Java EE6アプリケーション内から長時間実行する接続をTwitter streaming APIに作成し、障害発生時に接続を監視して再確立する必要があります。Java EEアプリケーションからTwitterストリーミングAPIへの長時間接続を管理する
次のようにJersey JAX-RSとOAuthでテストを実行しました。これは、私が望むようにストリーミングデータを処理します。
WebResource resource = client.resource(STATUS_URI);
resource.addFilter(oauthFilter);
ClientResponse clientResponse = resource.get(ClientResponse.class);
InputStream is = clientResponse.getEntityInputStream();
BufferedReader r = new BufferedReader(new InputStreamReader(is, "UTF8"));
boolean more = true;
while (more) {
String jsonTweet = r.readLine();
//send tweet to JMS queue
.....
}
シングルトン '@PostConstruct'メソッドで上記のコードを実行しようとしましたが、ブロックされてアプリケーションが正しく読み込まれません。
私の質問は、アプリケーションの起動時にJava EE環境内から接続を初期化し、新しいスレッドを直接作成せずにエラーを監視して再接続する推奨方法は何ですか?
私はそれがEJB内からエグゼキュータを使用するように仕様反対だと思いましたか? – Phill
はい、干渉することがありますが、使用するとうまく処理する必要があります。また、同じ目的でJMSを使用することもできます。 –