私は、同じWebページに埋め込まれた複数のアプレットを使用する古いWebアプリケーションのメンテナンスを引き継ぎました。これは正常に動作するために使用されましたが、Next Generation Javaプラグインが導入されて以来(〜1.6.0_10)、個々のアプレットは同じJVMインスタンスにロードされることは保証されません。別のJVMにロードする場合、AppletContext.getApplets()または静的変数を使用して通信することはできません。アプレットが同じJVMインスタンスに読み込まれるようにしますか?
アプレットを強制的に同じJVMインスタンスにロードする方法はありますか?同じ 'java_arguments'パラメータを指定すると、同じJVMインスタンスでJavaプラグインがアプレットを実行するように促す回避策がありましたが、これはアプリケーションでは機能しません(また、Oracleでは正式にサポートされていないため、いずれの場合も時間)。
直接アプレットからアプレットへの通信を間接アプレットからJavaScript /アプレットへの通信に置き換えようとしましたが、クライアントが以前のウェブブラウザのバージョンを使用するため、このアプローチを使用できませんワーキング。可能であれば、非ローカルサーバーを介してすべてのローカルアプレットからアプレットへの通信を回避することに熱心です。
「コントローラアプレット」が4つすべてを独自のコンテンツペインの別々の領域に読み込むと、それらはすべて同じJVMになります。アプレットをWebページに埋め込む必要があるのはなぜですか? –
各アプレットはページコンテンツの一部を提供しますが、他の「通常の」Webコンテンツで区切られているため、ページに埋め込む必要があります。確かに素晴らしいデザインではありませんが、それは私たちが持っているものです。私はすべてのアプレットを最終的に同等のJSに置き換えることを望んでいますが、このアプレットを一度に実行する必要があります。 – jmt
私はAndrew Thompsonのアプローチが可能かもしれないと考えました。コントローラーアプレットをロードし、サブアプレットをロードし、ページコンテンツをパネルにロードして通常のWebコンテンツをレンダリングしますか?他のコンテンツやページのレイアウトなどを制御できますか?あなたが明示的にhttp://www.java.net/node/695065でカバーしていない場合、そうでなければ、あなたはSoLかもしれません。 – ccoakley