【问题标题】:Desktop.getDesktop().browse(uri); will open web page on server or client side?Desktop.getDesktop().browse(uri);将在服务器端或客户端打开网页?
【发布时间】:2010-05-26 08:14:00
【问题描述】:

我有一个 JSF 应用程序,当用户单击按钮时,我想打开一个网页。 Desktop.getDesktop().browse(uri); 可能会在服务器端打开一个网页, 客户端怎么做?

当我尝试 Desktop.getDesktop().browse(uri);它可以工作,但可能是因为我在 localhost 上打开 JSF 应用程序,所以我不知道打开的 uri 是在服务器端还是客户端。

在 getDesktop() 的规范中写道:

getDesktop() 
Returns the Desktop instance of the current browser context.

谢谢!

【问题讨论】:

  • 所以你没有桌面客户端?您只有一个 JSF 应用程序,并且您希望在单击按钮后(在浏览器中)更改浏览器中的页面?
  • 我只有 JSF 应用程序,我只想在客户端打开 JSF 应用程序并单击按钮时(在 JSF 应用程序的浏览器中)在浏览器中打开新页面客户端。

标签: jsf client-server


【解决方案1】:

你可以通过一个简单的链接来做到这一点(也许可以把它设计成一个按钮):

<h:outputLink href="otherpage.jsf" target="_blank" />

如果您坚持使用按钮,可以使用javascript 来执行此操作,但我建议您不要这样做。

在开发 Web 应用程序时,忘记 java.awt.*javax.swing.* - 它们不能用于 Web 应用程序开发(除非您创建小程序)

【讨论】:

  • 以及如何查看 Desktop.getDesktop().browse(uri);将在客户端或服务器端打开网页导致 Desktop.getDesktop().browse(uri);对我有用吗?博卓有什么想法吗?
  • Dektop.getDesktop() 在客户端根本不起作用。在开发 webapps 时忘记那些(和相关的)类。
  • hm...然后我真的不明白为什么在规范中 getDesktop() 被定义为:返回 >>>current
  • 如果你在 Applet 中使用它,那么这是有道理的 ;) 但你没有使用 Applet。
  • 好吧,你是对的:) 那么从 JSF java bean 是否可以在客户端打开网页? :)
猜你喜欢
  • 2023-03-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-05-02
  • 1970-01-01
相关资源
最近更新 更多