1

Java6u13および6u14にはバグがあります。 http://bugs.sun.com/view_bug.do?bug_id=6835450

簡単に言うと、次のコードはブラウザウィンドウを開くはずですが、フレームワークのバグのため、Java 1.6update13では機能しなくなりました。もう何も開きません。Javaアプレットにも同様のバグがありましたが(アップデート14で修正されました)、これはJava WebStart/JNLPのアップデート14にも引き続き存在します。

getAppletContext().showDocument(new URL("http://www.sun.com"),"_blank");

回避策を知っていますか?

4

3 に答える 3

4

JNLP で試したことはありませんが、通常は次のように動作します。

java.awt.Desktop.getDesktop().browse(new URI("http://www.sun.com"));
于 2009-07-13T14:09:32.123 に答える
0

機能しますBasicService.showDocumentか?それがどのように実装されているか思い出せません。

または、LiveConnect を使用して自分で JavaScript を実行します (ただし、同じ問題が発生する可能性があります)。

于 2009-07-13T14:13:34.397 に答える
0
public boolean openUrl(final URL url) {
    try {
        // Lookup the javax.jnlp.BasicService object
        BasicService bs = (BasicService)javax.jnlp.ServiceManager.lookup("javax.jnlp.BasicService");
        // Invoke the showDocument method
        return bs.showDocument(url);
    } catch(UnavailableServiceException ue) {
        // Service is not supported
        log.log(Level.WARNING, "Could not open URL " + url, ue);
        return false;
    }       
}
于 2010-02-19T18:54:15.900 に答える