1

そのため、現在Playから独立したアプリケーションがあり、実行に時間がかかる場合があります。

Playを使用してその上にUIを配置し、アプリケーションを呼び出すことができ、アプリケーション内の実行の詳細の一部をユーザーに表示したいと思います。実行が進むにつれてページが自動的に更新されるようにしたいと思います。たとえば、アプリケーションの変数が増分した場合、これはページに反映されます。

これからどこから始めればよいかわかりません-アプリケーションをモデルとコントローラーに分割する必要がありますか?または、すでにコーディングしたクラスをインスタンス化し、必要なメソッドを呼び出すために、コントローラーにコードを含める必要がありますか?

ページに実行状態を常に表示するのはどうですか?

知っておくべき/読むべきリソースはありますか?コード例?

ありがとう

4

2 に答える 2

0

すでに作成しているかもしれませんが、新しいアプリケーションplay newの作成セクションを参照しながら、コマンドを使用してスケルトンの Play アプリケーションを作成することから始めることをお勧めします。「ビュー」 (HTML テンプレート ページ) と 1 つのコントローラー ( 内) があります。さらにコントローラーを追加することもできますが、十分なページが 1 つしかないためです。Application.scala

アプリ (JVM アプリの場合) から jar を Play アプリケーションの lib ディレクトリに追加できます。これから:「または、すでにコーディングしたクラスをインスタンス化し、必要なメソッドを呼び出すために、コントローラーにコードが必要ですか?」あなたのアプリが Jetty + Play サーバーのプロセスで実行されることを嬉しく思います。プロセスの起動時にアプリを起動するためのGlobalオブジェクトを確認してください。

Play アプリからブラウザーに更新を送信するためのコメット ソケットのセクションを確認してください。Web ページには Javascript が少し必要です。

于 2012-10-10T07:46:04.680 に答える
0

このアプリケーションを別のサーバーなど、プレイ外で実行したいですか? アプリケーションを変更できますか、それともサードパーティのソフトウェアですか?

その場合、プレイ フロント エンドとアプリケーションの間でデータをやり取りする何らかの方法が必要です。アプリケーションで websocket を公開してから、play フロントエンドとアプリケーションでデータを相互にプッシュすることができます。次に、クライアント ページに websocket を開いてフロント エンドをプレイするように設定し、プレイが更新をクライアントにプッシュできるようにします。アプリケーションが websocket をサポートできない場合は、アプリケーションが POST できるように、フロント エンドでいくつかの URL を公開することもできます。その後、ある種のメッセージ バスまたはデータベース メカニズム (RabbitMQ、redis、Mongo capped コレクション、または単に共有 Queue オブジェクト) を使用して、フロント エンド Websocket がそれらの更新を取得し、クライアントに送信できるようにします。

于 2013-05-17T23:12:24.480 に答える