2

この問題を解決するために、JSF を 2.1.6 から 2.1.22 にアップグレードしました: JSF エラー - IllegalStateException: PWC3999: 応答がコミットされた後にセッションを作成できません

そして、それは機能します。しかし、JSF バージョンの変更により、別の問題が発生しました。一部のコンポーネントが表示されず、GlassFish が 2 つの例外を含むスタックトレースをスローしました。最初:

javax.faces.FacesException: Cannot find component with identifier ":previewForm" referenced from "indexForm:publicacoesDt:j_idt112".
    at org.primefaces.util.ComponentUtils.findClientIds(ComponentUtils.java:271)
    at org.primefaces.util.AjaxRequestBuilder.addIds(AjaxRequestBuilder.java:102)
    at org.primefaces.util.AjaxRequestBuilder.update(AjaxRequestBuilder.java:90)
    at org.primefaces.renderkit.CoreRenderer.buildAjaxRequest(CoreRenderer.java:196)
    at org.primefaces.component.commandlink.CommandLinkRenderer.encodeEnd(CommandLinkRenderer.java:64)
    at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:905)
    at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:312)
    ...

そして2番目:

PWC1406: Servlet.service() for servlet Faces Servlet threw exception
java.lang.IllegalStateException: CDATA tags may not nest
    at com.sun.faces.renderkit.html_basic.HtmlResponseWriter.startCDATA(HtmlResponseWriter.java:664)
    at javax.faces.context.ResponseWriterWrapper.startCDATA(ResponseWriterWrapper.java:172)
    at javax.faces.context.PartialResponseWriter.startError(PartialResponseWriter.java:342)
    at org.primefaces.context.PrimePartialResponseWriter.startError(PrimePartialResponseWriter.java:155)
    at com.sun.faces.context.AjaxExceptionHandlerImpl.handlePartialResponseError(AjaxExceptionHandlerImpl.java:200)
    at com.sun.faces.context.AjaxExceptionHandlerImpl.handle(AjaxExceptionHandlerImpl.java:124)
    at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:119)
    at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:594)
    ...

識別子「indexForm:publicacoesDt:j_idt112」を持つコンポーネントは、PrimeFaces の commandLink であり、「:previewForm」は JSF フォームです。この問題は、フォームを commandLink で更新する commandButton が起動されたときに発生します。しかし、ちょうど 2 回目の提出で、最初の提出は成功しました。

なぜこの問題が発生するのか知っている人はいますか?

4

0 に答える 0