在jsf托管Bean中创建动态控件? [英] Creating dynamic controls in jsf managed bean?

查看:115
本文介绍了在jsf托管Bean中创建动态控件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在我的jsf托管bean中动态创建HtmlDivElement的对象并将其添加到面板中,但似乎HtmlDivElement是接口.那么,我该怎么办呢?

I want to dynamically create object of HtmlDivElement in my jsf managed bean and add it to panel but it seems that HtmlDivElement is interface. So, how can i do it?

推荐答案

这是一个相当大的困惑. 不是JSF组件.这表示W3 DOM元素具有完全不同的用途( JAXP ,DOM解析).

This is a pretty major confusion. The org.w3c.dom.html.HTMLDivElement is not a JSF component. This represents a W3 DOM element which has an entirely different purpose (JAXP, DOM parsing).

您需要 javax.faces.component.UIComponent的子类(只需在前面链接的Javadoc中单击直接已知子类"即可找到所有的子类).要呈现HTML <div>元素,只需使用

You need a subclass of javax.faces.component.UIComponent (just click your way through the "Direct Known Subclasses" in the aforelinked Javadoc to find them all). To render a HTML <div> element, just use HtmlPanelGroup whose layout attribute is set to block.

HtmlPanelGroup div = new HtmlPanelGroup();
div.setLayout("block");
someParentComponent.getChildren().add(div);

与静态" JSF中的以下命令实际上相同:

which does effectively the same as the following in "static" JSF:

<h:panelGroup layout="block" />

这篇关于在jsf托管Bean中创建动态控件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆