2015-12-29 72 views
0

我需要使用從數據庫服務獲取的html代碼填充靜態文本字段值。orbeon可以從數據庫提供靜態html嗎?

我將標記設置爲使用HTML標記,它正確地與模塊源中寫入的靜態文本一起工作,但是當我的操作設置了新值時,我運行該模塊時,html標記被轉義並且不會作爲html被回顯。

我試圖用< >逃脫,並使用我所有的數據庫文本<![CDATA[]]>沒有任何幫助。

+0

如果沒有跑步形式,這有點難以分辨。你能分享一下嗎? – ebruchez

回答

0

我設法得到這個使用HTML字段(tinymce)只讀設置爲true()。

這些OXF的相關部分:

字段定義:

<xh:tr> 
    <xh:td> 
     <fr:tinymce xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
      xmlns:xxbl="http://orbeon.org/oxf/xml/xbl" 
      xmlns:f="http://orbeon.org/oxf/xml/formatting" 
      id="requisiti_html-control" 
      bind="requisiti_html-bind"> 
      <xf:label ref="$form-resources/requisiti_html/label"/> 
      <xf:hint ref="$form-resources/requisiti_html/hint"/> 
      <xf:alert ref="$fr-resources/detail/labels/alert"/> 


     </fr:tinymce> 


    </xh:td> 
</xh:tr> 

結合:

<xf:bind id="requisiti_html-bind" ref="requisiti_html" name="requisiti_html" 
    relevant="$requisiti_visibile eq 'Y'" 
    readonly="true()"/> 

數據庫查詢:

行動來填充字段:

<xf:instance id="recupera_tendine_pbs_mod_011-instance" class="fr-database-service" 
    xxf:exclude-result-prefixes="#all"> 
    <body xmlns:secure="java:org.orbeon.oxf.util.SecureUtils" 
     xmlns:frf="java:org.orbeon.oxf.fr.FormRunner" 
     xmlns:version="java:org.orbeon.oxf.common.Version" 
     xmlns:fbf="java:org.orbeon.oxf.fb.FormBuilder">&lt;sql:config xmlns:sql="http://orbeon.org/oxf/xml/sql"&gt; 
     &lt;sql:datasource&gt;mysql&lt;/sql:datasource&gt; 
     &lt;sql:query&gt;SELECT a_key, a_value FROM pbs_mod_011 
     WHERE idComune = &lt;sql:param type="xs:decimal" select=""/&gt; ORDER BY a_value ASC&lt;/sql:query&gt; 

     &lt;/sql:config&gt;</body> 
</xf:instance> 
<xf:submission id="recupera_tendine_pbs_mod_011-submission" class="fr-database-service" 
    ref="instance('fr-service-request-instance')" 
    resource="/fr/service/custom/orbeon/database" 
    method="post" 
    serialization="application/xml" 
    replace="instance" 
    instance="fr-service-response-instance"/> 

<xf:action ev:event="xforms-submit-done" 
    ev:observer="recupera_tendine_pbs_mod_011-submission" 
    context="instance('fr-service-response-instance')"> 

    <xf:action class="fr-set-control-value-action"> 
     <xf:var name="control-name" value="'requisiti_html'"/> 
     <xf:var name="control-value" value="/response/row[a-key=&#34;requisiti_html&#34;]/a-value"/> 
    </xf:action> 
</xf:action>