自定义组件编码开始后,部分响应中的 CDATA 关闭

发布于 2025-01-03 14:29:09 字数 1077 浏览 0 评论 0原文

我有一个自定义组件:

<g:get name="conf_temporadas" anchorid="nombre" defaulttext="nombre" customer="9999" nohtml="true" />

它只是根据属性和打印从数据库中获取简单的文本。

当我更新包含此组件的元素时,XML 不正确,因为 XML CDATA 在打印 后关闭。

<p:outputPanel id="noticePanel">
  <div class="wrapbox notice"> 
    <a href="#Cerrar" title="Cerrar" class="close">    
      <g:get name="form_common" anchorid="cerrar" defaulttext="Cerrar" customer="9999" nohtml="true"/>
    </a>
    <p><h:outputText  value="#{Notice.noticeMessage}" id="notice" escape="false"></h:outputText></p>
    #{Notice.clearNotice}
  </div>
</p:outputPanel>

当我更新 时,错误是:

XML 讲座错误:etiqueta sin pareja。请参见:。使用:moz-nullprincipal:{8fefe5c1-e8c7-4342-837a-3b4bae9dfc19} 第 2 行编号,第 116 栏:Cerrar]]>

如您所见,在“Cerrar”之后,CDATA 关闭。这是如何引起的以及如何解决?

I have a custom component:

<g:get name="conf_temporadas" anchorid="nombre" defaulttext="nombre" customer="9999" nohtml="true" />

which just gets a simple text from a database based on the attributes and prints.

When I update an element that contains this component, the XML is not correct because the XML CDATA close after the <g:get> is printed.

<p:outputPanel id="noticePanel">
  <div class="wrapbox notice"> 
    <a href="#Cerrar" title="Cerrar" class="close">    
      <g:get name="form_common" anchorid="cerrar" defaulttext="Cerrar" customer="9999" nohtml="true"/>
    </a>
    <p><h:outputText  value="#{Notice.noticeMessage}" id="notice" escape="false"></h:outputText></p>
    #{Notice.clearNotice}
  </div>
</p:outputPanel>

When I update the <p:outputPanel>, the error is:

Error de lectura XML: etiqueta sin pareja. Se esperaba: </update>. Ubicación: moz-nullprincipal:{8fefe5c1-e8c7-4342-837a-3b4bae9dfc19} Número de línea 2, columna 116: <span id="i_notice:j_id_b">Cerrar]]> </span></a>

As you can see, after "Cerrar" the CDATA is closed. How is this caused and how can I solve it?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

童话里做英雄 2025-01-10 14:29:09

解决方案是在编码方法的自定义组件 ResponseWriter 中,我调用 ResponseWriter#close ,在那一刻,CDATA 关闭]]。

我只是删除了 ResponseWriter#close,一切都变得很神奇

谢谢大家的回答,BalusC,你给我指明了方向。

The solution is at the custom component ResponseWriter of the encode Method, I call ResponseWriter#close and in that moment, the CDATA gets CLOSE ]].

I just remove the ResponseWriter#close, and everything works as a charm

Thanks you all, for your answers, BalusC, you show me the way.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文