0

在我的 JSF 应用程序中,我有一个 JSP 页面,它不断生成有时会呈现的警告。在日志文件中,我可以看到如下内容:

WARNING: getClientId should not be called while the view is being constructed. 
         Component-ID: j_id18

生成警告的组件如下所示:

<tr:panelCaptionGroup captionText="Jobs">
<tr:poll pollListener="#{jobBean.update}" id="poll" interval="#{msg.cfg_pollingInterval}" />
<tr:table allDetailsEnabled="true" partialTriggers="::poll ::groupFilter">
  <f:facet name="detailStamp" >
    <tr:table var="trg" value="#{subbean}" >
       ...stuff...
</tr:table>
  </f:facet>
  <tr:column>
    <h:panelGroup>
  <tr:commandLink  />
    </h:panelGroup>
  </tr:column>
  <tr:column />
</tr:table>

这可能是表中轮询的问题吗?

我正在使用特立尼达 2.0.0。我已经尝试了该选项org.apache.myfaces.trinidad.CLIENT_ID_CACHINGweb.xml并观察了所有选项 ON、OFF 和 DEBUG 的行为。

4

2 回答 2

0

看起来,在屏幕上创建下拉菜单时某处发生了 NPE。代码已修复,警告不再出现。

于 2012-07-20T10:10:35.507 回答
0

我的解决方案是在结束此状态之前以编程方式在支持 bean 中刷新任何父级。

请注意,这条消息似乎已于 2010 年 5 月在修订版 942933 中添加到 java/org/apache/myfaces/trinidad/component/UIXComponentBase.java,以防止 clientId 为空时发生 NPE。

于 2016-01-28T21:28:29.167 回答