在浏览器中显示文档

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 */);
                }
            }
        ...

下载源代码用于“显示文档”示例,以进一步进行实验。