在浏览器中显示文档
JavaServlets 可以使用java.applet.AppletContext类中的showDocument
方法在浏览器窗口中加载网页。
这是showDocument
的两种形式:
public void showDocument(java.net.URL url)
public void showDocument(java.net.URL url, String targetWindow)
showDocument
的单参数形式仅指示浏览器以指定的 URL 显示文档,而无需指定显示文档的窗口。
showDocument
的两个参数形式使您可以指定用于显示文档的窗口或 HTML 框架。第二个参数可以具有以下值之一:
-
"_blank"
–在新的无名称窗口中显示文档。 -
"windowName"
–在名为* windowName *的窗口中显示文档。如有必要,将创建此窗口。 -
"_self"
–在包含 Servlets 的窗口和框架中显示文档。 -
"_parent"
–在 Servlets 框架的父框架中显示文档。如果 Servlets 框架没有父框架,则其作用与"_self"
相同。 -
"_top"
–在顶层框架中显示文档。如果 Servlets 的框架是顶级框架,则其作用与"_self"
相同。
Note:
在此讨论中,* frame *不是指 Swing JFrame
,而是指浏览器窗口中的 HTML 框架。
以下 Servlets 使您可以try使用showDocument
两种形式的每个参数。Servlets 将打开一个窗口,您可以在其中键入 URL 并为targetWindow
参数选择一个选项。当您按 Return 键或单击“显示文档”按钮时,Servlets 将调用showDocument
。
A browser with JavaScript enabled is required for this page to operate properly\.
Note:
如果看不到示例正在运行,则可能需要在浏览器中启用 JavaScript 解释器,以便 Deployment Toolkit 脚本能够正常运行。
以下是调用showDocument
的 applet 代码。这是整个程序ShowDocument。
...//In an Applet subclass:
urlWindow = new URLWindow(getAppletContext());
. . .
class URLWindow extends Frame {
...
public URLWindow(AppletContext appletContext) {
...
this.appletContext = appletContext;
...
}
...
public boolean action(Event event, Object o) {
...
String urlString =
/* user-entered string */;
URL url = null;
try {
url = new URL(urlString);
} catch (MalformedURLException e) {
...//Inform the user and return...
}
if (url != null) {
if (/* user doesn't want to specify
the window */) {
appletContext.showDocument(url);
} else {
appletContext.showDocument(url,
/* user-specified window */);
}
}
...
下载源代码用于“显示文档”示例,以进一步进行实验。