2016-11-24 98 views
0

我试图在Form Builder(版本4.9)上添加动态表单xxf:dynamicOrbeon Forms:使用xxf:dynamic

在“构建器屏幕”上,我看到来自动态实例的输入字段,但是当我想通过测试按钮测试它时,我根本没有看到它。

这里是我的代码:

<xh:html xmlns:xh="http://www.w3.org/1999/xhtml" xmlns:xf="http://www.w3.org/2002/xforms" 
    xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:ev="http://www.w3.org/2001/xml-events" 
    xmlns:xi="http://www.w3.org/2001/XInclude" 
    xmlns:xxi="http://orbeon.org/oxf/xml/xinclude" 
    xmlns:xxf="http://orbeon.org/oxf/xml/xforms" 
    xmlns:exf="http://www.exforms.org/exf/1-0" 
    xmlns:fr="http://orbeon.org/oxf/xml/form-runner" 
    xmlns:saxon="http://saxon.sf.net/" 
    xmlns:sql="http://orbeon.org/oxf/xml/sql" 
    xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:fb="http://orbeon.org/oxf/xml/form-builder"> 
<xh:head> 
    <xh:title>Untitled Form</xh:title> 
    <xf:model id="fr-form-model" xxf:expose-xpath-types="true"> 

     <xf:instance id="dynamic-form"> 
      <xh:html> 
       <xh:head> 
        <xh:title>Untitled Form</xh:title> 
        <xf:model id="fr-form-model" xxf:expose-xpath-types="true"> 

     <!-- Main instance --> 
     <xf:instance id="fr-form-instance" xxf:exclude-result-prefixes="#all"> 
          <form> 
           <section-1> 
            <control-1/> 
            <control-3/> 
           </section-1> 
          </form> 
         </xf:instance> 

         <!-- Bindings --> 
     <xf:bind id="fr-form-binds-nowy" ref="instance('fr-form-instance')"> 
          <xf:bind id="section-1-bind" name="section-1" ref="section-1"> 
           <xf:bind id="control-1-bind" name="control-1" ref="control-1"/> 
           <xf:bind id="control-3-bind" ref="control-3" name="control-3"/> 
          </xf:bind> 
         </xf:bind> 

         <!-- Metadata --> 



         <!-- All form resources --> 
     <!-- Don't make readonly by default in case a service modifies the resources --> 
     <xf:instance id="fr-form-resources" xxf:readonly="false" xxf:exclude-result-prefixes="#all"> 
          <resources> 
           <resource xml:lang="en"> 
            <section-1> 
             <label>Untitled Section</label> 
            </section-1> 
            <control-1> 
             <label>example 1</label> 
             <hint/> 
             <alert/> 
            </control-1> 
            <control-3> 
             <label>example 2</label> 
             <hint/> 
            </control-3> 
           </resource> 
          </resources> 
         </xf:instance> 

         <!-- Utility instances for services --> 
     <xf:instance id="fr-service-request-instance" xxf:exclude-result-prefixes="#all"> 
          <request/> 
         </xf:instance> 

         <xf:instance id="fr-service-response-instance" xxf:exclude-result-prefixes="#all"> 
          <response/> 
         </xf:instance> 

        </xf:model> 
       </xh:head> 
       <xh:body> 
        <fr:view> 
         <fr:body xmlns:oxf="http://www.orbeon.com/oxf/processors" 
           xmlns:p="http://www.orbeon.com/oxf/pipeline" 
           xmlns:xbl="http://www.w3.org/ns/xbl"> 
          <fr:section id="section-1-control" bind="section-1-bind"> 
           <xf:label ref="$form-resources/section-1/label"/> 
           <fr:grid> 
            <xh:tr> 
             <xh:td> 
              <xf:input id="control-1-control" bind="control-1-bind"> 
               <xf:label ref="$form-resources/control-1/label"/> 
               <xf:hint ref="$form-resources/control-1/hint"/> 
               <xf:alert ref="$fr-resources/detail/labels/alert"/> 
              </xf:input> 
             </xh:td> 
             <xh:td> 
              <xf:input id="control-3-control" bind="control-3-bind"> 
               <xf:label ref="$form-resources/control-3/label"/> 
               <xf:hint ref="$form-resources/control-3/hint"/> 

               <xf:alert ref="$fr-resources/detail/labels/alert"/> 
              </xf:input> 
             </xh:td> 
            </xh:tr> 
           </fr:grid> 
          </fr:section> 
         </fr:body> 
        </fr:view> 
       </xh:body> 
      </xh:html> 

     </xf:instance> 
     <!-- Main instance --> 
     <xf:instance id="fr-form-instance" xxf:exclude-result-prefixes="#all"> 
      <form> 
       <section-1> 
        <control-1/> 
       </section-1> 
      </form> 
     </xf:instance> 

     <!-- Bindings --> 
     <xf:bind id="fr-form-binds" ref="instance('fr-form-instance')"> 
      <xf:bind id="section-1-bind" name="section-1" ref="section-1"> 
       <xf:bind id="control-1-bind" name="control-1" ref="control-1"/> 
      </xf:bind> 
     </xf:bind> 

     <!-- Metadata --> 
     <xf:instance xxf:readonly="true" id="fr-form-metadata" xxf:exclude-result-prefixes="#all"> 
      <metadata> 
       <application-name>test</application-name> 
       <form-name>dynamic_site</form-name> 
       <title xml:lang="en">Untitled Form</title> 
       <description xml:lang="en"/> 
       <singleton>false</singleton> 
      </metadata> 
     </xf:instance> 

     <!-- Attachments --> 
     <xf:instance id="fr-form-attachments" xxf:exclude-result-prefixes="#all"> 
      <attachments> 
       <css mediatype="text/css" filename="" size=""/> 
       <pdf mediatype="application/pdf" filename="" size=""/> 
      </attachments> 
     </xf:instance> 

     <!-- All form resources --> 
     <!-- Don't make readonly by default in case a service modifies the resources --> 
     <xf:instance id="fr-form-resources" xxf:readonly="false" xxf:exclude-result-prefixes="#all"> 
      <resources> 
       <resource xml:lang="en"> 
        <section-1> 
         <label>Untitled Section</label> 
        </section-1> 
        <control-1> 
         <label/> 
         <hint/> 
         <alert/> 
        </control-1> 
       </resource> 
      </resources> 
     </xf:instance> 

     <!-- Utility instances for services --> 
     <xf:instance id="fr-service-request-instance" xxf:exclude-result-prefixes="#all"> 
      <request/> 
     </xf:instance> 

     <xf:instance id="fr-service-response-instance" xxf:exclude-result-prefixes="#all"> 
      <response/> 
     </xf:instance> 

    </xf:model> 
</xh:head> 
<xh:body> 
    <fr:view> 
     <xxf:dynamic ref="instance('dynamic-form')"/> 
     <fr:body xmlns:oxf="http://www.orbeon.com/oxf/processors" 
       xmlns:p="http://www.orbeon.com/oxf/pipeline" 
       xmlns:xbl="http://www.w3.org/ns/xbl"> 
      <fr:section id="section-1-control" bind="section-1-bind"> 
       <xf:label ref="$form-resources/section-1/label"/> 
       <fr:grid> 
        <xh:tr> 
         <xh:td> 
          <xf:input id="control-1-control" bind="control-1-bind"> 
           <xf:label ref="$form-resources/control-1/label"/> 
           <xf:hint ref="$form-resources/control-1/hint"/> 
           <xf:alert ref="$fr-resources/detail/labels/alert"/> 
          </xf:input> 
         </xh:td> 
         <xh:td/> 
        </xh:tr> 
       </fr:grid> 
      </fr:section> 
     </fr:body> 
    </fr:view> 
</xh:body> 

回答

0

不幸的是,简单的答案是<xxf:dynamic>不记录,并应该被认为只是在这一点上使用表单生成器的内部特征。