我很好奇Web应用程序中swing的性质。目前我正在使用使用检票的网络应用程序。我做了一个小测试。我已经添加了一个链接,并写下如下代码:Web应用程序中SwingUtilities.invokeLater
add(new Link<String>("link", new Model("link")) {
@Override
public void onClick() {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
JFrame frame = new JFrame("Test");
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
frame.setBounds(100, 100, 450, 300);
JPanel contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
contentPane.setLayout(new BorderLayout(0, 0));
frame.setContentPane(contentPane);
frame.setVisible(true);
}
});
}
}
});
而当我部署到服务器的战争。点击链接时,会看到一个UI,点击关闭按钮时会关闭。我想知道何时从客户端机器点击链接,这个摆动组件将显示什么行为?它会在客户端机器还是服务器中可见?
@Tapas想一想:你只需打开一个网站,然后点击一个链接,该链接转到服务器并以某种方式打开一个“JFrame”? JFrame不是作为Java Applet的沙箱,所以它具有完全的权限。这是不允许的,上面的代码将在服务器上运行,无论如何它都不可能出现在客户端的机器上。 Swing用于客户端开发。这不是客户端开发。可以创建链接嵌入/使用的Java Applet,也可以部署HTML(首选!)。 – pickypg 2011-06-04 16:54:36
只需在服务器中。客户端将只接收HTML代码(可能是其他内容类型),但客户端不会看到您在服务器端执行的任何代码。 – Enrique 2011-06-04 16:56:10
@pickypg谢谢。我可以扩展JApplet并将其用于Web应用程序吗? – 2011-06-04 17:15:06