1

您好,我已按照以下网址的设置指南进行操作:http: //myfaces.apache.org/trinidad/installation.html

当我在 faces-config.xml 文件中包含以下代码时,我在点击页面时出现错误:

<application>
        <default-render-kit-id>org.apache.myfaces.trinidad.core</default-render-kit-id>
    </application>

错误开始:

java.lang.IllegalStateException: No RenderingContext
    at org.apache.myfaces.trinidad.render.CoreRenderer.encodeBegin(CoreRenderer.java:390)
    at org.apache.myfaces.trinidadinternal.renderkit.htmlBasic.HtmlFormRenderer.encodeBegin(HtmlFormRenderer.java:56)
    at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:813)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:928)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:933)
    at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
    at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
    at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
    at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110)
    at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)

当我从 faces-config.xml 文件中删除那段代码时,我可以正常浏览我的网站,但是当我点击一个包含一些 Trinidad 示例代码的页面时,什么都没有显示……只是一个空页面。

关于我做错了什么的任何想法?

我从我的 web.xml 中删除了以下内容,它现在可以工作了,有什么想法吗?使困惑 :(

  <context-param>
    <param-name>org.ajax4jsf.VIEW_HANDLERS</param-name>
    <param-value>com.sun.facelets.FaceletViewHandler</param-value>
  </context-param>

谢谢

4

1 回答 1

1

实际上,我发现了一个出色的 Richfaces 控件,它可以提供相同的功能。我要改用这个。

http://livedemo.exadel.com/richfaces-demo/richfaces/extendedDataTable.jsf?c=extendedDataTable&tab=usage

正如 BalsusC 所建议的,混合不同的 ajaxical 组件库可能不是一个好主意。

此外,我发现特立尼达的文档和示例非常糟糕;特别是与 Richfaces 相比。

我认为特立尼达正在慢慢消亡是正确的吗?

于 2011-02-08T18:03:40.150 回答