Swing/SingleInstanceService のバックアップの現在との差分(No.9)
- バックアップ一覧
- 差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- バックアップ を表示
- Swing/SingleInstanceService へ行く。
- 1 (2008-02-25 (月) 02:06:56)
- 2 (2008-02-25 (月) 14:23:14)
- 3 (2008-05-16 (金) 13:06:26)
- 4 (2009-08-11 (火) 16:05:57)
- 5 (2010-04-06 (火) 02:27:40)
- 6 (2011-04-19 (火) 21:34:47)
- 7 (2013-01-27 (日) 22:17:11)
- 8 (2013-08-22 (木) 15:34:24)
- 9 (2013-09-10 (火) 00:41:50)
- 10 (2014-11-01 (土) 00:46:09)
- 11 (2014-11-25 (火) 03:03:31)
- 12 (2015-03-03 (火) 14:14:00)
- 13 (2016-06-01 (水) 19:07:31)
- 14 (2017-09-13 (水) 17:56:08)
- 15 (2017-11-02 (木) 15:34:40)
- 16 (2018-02-27 (火) 16:01:16)
- 17 (2018-10-13 (土) 21:31:41)
- 18 (2020-10-08 (木) 15:41:14)
- 19 (2022-07-14 (木) 10:40:45)
- 20 (2022-08-20 (土) 22:15:25)
- 追加された行はこの色です。
- 削除された行はこの色です。
TITLE:SingleInstanceServiceを使って Web Start アプリケーションの重複起動を禁止 #navi(../) #tags(SingleInstanceService, ServiceManager, SingleInstance) RIGHT:Posted by &author(aterai); at 2008-02-25 * SingleInstanceServiceを使って Web Start アプリケーションの重複起動を禁止 [#md640f9c] ``SingleInstanceService``を使って、``Web Start``アプリケーションの重複起動を禁止したり、引数の取得を行います。 --- category: swing folder: SingleInstanceService title: SingleInstanceServiceを使って Web Start アプリケーションの重複起動を禁止 tags: [SingleInstanceService, ServiceManager, SingleInstance] author: aterai pubdate: 2008-02-25T02:06:56+09:00 description: SingleInstanceServiceを使って、Web Startアプリケーションの重複起動を禁止したり、引数の取得を行います。 image: https://lh5.googleusercontent.com/_9Z4BYR88imo/TQTTIU5TktI/AAAAAAAAAj4/muKNMFrhEcE/s800/SingleInstanceService.png --- * 概要 [#summary] `SingleInstanceService`を使って、`Web Start`アプリケーションの重複起動を禁止したり、引数の取得を行います。 - &jnlp; - &jar; - &zip; #download(https://lh5.googleusercontent.com/_9Z4BYR88imo/TQTTIU5TktI/AAAAAAAAAj4/muKNMFrhEcE/s800/SingleInstanceService.png) #ref(https://lh5.googleusercontent.com/_9Z4BYR88imo/TQTTIU5TktI/AAAAAAAAAj4/muKNMFrhEcE/s800/SingleInstanceService.png) ** サンプルコード [#zf8b6235] * サンプルコード [#sourcecode] #code(link){{ final JFrame frame = new JFrame("@title@"); JFrame frame = new JFrame("@title@"); try { SingleInstanceService sis = (SingleInstanceService)ServiceManager.lookup("javax.jnlp.SingleInstanceService"); (SingleInstanceService) ServiceManager.lookup("javax.jnlp.SingleInstanceService"); sis.addSingleInstanceListener(new SingleInstanceListener() { private int count = 0; @Override public void newActivation(String[] args) { //System.out.println(EventQueue.isDispatchThread()); // System.out.println(EventQueue.isDispatchThread()); EventQueue.invokeLater(new Runnable() { @Override public void run() { JOptionPane.showMessageDialog(frame, ""); frame.setTitle("title:"+count); frame.setTitle("title:" + count); count++; } }); } }); } catch(UnavailableServiceException use) { } catch (UnavailableServiceException use) { use.printStackTrace(); return; } }} ** 解説 [#kf8f5501] ``Web Start``アプリケーションの場合、``javax.jnlp.SingleInstanceService``に、``SingleInstanceListener``を追加することで、新しい次のインスタンスの起動やその時の引数を取得することが簡単に出来ます。 * 解説 [#explanation] `Web Start`アプリケーションの場合、`javax.jnlp.SingleInstanceService`に`SingleInstanceListener`を追加することで、新しい次のインスタンスの起動やその時の引数取得などが可能になります。 - %%メモ: ``JDK 1.6.0_03``では、``SingleInstanceService``は正常に動作しない%% -- ``JDK 1.6.0_10``で修正済み ---- コンパイルに、``javaws.jar``が必要なので、以下のようなクラスパスを設定します。 // - %%メモ: `JDK 1.6.0_03`では`SingleInstanceService`は正常に動作しない%% `JDK 1.6.0_10`で修正済み - コンパイルに`javaws.jar`が必要なので以下のようなクラスパスを設定 set CLASSPATH=%JAVA_HOME%/jre/lib/javaws.jar または、``build.xml``などに記入してください。 - または`build.xml`などに記入 #code{{ <path id="project.class.path"> <pathelement location="${build.dest}" /> <pathelement location="${java.home}/lib/javaws.jar" /> <pathelement path="${java.class.path}" /> </path> }} - [http://javahowto.blogspot.com/2006/05/javahome-vs-javahome.html Java How To ...: JAVA_HOME vs java.home] -- [http://javahowto.blogspot.com/2006/05/javahome-vs-javahome.html Java How To ...: JAVA_HOME vs java.home] ** 参考リンク [#aa4383a9] - [http://docs.oracle.com/javase/jp/6/jre/api/javaws/jnlp/javax/jnlp/SingleInstanceService.html SingleInstanceService (JNLP API Reference 1.5)] - [http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6631056 Bug ID: 6631056 SingleInstanceService does not work on JRE 1.6.0_03] -- via:[https://forums.oracle.com/message/5505991 Java Web Start & JNLP - How to use singleinstance service with a JWS application] * 参考リンク [#reference] - [https://docs.oracle.com/javase/jp/8/docs/jre/api/javaws/jnlp/javax/jnlp/SingleInstanceService.html SingleInstanceService (JNLP API Reference 1.8.0_71)] - [https://bugs.openjdk.org/browse/JDK-6631056 Bug ID: 6631056 SingleInstanceService does not work on JRE 1.6.0_03] -- via: [https://community.oracle.com/thread/1307009 Java Web Start & JNLP - How to use singleinstance service with a JWS application] - [https://appframework.dev.java.net/servlets/ReadMsg?listName=users&msgNo=396 Java Web Start SingleInstanceService - appframework(JSR-296)] - [[ServerSocketを使ってアプリケーションの複数起動を禁止>Swing/SingleInstanceApplication]] ** コメント [#rd58f835] * コメント [#comment] #comment #comment