こんにちは。さっそく質問させてください。
Java appletから、Javascriptの
document.open()、documnet.write() のように、
HTMLを動的生成して、それを現在の(あるいは新しく開いた)ウインドウに
表示するということはできないのでしょうか?
単に、指定したURLのページを表示するのなら、
getAppletContext().showDocument(url);
でできるのですが、ページを動的に生成したいのです。
もしかしたら、基本的な質問なのかもしれませんが、
よろしくお願いします。
Netscape 3.0以降であれば、LiveConnectという
AppletからJavaScriptを呼び出す機能があります。
その他のブラウザでは多分無理でしょう。
ありがとうございます。LiveConnectで目的のことができました。
ちなみに、Netscapeだけではなくて、最近のIEでも大丈夫のようです。
参考までに、コードを。
import java.awt.*;
import java.awt.event.*;
import netscape.javascript.*;
public class TestClass extends Applet {
public void init() {
String htmlText = new String(<HTML><BODY>test</BODY></HTML>);
JSObject topWindow =
JSObject.getWindow(this);
JSObject document = (JSObject) topWindow.getMember(document);
Object args[] = new Object[1];
args[0] = htmlText;
document.call(write, args);
}
}
<HTML>
<HEAD>
<TITLE>JSPopup Test</TITLE>
</HEAD>
<BODY>
<applet code=TestClass.class>
<PARAM NAME=MAYSCRIPT VALUE=TRUE>
</applet>
</BODY>
</HTML>