アプレットと Rails について具体的なことが何も見つからないのは、それらが異なるレベルで少し機能し、実際には相互に依存していないからだと思います。ロブはいくつかのことを明確にしようとしていたようです。そのため、私たち全員が同じページにいることを確認するために、もう 1 歩踏み出します。
Rails の仕事は、HTML/XML/Javascript/画像を生成し、Web サーバーを介してユーザーの Web ブラウザーにレンダリング用に提供することです。その HTML の一部は、ブラウザにアプレットをロードするように指示する APPLET (または場合によっては OBJECT) タグになります。通常、これはブラウザに Java Plug-in を呼び出すように指示し、アプレットのロードを処理させます。ただし、ロードして実行すると、アプレットがブラウザの現在の Web ページ (または別のウィンドウに表示されている場合もある) に表示されていても、アプレットが置かれている Web ページはほとんど認識されません。ほとんどの場合、 、アプレットはブラウザや「一部」のページを気にしません。したがって、アプレットがさらに情報を必要とする場合、またはデータを要求する必要がある場合は、通常、送信元のサーバーに HTTP 要求を送信するだけです。次に、データを解析し、それ自体を更新します。
おそらく必要なのは、何かをクリックするか、アプレットに入力し、そのデータを使用して、Rails がブラウザーに提供している Web ページを更新することだと思います。アプレットには、ほとんど 2 つのオプションがあります。
- Web サーバー アプリケーションを使用して状態情報を共有する
- http://java.sun.com/products/plugin/1.3/docs/jsobject.htmlに示されているように、JSObject を使用して Java-to-Javascript 通信を使用します。
正直なところ、オプション 2 には非常に多くの注意事項があるため、すべての潜在的なユーザーのシステムでブラウザーと Java のバージョンを完全に制御できない限り、私は決して使用しません。それでも、それを壊す何かへの更新が心配です。
基本的に、オプション 1 では、アプレットと Javascript/HTML が Web サーバー (Rails) を定期的にポーリングして、データ交換のために応答する必要がある更新または要求があるかどうかを確認します。アプレットがユーザーによって更新されると、URL リクエスト/ポストを介して Web サーバーにメッセージが送信され、Web ページによる次のクエリ (おそらく AJAX のような呼び出しを介して) で新しいデータが表示され、Web ページはそれに更新されます。
それが役立つことを願っています。