3

「アプリの VM インスタンス」に入り、Swing GUI の新しいインスタンス (および自動化用のクラス) を作成する Java エージェントを使用して、jnlp アプリケーションでいくつかの操作を自動化しようとしています。

フレームのコンポーネントにアクセスできます。問題は、GUI が「アプレット」として実行され、GUI の隅に黄色の迷惑な三角形が表示され、アクセス許可 (ファイル アクセスなど) が切断されることです。

JNLP<application-desc main-class="x"/>には JNLP ファイルに設定があるため、アプリはアプレットとして実行されません。

Swing GUI をアプレットではなくアプリケーションとして実行するにはどうすればよいですか?

JavaAgent のコード

public class FrameSearcherAgent {

   public static void agentmain(String args) {   

   Frame[] frames = Frame.getFrames();        
   for(Frame f: frames)
   {          
      if(f.getTitle().equals("Frame Title")){
         //Parameter is the Frame I want
         new JFrameAutomateGUI(f).setVisible(true);
         break;
      }
    } 
  }
}
4

1 に答える 1

2

問題は、GUIが「アプレット」として実行され、GUIの隅に黄色の迷惑な三角形が表示されることです。

いいえ、それは間違っています。

  1. これは、すべてのアプレットまたはJWSアプリに適用されます。
  2. これは、ユーザーの安全性ほど問題ではなく、アプリを展開する際に直面しなければならない課題です。

..そしてまた私の許可(ファイルアクセスのような)を遮断します。

Java Web Startを使用してデプロイされた任意のアプリケーションまたはアプレットでローカルファイルシステムにアクセスできますが、異なる(JWS固有の)APIが必要です。これがデモです。JNLPファイルサービスの使用方法

一方で:

  • コードがデジタル署名され、JNLPが要求すると、三角形は消えますj2ee-application-client-permissions
  • アプリ。JFileChooser署名され、JNLPが要求した場合、セキュリティマネージャなしで実行できるすべてのこと(の表示を含む)を実行できますall-permissions
于 2012-12-02T00:44:23.673 に答える