2
我创建了custom Facelet tag。我希望ID回退到默认的j_idtXxx
,就好像在XHTML中没有设置ID时一样。如何在Facelet标记中使用默认生成的标识
所以,我想<my:tag id="fiets"/>
被渲染为<span id="fiets"/>
。
但是,<my:tag/>
应呈现为<span id="j_idtXxx"/>
。
如果我在我的标记文件中使用<h:anyTag id="#{id}"/>
,它只会在空的ID属性上失败。有什么方法可以呈现为默认生成的ID吗?我想创建类似于:
<c:set var="id" value="#{empty id ? USE_DEFAULT : id}" />
但我不知道在USE_DEFAULT
上使用什么。
感谢您的提示答案。在我的情况下,这导致了一个异常:'组件ID main:j_id6已经在视图中找到'。 –
如果它有'范围=“请求”或更广泛的范围,并且存在多个相同标记的实例,则可能发生这种情况。 – BalusC
我删除了' ',刚用过'id =“#{empty id?view.createUniqueId():id}”'。现在它可以工作。 –