2010-05-05 69 views
0

我正在制作一个网页,其内容非常动态,所以我从后台bean中构建它。JSF/HTML - 以编程方式向网页添加Java小程序

我想添加一个Java小程序到网页,但我找不到对应于<applet>标记的JSF组件类型。

所以我的问题是 -

  1. 什么是一个applet的JSF组件类型?
  2. 你是怎么找到它的? (对于将来的类似搜索)

谢谢!

P.S - 只是要清楚。一个例子:<h:PanelGroup>将作为java对象的HtmlPanelGroup

回答

2

几件事情开始; <applet>标记已被弃用,以<object>为准,而JSF并未真正提供标记以呈现<object>。也就是说,如果您处于标签级别,则可以使用f:verbatim,我相信这对应于UIOutput。

JSF不保证所有客户端标记的Java对象表示(也不应该)。你要做的是将所有标记知识转移到支持bean中,并且如实地说,这就是疯狂。

我建议你看一下Facelets,这是一个JSF顶端的合成技术。它非常适合灵活的页面制作,并且可以保留标记和页面组合,使其脱离支持bean和X/HTML文件。 Facelet的也被JSF 2.0所接受。

+0

谢谢。我会读到。 老实说,我找不到一种方法使JSP页面标记语言真正动态化。就像添加和删除组件并动态切换面板一样。我知道这些东西是有可能的,但为了实现它们,我将不得不努力工作,而在支持bean中,我可以创建抽象并避免代码重复。我明白为什么它听起来像疯了,但在实践中,我不认为它是。 如果你有一个很好的阅读,为什么这样做不好,我会很高兴阅读。 – Ben 2010-05-05 10:28:28

+0

体面的教程:http://www.ibm.com/developerworks/java/library/j-facelets/会给你一个关于Facelets是什么以及它解决的问题的好主意。 JSF自带的开箱即用,是一款非常棒的野兽,另一方面,Facelets为页面组合的条件渲染提供了大量支持。对于为什么在代码中生成用户界面是一个坏主意,我没有任何具体的链接,但如果你围绕“分离问题”搜索谷歌,你会得到这个要点。最终,您的方法将您的用户界面与其他应用程序紧密结合;例如,新按钮需要更改代码并重新编译。 – dannywartnaby 2010-05-05 13:20:37

+0

这可能也值得指出Faces的一个关键好处;您可以在任何有效的HTML编辑器或文本编辑器中设计您的页面,并且还有许多丰富的组件库供您利用。每个元素都有一个呈现属性,例如,您可以传递布尔值以有条件地呈现它,您可以从中了解如何构建动态的灵活页面。此外,现在采用Facelets可让您在稍后进行JSF 2.0升级。 – dannywartnaby 2010-05-05 13:23:26

相关问题