PL: Dummy in Form Builder

classic Classic list List threaded Threaded
26 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Re: PL: Dummy in Form Builder

Bruno
Alex,

Actually my PL does not care about that <xbl> node.
But when a form is published (with library dependencies) then it can not be edited.
After searching a little the only difference I found was the <xbl> node.

If you are confirming that <xbl> is put there by Orbeon then the problem must be another.
Check:

This form has exactly the same problem as my local installation.

The only difference is that at Orbeon installation I can edit the Form code while in my local installation when editing I only see the <dummy> node.

Still hunting down this problem :)

regards,
bruno

El mié, 10 feb 2021 a las 18:42, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

This is a complete form with the XBL node added, search for "xbl:xbl".

<?xml version="1.0" encoding="UTF-8"?>
<xh:html xmlns:array="http://www.w3.org/2005/xpath-functions/array" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:exf="http://www.exforms.org/exf/1-0" xmlns:fb="http://orbeon.org/oxf/xml/form-builder" xmlns:fr="http://orbeon.org/oxf/xml/form-runner" xmlns:map="http://www.w3.org/2005/xpath-functions/map" xmlns:saxon="http://saxon.sf.net/" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sql="http://orbeon.org/oxf/xml/sql" xmlns:xf="http://www.w3.org/2002/xforms" xmlns:xh="http://www.w3.org/1999/xhtml" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xxf="http://orbeon.org/oxf/xml/xforms" xmlns:xxi="http://orbeon.org/oxf/xml/xinclude">
<xh:head>
<xh:title>11</xh:title>
<xf:model xxf:analysis.calculate="true" xxf:expose-xpath-types="true" id="fr-form-model">
<!-- Main instance -->
<xf:instance xxf:exclude-result-prefixes="#all" id="fr-form-instance" xxf:index="id">
<form>
<section-2>
<grid-1>
<name/>
<surname/>
</grid-1>
</section-2>
</form>
</xf:instance>
<!-- Bindings -->
<xf:bind id="fr-form-binds" ref="instance(''fr-form-instance'')">
<xf:bind id="section-2-bind" name="section-2" ref="section-2"/>
</xf:bind>
<!-- Metadata -->
<xf:instance xxf:exclude-result-prefixes="#all" id="fr-form-metadata" xxf:readonly="true">
<metadata>
<application-name>gs</application-name>
<form-name>test11</form-name>
<title xml:lang="en">11</title>
<description xml:lang="en"/>
<created-with-version>2020.1.1.202102012142 PE</created-with-version>
<library-versions>
<app>3</app>
</library-versions>
<updated-with-version>2020.1.1.202102012142 PE</updated-with-version>
<migration version="2019.1.0">{"migrations":[{"containerPath":[{"value":"section-2"}],"newGridElem":{"value":"grid-1"},"afterElem":null,"content":[{"value":"name"},{"value":"surname"}],"topLevel":false}]}</migration>
</metadata>
</xf:instance>
<!-- Attachments -->
<xf:instance xxf:exclude-result-prefixes="#all" id="fr-form-attachments">
<attachments/>
</xf:instance>
<!-- All form resources -->
<xf:instance xxf:exclude-result-prefixes="#all" id="fr-form-resources" xxf:readonly="true">
<resources>
<resource xml:lang="en">
<section-2>
<label/>
<help/>
</section-2>
</resource>
</resources>
</xf:instance>
</xf:model>
<xbl:xbl xmlns:component="http://orbeon.org/oxf/xml/form-builder/component/gs/library" xmlns:fbf="java:org.orbeon.oxf.fb.FormBuilderXPathApi" xmlns:frf="java:org.orbeon.oxf.fr.FormRunner" xmlns:p="http://www.orbeon.com/oxf/pipeline" xmlns:xbl="http://www.w3.org/ns/xbl" xmlns:xxbl="http://orbeon.org/oxf/xml/xbl">
<xbl:binding class="fr-section-component" element="component|section-1" id="gs-section-1-component">
<xbl:implementation>
<xf:model id="section-1-model">
<xf:instance id="fr-form-instance" xxf:index="id" xxbl:mirror="true">
<empty/>
</xf:instance>
<xf:instance id="fr-form-template">
<section-1>
<grid-1>
<name/>
<surname/>
</grid-1>
</section-1>
</xf:instance>
<xf:bind id="fr-form-binds" ref="instance(''fr-form-instance'')">
<xf:bind id="grid-1-bind" name="grid-1" ref="grid-1">
<xf:bind id="name-bind" name="name" ref="name" xxf:whitespace="trim"/>
<xf:bind id="surname-bind" name="surname" ref="surname" xxf:whitespace="trim"/>
</xf:bind>
</xf:bind>
<xf:instance id="fr-form-resources" xxf:readonly="true">
<resources>
<resource xml:lang="en">
<section-1>
<label>Name</label>
</section-1>
<name>
<label>Name</label>
<hint/>
</name>
<surname>
<label>Surname</label>
<hint/>
</surname>
</resource>
</resources>
</xf:instance>
<xf:instance id="readonly">
<readonly/>
</xf:instance>
<xf:var name="fr-params" value="xxf:instance(''fr-parameters-instance'')"/>
<xf:var name="fr-mode" value="$fr-params/mode"/>
<xf:bind readonly="                             fr:is-readonly-mode()         or                             instance(''readonly'') = ''true'' or                             fr:is-design-time()" ref="instance(''fr-form-instance'')"/>
<xf:action class="fr-design-time-preserve" event="xforms-model-construct-done">
<xf:var name="is-empty" value="empty(instance()/*)"/>
<xf:action if="$is-empty">
<xf:insert context="instance()" origin="instance(''fr-form-template'')/*"/>
<xf:rebuild/>
<xf:recalculate xxf:defaults="true"/>
</xf:action>
<xf:action if="not($is-empty)">
<xf:var xmlns:migration="java:org.orbeon.oxf.fr.SimpleDataMigration" name="simply-migrated" value="                                     migration:dataMaybeWithSimpleMigration(                                         event(''xxf:absolute-targetid''),                                         instance(''fr-form-template''),                                         instance()                                     )"/>
<xf:action if="exists($simply-migrated)">
<xf:delete ref="instance()/*"/>
<xf:insert context="instance()" origin="$simply-migrated/*"/>
<xf:rebuild/>
<xf:recalculate xxf:defaults="true"/>
</xf:action>
</xf:action>
</xf:action>
<xf:action event="xforms-model-construct-done">
<xf:insert xmlns:migration="java:org.orbeon.oxf.fr.SimpleDataMigration" context="." iterate="migration:iterateBinds(event(''xxf:absolute-targetid''), instance())" origin="xf:attribute(''fr:relevant'', ''false'')"/>
</xf:action>
<xf:insert context="event(''xxf:binding'')" event="xforms-disabled" if="event(''xxf:binding'')/root()/* is instance(''fr-form-instance'')" observer="fr-section-template-view" origin="xf:attribute(''fr:relevant'', ''false'')" xxf:phantom="true"/>
<xf:delete event="xforms-enabled" if="event(''xxf:binding'')/root() is instance(''fr-form-instance'')/root()" observer="fr-section-template-view" ref="event(''xxf:binding'')/@fr:relevant" xxf:phantom="true"/>
</xf:model>
</xbl:implementation>
<xbl:template>
<xf:group appearance="xxf:internal" id="fr-section-template-view" model="section-1-model">
<xf:var id="context" name="context" value="xxf:binding-context(''gs-section-1-component'')"/>
<xf:var as="xs:boolean" name="readonly" value="exf:readonly($context)">
<xf:setvalue class="fr-design-time-preserve" event="xforms-enabled xforms-value-changed" ref="instance(''readonly'')" value="exf:readonly($context)"/>
</xf:var>
<xf:var as="element()?" name="fr-resources">
<xxf:value xxbl:scope="outer" value="$fr-resources"/>
</xf:var>
<xf:var as="element(resource)" name="form-resources" value="instance(''fr-form-resources'')/(resource[@xml:lang = xxf:instance(''fr-language-instance'')], resource[1])[1]"/>
<xf:label xmlns:oxf="http://www.orbeon.com/oxf/processors" ref="$form-resources/section-1/label"/>
<fr:grid xmlns:oxf="http://www.orbeon.com/oxf/processors" bind="grid-1-bind" id="grid-1-grid">
<fr:c w="12" x="1" y="1">
<xf:input bind="name-bind" class="fr-summary fr-search" id="name-control">
<xf:label ref="$form-resources/name/label"/>
<xf:hint ref="$form-resources/name/hint"/>
<xf:alert ref="$fr-resources/detail/labels/alert"/>
</xf:input>
</fr:c>
<fr:c w="12" x="1" y="2">
<xf:input bind="surname-bind" class="fr-summary fr-search" id="surname-control">
<xf:label ref="$form-resources/surname/label"/>
<xf:hint ref="$form-resources/surname/hint"/>
<xf:alert ref="$fr-resources/detail/labels/alert"/>
</xf:input>
</fr:c>
</fr:grid>
</xf:group>
</xbl:template>
</xbl:binding>
</xbl:xbl>
</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 bind="section-2-bind" id="section-2-section">
<xf:label ref="$form-resources/section-2/label"/>
<component:section-1 xmlns:component="http://orbeon.org/oxf/xml/form-builder/component/gs/library" xmlns:fbf="java:org.orbeon.oxf.fb.FormBuilderXPathApi" xmlns:frf="java:org.orbeon.oxf.fr.FormRunner" xmlns:xxbl="http://orbeon.org/oxf/xml/xbl" xmlns="http://orbeon.org/oxf/xml/form-builder"/>
</fr:section>
</fr:body>
</fr:view>
</xh:body>
</xh:html>

El mié, 10 feb 2021 a las 17:44, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

It happens on Orbeon 2020.1.1 but only with my Persistence Layer. If i switch to MySQL it works fine.

I do not know why the <xbl:xbl>... node is being added on Publish action only (see previous post for the complete <xbl> node).
Also the XML is taken from http put request directly so at this point my PL is doing nothing only reading the XML from the request body (which already has the <xbl> node).

regards,
bruno


El vie, 5 feb 2021 a las 18:48, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

I have made a video with the problem:
1) It shows the library
2) Create a new form using a section of 1)
3) Publish it
4) With a breakpoint it show the extra XBL node that is inserted in the XML of the form (with Save this does not happend)
5) Try to edit 3) but nothing is displayed

Maybe the video gives you some clues of the cause:


El vie, 5 feb 2021 a las 16:44, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

Orbeon 2020.1.1 behave as expected.

My local installation is 2020.1, so i will upgrade and check if it is happening.

regards,
bruno

El jue, 28 ene 2021 a las 13:38, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Hi,

Let me know when you deploy Orbeon 2020.1 on https://www.orbeon.com/try

I will try it there ...

regards,
bruno

El mié, 27 ene 2021 a las 15:59, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,
1) Create the form
2) Add a section from the App library
3) Publish the form
4) Goto to summary
5) Edit the form
Orbeon 2020.1

At 3) Orbeon is sending the extra node in the XML string. Then in 5) the form is not displayed because of the extra node.

It does NOT happen with Save.

regards,
bruno

El lun, 25 ene 2021 a las 18:21, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Hi Alex,

Just to confirm that is Orbeon that adds the extra <xbl:xbl> node and only does this on Publishing.
Because my services receive the XML string with that node added.

The workaround is to Save the form once after the Publishing and this action removes the extra node and the form can be edited from the Summary without problems.

regards,
bruno


El lun, 25 ene 2021 a las 18:13, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

I found the culprit but not sure yet why this is happening...
After Publishing a form an extra XML is added after <xf:model> node. Also the problems are forms with references to library forms.
(This does not happen when the form definition is Saved only after Publishing).

The node is the following (not sure if it is a bug on my PL or is an Orbeon thing):
<xbl:xbl xmlns:xbl="http://www.w3.org/ns/xbl" xmlns:fbf="java:org.orbeon.oxf.fb.FormBuilderXPathApi" xmlns:xxbl="http://orbeon.org/oxf/xml/xbl" xmlns:frf="java:org.orbeon.oxf.fr.FormRunner" xmlns:component="http://orbeon.org/oxf/xml/form-builder/component/gs/library" xmlns:p="http://www.orbeon.com/oxf/pipeline"><xbl:binding id="gs-section-1-component" element="component|section-1" class="fr-section-component"><xbl:implementation><xf:model id="section-1-model"><xf:instance id="fr-form-instance" xxbl:mirror="true" xxf:index="id"><empty/></xf:instance><xf:instance id="fr-form-template"><section-1>
                        <grid-1>
                            <gs_name/>
                        </grid-1>
                    </section-1></xf:instance><xf:bind id="fr-form-binds" ref="instance(''fr-form-instance'')"><xf:bind id="grid-1-bind" ref="grid-1" name="grid-1">
                        <xf:bind id="gs_name-bind" name="gs_name" ref="gs_name" xxf:whitespace="trim"/>
                    </xf:bind></xf:bind><xf:instance id="fr-form-resources" xxf:readonly="true"><resources><resource xml:lang="en"><section-1>
                            <label>Untitled Section</label>
                        </section-1><gs_name>
                            <label>GS Name</label>
                            <hint/>
                        </gs_name></resource></resources></xf:instance><xf:instance id="readonly"><readonly/></xf:instance><xf:var name="fr-params" value="xxf:instance(''fr-parameters-instance'')"/><xf:var name="fr-mode" value="$fr-params/mode"/><xf:bind ref="instance(''fr-form-instance'')" readonly="                             fr:is-readonly-mode()         or                             instance(''readonly'') = ''true'' or                             fr:is-design-time()"/><xf:action event="xforms-model-construct-done" class="fr-design-time-preserve"><xf:var name="is-empty" value="empty(instance()/*)"/><xf:action if="$is-empty"><xf:insert context="instance()" origin="instance(''fr-form-template'')/*"/><xf:rebuild/><xf:recalculate xxf:defaults="true"/></xf:action><xf:action if="not($is-empty)"><xf:var xmlns:migration="java:org.orbeon.oxf.fr.SimpleDataMigration" name="simply-migrated" value="                                     migration:dataMaybeWithSimpleMigration(                                         event(''xxf:absolute-targetid''),                                         instance(''fr-form-template''),                                         instance()                                     )"/><xf:action if="exists($simply-migrated)"><xf:delete ref="instance()/*"/><xf:insert context="instance()" origin="$simply-migrated/*"/><xf:rebuild/><xf:recalculate xxf:defaults="true"/></xf:action></xf:action></xf:action><xf:action event="xforms-model-construct-done"><xf:insert xmlns:migration="java:org.orbeon.oxf.fr.SimpleDataMigration" iterate="migration:iterateBinds(event(''xxf:absolute-targetid''), instance())" context="." origin="xf:attribute(''fr:relevant'', ''false'')"/></xf:action><xf:insert observer="fr-section-template-view" event="xforms-disabled" xxf:phantom="true" if="event(''xxf:binding'')/root()/* is instance(''fr-form-instance'')" context="event(''xxf:binding'')" origin="xf:attribute(''fr:relevant'', ''false'')"/><xf:delete observer="fr-section-template-view" event="xforms-enabled" xxf:phantom="true" if="event(''xxf:binding'')/root() is instance(''fr-form-instance'')/root()" ref="event(''xxf:binding'')/@fr:relevant"/></xf:model></xbl:implementation><xbl:template><xf:group appearance="xxf:internal" model="section-1-model" id="fr-section-template-view"><xf:var name="context" id="context" value="xxf:binding-context(''gs-section-1-component'')"/><xf:var name="readonly" as="xs:boolean" value="exf:readonly($context)"><xf:setvalue event="xforms-enabled xforms-value-changed" ref="instance(''readonly'')" value="exf:readonly($context)" class="fr-design-time-preserve"/></xf:var><xf:var name="fr-resources" as="element()?"><xxf:value value="$fr-resources" xxbl:scope="outer"/></xf:var><xf:var name="form-resources" value="instance(''fr-form-resources'')/(resource[@xml:lang = xxf:instance(''fr-language-instance'')], resource[1])[1]" as="element(resource)"/><xf:label xmlns:oxf="http://www.orbeon.com/oxf/processors" ref="$form-resources/section-1/label"/><fr:grid xmlns:oxf="http://www.orbeon.com/oxf/processors" id="grid-1-grid" bind="grid-1-bind">
                        <fr:c y="1" x="1" w="12">
                            <xf:input id="gs_name-control" bind="gs_name-bind" class="fr-summary fr-search">
                                <xf:label ref="$form-resources/gs_name/label"/>
                                <xf:hint ref="$form-resources/gs_name/hint"/>
                                <xf:alert ref="$fr-resources/detail/labels/alert"/>
                            </xf:input>
                        </fr:c>
                    </fr:grid></xf:group></xbl:template></xbl:binding></xbl:xbl>


El lun, 25 ene 2021 a las 17:15, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

Still checking this error but the problem is only on Form Builder.

The form runner correctly renders the form in the NEW url. Also the EDIT page the form is correctly rendered.
Only the Form Builder does not display the form definition.

The root of the problem is unknown yet but if I found something I would let you know.

regards,
bruno



El vie, 22 ene 2021 a las 17:40, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Hi,

I think it is a problem of Form formats.

Because I executed some old TestCases that for sure had an old format (4.0, 4.8 i think) and also created some forms online so they were stored with 2019.1.0 format.

And is not supported to have different formats in the same PL.

I think this is because if I delete the old forms and only use the one created online then all forms are displayed correctly.

When different formats are mixed then the problems start.

Is there any way to transform old formats to new one with a script ?}

regards,
bruno






El jue, 21 ene 2021 a las 16:31, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Hi,

In which situation the Form Builder will set the form source to:
<dummy xmlns:xbl="http://www.w3.org/ns/xbl" xmlns:xxf="http://orbeon.org/oxf/xml/xforms"
       xmlns:xxi="http://orbeon.org/oxf/xml/xinclude"
       xmlns:saxon="http://saxon.sf.net/"
       xmlns:fbf="java:org.orbeon.oxf.fb.FormBuilderXPathApi"
       xmlns:fr="http://orbeon.org/oxf/xml/form-runner"
       xmlns:secure="java:org.orbeon.oxf.util.SecureUtils"
       xmlns:xf="http://www.w3.org/2002/xforms"
       xmlns:xh="http://www.w3.org/1999/xhtml"
       xmlns:p="http://www.orbeon.com/oxf/pipeline"
       xmlns:ev="http://www.w3.org/2001/xml-events"
       xmlns:xi="http://www.w3.org/2001/XInclude"
       xmlns:toolboxOps="java:org.orbeon.oxf.fb.ToolboxOps"
       xmlns:xs="http://www.w3.org/2001/XMLSchema"
       xmlns:frf="java:org.orbeon.oxf.fr.FormRunner"
       xmlns:fb="http://orbeon.org/oxf/xml/form-builder"/>

There is a bug in my Persistence Layer for any form that use a section library:
1) Create the form
2) Add a section from any library
3) Publish the form
4) Goto to summary
5) Edit the form
And now the form is not displayed and if I "Edit Source" in the Form Builder it display the HTML code above (with the dummy mode).

It is also strange that only happen with Publish because if it is only Save it can be edit normaly.

regards,
bruno

--
You received this message because you are subscribed to the Google Groups "Orbeon Forms" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/orbeon/CALjxVcTmzC3VyjU%2B-AU4QC9MuOA0CQbQNgbTmkLBZY0G%3Di_K-w%40mail.gmail.com.
Reply | Threaded
Open this post in threaded view
|

Re: PL: Dummy in Form Builder

Bruno
Alex,

If i remove the <xbl> node manually then I can edit the form on the Form Builder.

If the <xbl> node is present then is render in the Form Builder like:

regards,
bruno

El jue, 11 feb 2021 a las 17:19, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

Actually my PL does not care about that <xbl> node.
But when a form is published (with library dependencies) then it can not be edited.
After searching a little the only difference I found was the <xbl> node.

If you are confirming that <xbl> is put there by Orbeon then the problem must be another.
Check:

This form has exactly the same problem as my local installation.

The only difference is that at Orbeon installation I can edit the Form code while in my local installation when editing I only see the <dummy> node.

Still hunting down this problem :)

regards,
bruno

El mié, 10 feb 2021 a las 18:42, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

This is a complete form with the XBL node added, search for "xbl:xbl".

<?xml version="1.0" encoding="UTF-8"?>
<xh:html xmlns:array="http://www.w3.org/2005/xpath-functions/array" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:exf="http://www.exforms.org/exf/1-0" xmlns:fb="http://orbeon.org/oxf/xml/form-builder" xmlns:fr="http://orbeon.org/oxf/xml/form-runner" xmlns:map="http://www.w3.org/2005/xpath-functions/map" xmlns:saxon="http://saxon.sf.net/" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sql="http://orbeon.org/oxf/xml/sql" xmlns:xf="http://www.w3.org/2002/xforms" xmlns:xh="http://www.w3.org/1999/xhtml" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xxf="http://orbeon.org/oxf/xml/xforms" xmlns:xxi="http://orbeon.org/oxf/xml/xinclude">
<xh:head>
<xh:title>11</xh:title>
<xf:model xxf:analysis.calculate="true" xxf:expose-xpath-types="true" id="fr-form-model">
<!-- Main instance -->
<xf:instance xxf:exclude-result-prefixes="#all" id="fr-form-instance" xxf:index="id">
<form>
<section-2>
<grid-1>
<name/>
<surname/>
</grid-1>
</section-2>
</form>
</xf:instance>
<!-- Bindings -->
<xf:bind id="fr-form-binds" ref="instance(''fr-form-instance'')">
<xf:bind id="section-2-bind" name="section-2" ref="section-2"/>
</xf:bind>
<!-- Metadata -->
<xf:instance xxf:exclude-result-prefixes="#all" id="fr-form-metadata" xxf:readonly="true">
<metadata>
<application-name>gs</application-name>
<form-name>test11</form-name>
<title xml:lang="en">11</title>
<description xml:lang="en"/>
<created-with-version>2020.1.1.202102012142 PE</created-with-version>
<library-versions>
<app>3</app>
</library-versions>
<updated-with-version>2020.1.1.202102012142 PE</updated-with-version>
<migration version="2019.1.0">{"migrations":[{"containerPath":[{"value":"section-2"}],"newGridElem":{"value":"grid-1"},"afterElem":null,"content":[{"value":"name"},{"value":"surname"}],"topLevel":false}]}</migration>
</metadata>
</xf:instance>
<!-- Attachments -->
<xf:instance xxf:exclude-result-prefixes="#all" id="fr-form-attachments">
<attachments/>
</xf:instance>
<!-- All form resources -->
<xf:instance xxf:exclude-result-prefixes="#all" id="fr-form-resources" xxf:readonly="true">
<resources>
<resource xml:lang="en">
<section-2>
<label/>
<help/>
</section-2>
</resource>
</resources>
</xf:instance>
</xf:model>
<xbl:xbl xmlns:component="http://orbeon.org/oxf/xml/form-builder/component/gs/library" xmlns:fbf="java:org.orbeon.oxf.fb.FormBuilderXPathApi" xmlns:frf="java:org.orbeon.oxf.fr.FormRunner" xmlns:p="http://www.orbeon.com/oxf/pipeline" xmlns:xbl="http://www.w3.org/ns/xbl" xmlns:xxbl="http://orbeon.org/oxf/xml/xbl">
<xbl:binding class="fr-section-component" element="component|section-1" id="gs-section-1-component">
<xbl:implementation>
<xf:model id="section-1-model">
<xf:instance id="fr-form-instance" xxf:index="id" xxbl:mirror="true">
<empty/>
</xf:instance>
<xf:instance id="fr-form-template">
<section-1>
<grid-1>
<name/>
<surname/>
</grid-1>
</section-1>
</xf:instance>
<xf:bind id="fr-form-binds" ref="instance(''fr-form-instance'')">
<xf:bind id="grid-1-bind" name="grid-1" ref="grid-1">
<xf:bind id="name-bind" name="name" ref="name" xxf:whitespace="trim"/>
<xf:bind id="surname-bind" name="surname" ref="surname" xxf:whitespace="trim"/>
</xf:bind>
</xf:bind>
<xf:instance id="fr-form-resources" xxf:readonly="true">
<resources>
<resource xml:lang="en">
<section-1>
<label>Name</label>
</section-1>
<name>
<label>Name</label>
<hint/>
</name>
<surname>
<label>Surname</label>
<hint/>
</surname>
</resource>
</resources>
</xf:instance>
<xf:instance id="readonly">
<readonly/>
</xf:instance>
<xf:var name="fr-params" value="xxf:instance(''fr-parameters-instance'')"/>
<xf:var name="fr-mode" value="$fr-params/mode"/>
<xf:bind readonly="                             fr:is-readonly-mode()         or                             instance(''readonly'') = ''true'' or                             fr:is-design-time()" ref="instance(''fr-form-instance'')"/>
<xf:action class="fr-design-time-preserve" event="xforms-model-construct-done">
<xf:var name="is-empty" value="empty(instance()/*)"/>
<xf:action if="$is-empty">
<xf:insert context="instance()" origin="instance(''fr-form-template'')/*"/>
<xf:rebuild/>
<xf:recalculate xxf:defaults="true"/>
</xf:action>
<xf:action if="not($is-empty)">
<xf:var xmlns:migration="java:org.orbeon.oxf.fr.SimpleDataMigration" name="simply-migrated" value="                                     migration:dataMaybeWithSimpleMigration(                                         event(''xxf:absolute-targetid''),                                         instance(''fr-form-template''),                                         instance()                                     )"/>
<xf:action if="exists($simply-migrated)">
<xf:delete ref="instance()/*"/>
<xf:insert context="instance()" origin="$simply-migrated/*"/>
<xf:rebuild/>
<xf:recalculate xxf:defaults="true"/>
</xf:action>
</xf:action>
</xf:action>
<xf:action event="xforms-model-construct-done">
<xf:insert xmlns:migration="java:org.orbeon.oxf.fr.SimpleDataMigration" context="." iterate="migration:iterateBinds(event(''xxf:absolute-targetid''), instance())" origin="xf:attribute(''fr:relevant'', ''false'')"/>
</xf:action>
<xf:insert context="event(''xxf:binding'')" event="xforms-disabled" if="event(''xxf:binding'')/root()/* is instance(''fr-form-instance'')" observer="fr-section-template-view" origin="xf:attribute(''fr:relevant'', ''false'')" xxf:phantom="true"/>
<xf:delete event="xforms-enabled" if="event(''xxf:binding'')/root() is instance(''fr-form-instance'')/root()" observer="fr-section-template-view" ref="event(''xxf:binding'')/@fr:relevant" xxf:phantom="true"/>
</xf:model>
</xbl:implementation>
<xbl:template>
<xf:group appearance="xxf:internal" id="fr-section-template-view" model="section-1-model">
<xf:var id="context" name="context" value="xxf:binding-context(''gs-section-1-component'')"/>
<xf:var as="xs:boolean" name="readonly" value="exf:readonly($context)">
<xf:setvalue class="fr-design-time-preserve" event="xforms-enabled xforms-value-changed" ref="instance(''readonly'')" value="exf:readonly($context)"/>
</xf:var>
<xf:var as="element()?" name="fr-resources">
<xxf:value xxbl:scope="outer" value="$fr-resources"/>
</xf:var>
<xf:var as="element(resource)" name="form-resources" value="instance(''fr-form-resources'')/(resource[@xml:lang = xxf:instance(''fr-language-instance'')], resource[1])[1]"/>
<xf:label xmlns:oxf="http://www.orbeon.com/oxf/processors" ref="$form-resources/section-1/label"/>
<fr:grid xmlns:oxf="http://www.orbeon.com/oxf/processors" bind="grid-1-bind" id="grid-1-grid">
<fr:c w="12" x="1" y="1">
<xf:input bind="name-bind" class="fr-summary fr-search" id="name-control">
<xf:label ref="$form-resources/name/label"/>
<xf:hint ref="$form-resources/name/hint"/>
<xf:alert ref="$fr-resources/detail/labels/alert"/>
</xf:input>
</fr:c>
<fr:c w="12" x="1" y="2">
<xf:input bind="surname-bind" class="fr-summary fr-search" id="surname-control">
<xf:label ref="$form-resources/surname/label"/>
<xf:hint ref="$form-resources/surname/hint"/>
<xf:alert ref="$fr-resources/detail/labels/alert"/>
</xf:input>
</fr:c>
</fr:grid>
</xf:group>
</xbl:template>
</xbl:binding>
</xbl:xbl>
</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 bind="section-2-bind" id="section-2-section">
<xf:label ref="$form-resources/section-2/label"/>
<component:section-1 xmlns:component="http://orbeon.org/oxf/xml/form-builder/component/gs/library" xmlns:fbf="java:org.orbeon.oxf.fb.FormBuilderXPathApi" xmlns:frf="java:org.orbeon.oxf.fr.FormRunner" xmlns:xxbl="http://orbeon.org/oxf/xml/xbl" xmlns="http://orbeon.org/oxf/xml/form-builder"/>
</fr:section>
</fr:body>
</fr:view>
</xh:body>
</xh:html>

El mié, 10 feb 2021 a las 17:44, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

It happens on Orbeon 2020.1.1 but only with my Persistence Layer. If i switch to MySQL it works fine.

I do not know why the <xbl:xbl>... node is being added on Publish action only (see previous post for the complete <xbl> node).
Also the XML is taken from http put request directly so at this point my PL is doing nothing only reading the XML from the request body (which already has the <xbl> node).

regards,
bruno


El vie, 5 feb 2021 a las 18:48, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

I have made a video with the problem:
1) It shows the library
2) Create a new form using a section of 1)
3) Publish it
4) With a breakpoint it show the extra XBL node that is inserted in the XML of the form (with Save this does not happend)
5) Try to edit 3) but nothing is displayed

Maybe the video gives you some clues of the cause:


El vie, 5 feb 2021 a las 16:44, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

Orbeon 2020.1.1 behave as expected.

My local installation is 2020.1, so i will upgrade and check if it is happening.

regards,
bruno

El jue, 28 ene 2021 a las 13:38, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Hi,

Let me know when you deploy Orbeon 2020.1 on https://www.orbeon.com/try

I will try it there ...

regards,
bruno

El mié, 27 ene 2021 a las 15:59, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,
1) Create the form
2) Add a section from the App library
3) Publish the form
4) Goto to summary
5) Edit the form
Orbeon 2020.1

At 3) Orbeon is sending the extra node in the XML string. Then in 5) the form is not displayed because of the extra node.

It does NOT happen with Save.

regards,
bruno

El lun, 25 ene 2021 a las 18:21, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Hi Alex,

Just to confirm that is Orbeon that adds the extra <xbl:xbl> node and only does this on Publishing.
Because my services receive the XML string with that node added.

The workaround is to Save the form once after the Publishing and this action removes the extra node and the form can be edited from the Summary without problems.

regards,
bruno


El lun, 25 ene 2021 a las 18:13, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

I found the culprit but not sure yet why this is happening...
After Publishing a form an extra XML is added after <xf:model> node. Also the problems are forms with references to library forms.
(This does not happen when the form definition is Saved only after Publishing).

The node is the following (not sure if it is a bug on my PL or is an Orbeon thing):
<xbl:xbl xmlns:xbl="http://www.w3.org/ns/xbl" xmlns:fbf="java:org.orbeon.oxf.fb.FormBuilderXPathApi" xmlns:xxbl="http://orbeon.org/oxf/xml/xbl" xmlns:frf="java:org.orbeon.oxf.fr.FormRunner" xmlns:component="http://orbeon.org/oxf/xml/form-builder/component/gs/library" xmlns:p="http://www.orbeon.com/oxf/pipeline"><xbl:binding id="gs-section-1-component" element="component|section-1" class="fr-section-component"><xbl:implementation><xf:model id="section-1-model"><xf:instance id="fr-form-instance" xxbl:mirror="true" xxf:index="id"><empty/></xf:instance><xf:instance id="fr-form-template"><section-1>
                        <grid-1>
                            <gs_name/>
                        </grid-1>
                    </section-1></xf:instance><xf:bind id="fr-form-binds" ref="instance(''fr-form-instance'')"><xf:bind id="grid-1-bind" ref="grid-1" name="grid-1">
                        <xf:bind id="gs_name-bind" name="gs_name" ref="gs_name" xxf:whitespace="trim"/>
                    </xf:bind></xf:bind><xf:instance id="fr-form-resources" xxf:readonly="true"><resources><resource xml:lang="en"><section-1>
                            <label>Untitled Section</label>
                        </section-1><gs_name>
                            <label>GS Name</label>
                            <hint/>
                        </gs_name></resource></resources></xf:instance><xf:instance id="readonly"><readonly/></xf:instance><xf:var name="fr-params" value="xxf:instance(''fr-parameters-instance'')"/><xf:var name="fr-mode" value="$fr-params/mode"/><xf:bind ref="instance(''fr-form-instance'')" readonly="                             fr:is-readonly-mode()         or                             instance(''readonly'') = ''true'' or                             fr:is-design-time()"/><xf:action event="xforms-model-construct-done" class="fr-design-time-preserve"><xf:var name="is-empty" value="empty(instance()/*)"/><xf:action if="$is-empty"><xf:insert context="instance()" origin="instance(''fr-form-template'')/*"/><xf:rebuild/><xf:recalculate xxf:defaults="true"/></xf:action><xf:action if="not($is-empty)"><xf:var xmlns:migration="java:org.orbeon.oxf.fr.SimpleDataMigration" name="simply-migrated" value="                                     migration:dataMaybeWithSimpleMigration(                                         event(''xxf:absolute-targetid''),                                         instance(''fr-form-template''),                                         instance()                                     )"/><xf:action if="exists($simply-migrated)"><xf:delete ref="instance()/*"/><xf:insert context="instance()" origin="$simply-migrated/*"/><xf:rebuild/><xf:recalculate xxf:defaults="true"/></xf:action></xf:action></xf:action><xf:action event="xforms-model-construct-done"><xf:insert xmlns:migration="java:org.orbeon.oxf.fr.SimpleDataMigration" iterate="migration:iterateBinds(event(''xxf:absolute-targetid''), instance())" context="." origin="xf:attribute(''fr:relevant'', ''false'')"/></xf:action><xf:insert observer="fr-section-template-view" event="xforms-disabled" xxf:phantom="true" if="event(''xxf:binding'')/root()/* is instance(''fr-form-instance'')" context="event(''xxf:binding'')" origin="xf:attribute(''fr:relevant'', ''false'')"/><xf:delete observer="fr-section-template-view" event="xforms-enabled" xxf:phantom="true" if="event(''xxf:binding'')/root() is instance(''fr-form-instance'')/root()" ref="event(''xxf:binding'')/@fr:relevant"/></xf:model></xbl:implementation><xbl:template><xf:group appearance="xxf:internal" model="section-1-model" id="fr-section-template-view"><xf:var name="context" id="context" value="xxf:binding-context(''gs-section-1-component'')"/><xf:var name="readonly" as="xs:boolean" value="exf:readonly($context)"><xf:setvalue event="xforms-enabled xforms-value-changed" ref="instance(''readonly'')" value="exf:readonly($context)" class="fr-design-time-preserve"/></xf:var><xf:var name="fr-resources" as="element()?"><xxf:value value="$fr-resources" xxbl:scope="outer"/></xf:var><xf:var name="form-resources" value="instance(''fr-form-resources'')/(resource[@xml:lang = xxf:instance(''fr-language-instance'')], resource[1])[1]" as="element(resource)"/><xf:label xmlns:oxf="http://www.orbeon.com/oxf/processors" ref="$form-resources/section-1/label"/><fr:grid xmlns:oxf="http://www.orbeon.com/oxf/processors" id="grid-1-grid" bind="grid-1-bind">
                        <fr:c y="1" x="1" w="12">
                            <xf:input id="gs_name-control" bind="gs_name-bind" class="fr-summary fr-search">
                                <xf:label ref="$form-resources/gs_name/label"/>
                                <xf:hint ref="$form-resources/gs_name/hint"/>
                                <xf:alert ref="$fr-resources/detail/labels/alert"/>
                            </xf:input>
                        </fr:c>
                    </fr:grid></xf:group></xbl:template></xbl:binding></xbl:xbl>


El lun, 25 ene 2021 a las 17:15, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

Still checking this error but the problem is only on Form Builder.

The form runner correctly renders the form in the NEW url. Also the EDIT page the form is correctly rendered.
Only the Form Builder does not display the form definition.

The root of the problem is unknown yet but if I found something I would let you know.

regards,
bruno



El vie, 22 ene 2021 a las 17:40, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Hi,

I think it is a problem of Form formats.

Because I executed some old TestCases that for sure had an old format (4.0, 4.8 i think) and also created some forms online so they were stored with 2019.1.0 format.

And is not supported to have different formats in the same PL.

I think this is because if I delete the old forms and only use the one created online then all forms are displayed correctly.

When different formats are mixed then the problems start.

Is there any way to transform old formats to new one with a script ?}

regards,
bruno






El jue, 21 ene 2021 a las 16:31, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Hi,

In which situation the Form Builder will set the form source to:
<dummy xmlns:xbl="http://www.w3.org/ns/xbl" xmlns:xxf="http://orbeon.org/oxf/xml/xforms"
       xmlns:xxi="http://orbeon.org/oxf/xml/xinclude"
       xmlns:saxon="http://saxon.sf.net/"
       xmlns:fbf="java:org.orbeon.oxf.fb.FormBuilderXPathApi"
       xmlns:fr="http://orbeon.org/oxf/xml/form-runner"
       xmlns:secure="java:org.orbeon.oxf.util.SecureUtils"
       xmlns:xf="http://www.w3.org/2002/xforms"
       xmlns:xh="http://www.w3.org/1999/xhtml"
       xmlns:p="http://www.orbeon.com/oxf/pipeline"
       xmlns:ev="http://www.w3.org/2001/xml-events"
       xmlns:xi="http://www.w3.org/2001/XInclude"
       xmlns:toolboxOps="java:org.orbeon.oxf.fb.ToolboxOps"
       xmlns:xs="http://www.w3.org/2001/XMLSchema"
       xmlns:frf="java:org.orbeon.oxf.fr.FormRunner"
       xmlns:fb="http://orbeon.org/oxf/xml/form-builder"/>

There is a bug in my Persistence Layer for any form that use a section library:
1) Create the form
2) Add a section from any library
3) Publish the form
4) Goto to summary
5) Edit the form
And now the form is not displayed and if I "Edit Source" in the Form Builder it display the HTML code above (with the dummy mode).

It is also strange that only happen with Publish because if it is only Save it can be edit normaly.

regards,
bruno

--
You received this message because you are subscribed to the Google Groups "Orbeon Forms" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/orbeon/CALjxVcR6uu_Hs3gj1aMn%3DdjAxhKR8MQP8KRaUynnuhgOUfydfQ%40mail.gmail.com.
Reply | Threaded
Open this post in threaded view
|

Re: PL: Dummy in Form Builder

Bruno
Alex,

I found 2 exceptions in the log.
First Exception
+----------------------------------------------------------------------------------------------------------------------+
|An Error has Occurred                                                                                                 |
|----------------------------------------------------------------------------------------------------------------------|
|assertion failed: expect no more than one `<xbl:xbl>` container for the namespace `<a href="http://orbeon.org/oxf/xml/form-buil|">http://orbeon.org/oxf/xml/form-buil|
|der/component/gs/library`                                                                                             |
|----------------------------------------------------------------------------------------------------------------------|
|Application Call Stack                                                                                                |
|----------------------------------------------------------------------------------------------------------------------|
|----------------------------------------------------------------------------------------------------------------------|
|Exception: java.lang.AssertionError                                                                                   |
|----------------------------------------------------------------------------------------------------------------------|
|scala.Predef$                                      |assert                        |Predef.scala                  | 223|
|org.orbeon.oxf.fr.FormRunnerSectionTemplateOps     |findXblXblForSectionTemplateNa|FormRunnerSectionTemplateOps.s|  76|
|org.orbeon.oxf.fr.FormRunnerSectionTemplateOps     |findXblXblForSectionTemplateNa|FormRunnerSectionTemplateOps.s|  66|
|org.orbeon.oxf.fr.FormRunner$                      |findXblXblForSectionTemplateNa|FormRunner.scala              |  16|
|org.orbeon.oxf.fb.FormBuilderXPathApi$             |$anonfun$updateSectionTemplate|FormBuilderXPathApi.scala     | 282|
|scala.Option                                       |flatMap                       |Option.scala                  | 271|
|org.orbeon.oxf.fb.FormBuilderXPathApi$             |$anonfun$updateSectionTemplate|FormBuilderXPathApi.scala     | 281|
|scala.collection.immutable.List                    |flatMap                       |List.scala                    | 338|
|org.orbeon.oxf.fb.FormBuilderXPathApi$             |$anonfun$updateSectionTemplate|FormBuilderXPathApi.scala     | 280|
|scala.collection.immutable.List                    |flatMap                       |List.scala                    | 338|
|org.orbeon.oxf.fb.FormBuilderXPathApi$             |$anonfun$updateSectionTemplate|FormBuilderXPathApi.scala     | 279|
|scala.collection.immutable.Stream                  |flatMap                       |Stream.scala                  | 489|
|org.orbeon.oxf.fb.FormBuilderXPathApi$             |updateSectionTemplateContentHo|FormBuilderXPathApi.scala     | 278|
|org.orbeon.oxf.fb.FormBuilderXPathApi              |updateSectionTemplateContentHo|FormBuilderXPathApi.scala     |    |
|sun.reflect.NativeMethodAccessorImpl               |invoke0                       |NativeMethodAccessorImpl.java |    |
|sun.reflect.NativeMethodAccessorImpl               |invoke                        |NativeMethodAccessorImpl.java |  62|
|sun.reflect.DelegatingMethodAccessorImpl           |invoke                        |DelegatingMethodAccessorImpl.j|  43|
|java.lang.reflect.Method                           |invoke                        |Method.java                   | 498|
|org.orbeon.saxon.functions.ExtensionFunctionCall   |invokeMethod                  |ExtensionFunctionCall.java    | 690|
|org.orbeon.saxon.functions.ExtensionFunctionCall   |call                          |ExtensionFunctionCall.java    | 343|
|----------------------------------------------------------------------------------------------------------------------|
|Exception: org.orbeon.saxon.trans.XPathException                                                                      |
|----------------------------------------------------------------------------------------------------------------------|
|org.orbeon.saxon.functions.ExtensionFunctionCall   |call                          |ExtensionFunctionCall.java    | 369|
|org.orbeon.saxon.functions.ExtensionFunctionCall   |iterate                       |ExtensionFunctionCall.java    | 224|
|org.orbeon.saxon.instruct.BlockIterator            |next                          |BlockIterator.java            |  42|
|org.orbeon.scaxon.Implicits$$anon$2                |<init>                        |Implicits.scala               |  75|
|org.orbeon.scaxon.Implicits$                       |asScalaIterator               |Implicits.scala               |  73|
|org.orbeon.oxf.util.PooledXPathExpression          |$anonfun$evaluateKeepItems$1  |PooledXPathExpression.scala   |  96|
|org.orbeon.oxf.util.DynamicVariable                |withValue                     |DynamicVariable.scala         |  42|
|org.orbeon.oxf.util.XPath$                         |withFunctionContext           |XPath.scala                   |  62|
|org.orbeon.oxf.util.PooledXPathExpression          |evaluateKeepItems             |PooledXPathExpression.scala   |  96|
|org.orbeon.oxf.util.XPathCache$                    |$anonfun$evaluateKeepItems$1  |XPathCache.scala              | 227|
|org.orbeon.oxf.util.XPathCache$                    |withEvaluation                |XPathCache.scala              | 734|
|----------------------------------------------------------------------------------------------------------------------|
|Exception: org.orbeon.oxf.common.ValidationException                                                                  |
|----------------------------------------------------------------------------------------------------------------------|
|org.orbeon.oxf.common.OrbeonLocationException$     |wrapException                 |OrbeonLocationException.scala |  60|
|org.orbeon.oxf.util.XPath$                         |handleXPathException          |XPath.scala                   | 377|
|org.orbeon.oxf.util.XPathCache$                    |withEvaluation                |XPathCache.scala              | 744|
|org.orbeon.oxf.util.XPathCache$                    |evaluateKeepItems             |XPathCache.scala              | 227|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|evaluateKeepItems             |XFormsActionInterpreter.scala | 291|
|orbeon.oxf.xforms.action.actions.XFormsActionAction|execute                       |XFormsActionAction.scala      |  75|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|$anonfun$runSingleIteration$7 |XFormsActionInterpreter.scala | 189|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.xforms.XFormsContextStackSupport$   |withBinding                   |XFormsContextStackSupport.scal|  47|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|$anonfun$runSingleIteration$6 |XFormsActionInterpreter.scala | 187|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.util.Logging                        |withDebug                     |Logging.scala                 |  50|
|org.orbeon.oxf.util.Logging                        |withDebug$                    |Logging.scala                 |  45|
|org.orbeon.oxf.util.Logging$                       |withDebug                     |Logging.scala                 |  73|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|$anonfun$runSingleIteration$1 |XFormsActionInterpreter.scala | 169|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|scala.util.control.Breaks$$anon$1                  |catchBreak                    |Breaks.scala                  |  67|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|runSingleIteration            |XFormsActionInterpreter.scala | 199|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|runSingle$1                   |XFormsActionInterpreter.scala |  99|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|$anonfun$runAction$2          |XFormsActionInterpreter.scala | 119|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.xforms.XFormsContextStackSupport$   |withBinding                   |XFormsContextStackSupport.scal|  47|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|runAction                     |XFormsActionInterpreter.scala |  90|
|orbeon.oxf.xforms.action.actions.XFormsActionAction|$anonfun$execute$7            |XFormsActionAction.scala      |  97|
|orbeon.oxf.xforms.action.actions.XFormsActionAction|$anonfun$execute$7$adapted    |XFormsActionAction.scala      |  85|
|scala.collection.Iterator                          |foreach                       |Iterator.scala                | 941|
|scala.collection.Iterator                          |foreach$                      |Iterator.scala                | 941|
|scala.collection.AbstractIterator                  |foreach                       |Iterator.scala                |1429|
|scala.collection.IterableLike                      |foreach                       |IterableLike.scala            |  74|
|scala.collection.IterableLike                      |foreach$                      |IterableLike.scala            |  73|
|scala.collection.AbstractIterable                  |foreach                       |Iterable.scala                |  56|
|orbeon.oxf.xforms.action.actions.XFormsActionAction|execute                       |XFormsActionAction.scala      |  85|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|$anonfun$runSingleIteration$7 |XFormsActionInterpreter.scala | 189|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.xforms.XFormsContextStackSupport$   |withBinding                   |XFormsContextStackSupport.scal|  47|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|$anonfun$runSingleIteration$6 |XFormsActionInterpreter.scala | 187|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.util.Logging                        |withDebug                     |Logging.scala                 |  50|
|org.orbeon.oxf.util.Logging                        |withDebug$                    |Logging.scala                 |  45|
|org.orbeon.oxf.util.Logging$                       |withDebug                     |Logging.scala                 |  73|
|---8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<---|
|org.orbeon.oxf.webapp.ProcessorService$            |withProcessorService          |ProcessorService.scala        | 146|
|org.orbeon.oxf.servlet.OrbeonServlet               |service                       |OrbeonServlet.scala           |  76|
|javax.servlet.http.HttpServlet                     |service                       |HttpServlet.java              | 741|
|org.apache.catalina.core.ApplicationFilterChain    |internalDoFilter              |ApplicationFilterChain.java   | 231|
|org.apache.catalina.core.ApplicationFilterChain    |doFilter                      |ApplicationFilterChain.java   | 166|
|org.apache.tomcat.websocket.server.WsFilter        |doFilter                      |WsFilter.java                 |  53|
|org.apache.catalina.core.ApplicationFilterChain    |internalDoFilter              |ApplicationFilterChain.java   | 193|
|org.apache.catalina.core.ApplicationFilterChain    |doFilter                      |ApplicationFilterChain.java   | 166|
|org.orbeon.oxf.servlet.FormRunnerAuthFilter        |doFilter                      |FormRunnerAuthFilter.scala    |  51|
|org.apache.catalina.core.ApplicationFilterChain    |internalDoFilter              |ApplicationFilterChain.java   | 193|
|org.apache.catalina.core.ApplicationFilterChain    |doFilter                      |ApplicationFilterChain.java   | 166|
|org.orbeon.oxf.servlet.LimiterFilter               |$anonfun$doFilter$3           |LimiterFilter.scala           |  85|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.logging.LifecycleLogger$            |withEvent                     |LifecycleLogger.scala         | 126|
|org.orbeon.oxf.servlet.LimiterFilter               |$anonfun$doFilter$2           |LimiterFilter.scala           |  85|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.logging.LifecycleLogger$            |withEvent                     |LifecycleLogger.scala         | 126|
|org.orbeon.oxf.servlet.LimiterFilter               |$anonfun$doFilter$1           |LimiterFilter.scala           |  78|
|org.orbeon.oxf.servlet.LimiterFilter               |$anonfun$doFilter$1$adapted   |LimiterFilter.scala           |  72|
|scala.Option                                       |foreach                       |Option.scala                  | 407|
|org.orbeon.oxf.servlet.LimiterFilter               |doFilter                      |LimiterFilter.scala           |  72|
|org.apache.catalina.core.ApplicationFilterChain    |internalDoFilter              |ApplicationFilterChain.java   | 193|
|org.apache.catalina.core.ApplicationFilterChain    |doFilter                      |ApplicationFilterChain.java   | 166|
|org.apache.catalina.core.StandardWrapperValve      |invoke                        |StandardWrapperValve.java     | 202|
|org.apache.catalina.core.StandardContextValve      |invoke                        |StandardContextValve.java     |  96|
|org.apache.catalina.authenticator.AuthenticatorBase|invoke                        |AuthenticatorBase.java        | 541|
|org.apache.catalina.core.StandardHostValve         |invoke                        |StandardHostValve.java        | 139|
|org.apache.catalina.valves.ErrorReportValve        |invoke                        |ErrorReportValve.java         |  92|
|org.apache.catalina.valves.AbstractAccessLogValve  |invoke                        |AbstractAccessLogValve.java   | 688|
|org.apache.catalina.core.StandardEngineValve       |invoke                        |StandardEngineValve.java      |  74|
|org.apache.catalina.connector.CoyoteAdapter        |service                       |CoyoteAdapter.java            | 343|
|org.apache.coyote.http11.Http11Processor           |service                       |Http11Processor.java          | 367|
|org.apache.coyote.AbstractProcessorLight           |process                       |AbstractProcessorLight.java   |  65|
|rg.apache.coyote.AbstractProtocol$ConnectionHandler|process                       |AbstractProtocol.java         | 868|
|.apache.tomcat.util.net.NioEndpoint$SocketProcessor|doRun                         |NioEndpoint.java              |1639|
|org.apache.tomcat.util.net.SocketProcessorBase     |run                           |SocketProcessorBase.java      |  49|
|java.util.concurrent.ThreadPoolExecutor            |runWorker                     |ThreadPoolExecutor.java       |1149|
|java.util.concurrent.ThreadPoolExecutor$Worker     |run                           |ThreadPoolExecutor.java       | 624|
|che.tomcat.util.threads.TaskThread$WrappingRunnable|run                           |TaskThread.java               |  61|
|java.lang.Thread                                   |run                           |Thread.java                   | 748|
+----------------------------------------------------------------------------------------------------------------------+"}




Second Exception

+----------------------------------------------------------------------------------------------------------------------+
|An Error has Occurred                                                                                                 |
|----------------------------------------------------------------------------------------------------------------------|
|Exception in extension function java.lang.NullPointerException                                                        |
|----------------------------------------------------------------------------------------------------------------------|
|Application Call Stack                                                                                                |
|----------------------------------------------------------------------------------------------------------------------|
|----------------------------------------------------------------------------------------------------------------------|
|Exception: java.lang.NullPointerException                                                                             |
|----------------------------------------------------------------------------------------------------------------------|
|org.orbeon.scaxon.SimplePath$NodeLocalNameTest     |test                          |SimplePath.scala              |  67|
|org.orbeon.scaxon.SimplePath$NodeInfoOps$          |find$extension                |SimplePath.scala              | 308|
|org.orbeon.scaxon.SimplePath$NodeInfoOps$          |$div$extension                |SimplePath.scala              | 123|
|org.orbeon.scaxon.SimplePath$NodeInfoOps$          |elemValueOpt$extension0       |SimplePath.scala              | 190|
|org.orbeon.oxf.fr.FormRunnerBaseOps                |optionFromMetadataOrProperties|FormRunnerBaseOps.scala       | 277|
|org.orbeon.oxf.fr.FormRunnerBaseOps                |optionFromMetadataOrProperties|FormRunnerBaseOps.scala       | 272|
|org.orbeon.oxf.fr.FormRunner$                      |optionFromMetadataOrProperties|FormRunner.scala              |  16|
|org.orbeon.oxf.fr.FormRunnerPDF                    |optionFromMetadataOrProperties|FormRunnerPDF.scala           | 107|
|org.orbeon.oxf.fr.FormRunnerPDF                    |optionFromMetadataOrProperties|FormRunnerPDF.scala           |  97|
|org.orbeon.oxf.fr.FormRunner$                      |optionFromMetadataOrProperties|FormRunner.scala              |  16|
|org.orbeon.oxf.fr.FormRunner                       |optionFromMetadataOrProperties|FormRunner.scala              |    |
|sun.reflect.NativeMethodAccessorImpl               |invoke0                       |NativeMethodAccessorImpl.java |    |
|sun.reflect.NativeMethodAccessorImpl               |invoke                        |NativeMethodAccessorImpl.java |  62|
|sun.reflect.DelegatingMethodAccessorImpl           |invoke                        |DelegatingMethodAccessorImpl.j|  43|
|java.lang.reflect.Method                           |invoke                        |Method.java                   | 498|
|org.orbeon.saxon.functions.ExtensionFunctionCall   |invokeMethod                  |ExtensionFunctionCall.java    | 690|
|org.orbeon.saxon.functions.ExtensionFunctionCall   |call                          |ExtensionFunctionCall.java    | 343|
|----------------------------------------------------------------------------------------------------------------------|
|Exception: org.orbeon.saxon.trans.XPathException                                                                      |
|----------------------------------------------------------------------------------------------------------------------|
|org.orbeon.saxon.functions.ExtensionFunctionCall   |call                          |ExtensionFunctionCall.java    | 369|
|org.orbeon.saxon.functions.ExtensionFunctionCall   |iterate                       |ExtensionFunctionCall.java    | 224|
|org.orbeon.saxon.expr.Atomizer                     |iterate                       |Atomizer.java                 | 163|
|org.orbeon.saxon.expr.QuantifiedExpression         |effectiveBooleanValue         |QuantifiedExpression.java     | 213|
|org.orbeon.saxon.expr.QuantifiedExpression         |evaluateItem                  |QuantifiedExpression.java     | 202|
|org.orbeon.saxon.expr.Expression                   |iterate                       |Expression.java               | 370|
|org.orbeon.saxon.sxpath.XPathExpression            |iterate                       |XPathExpression.java          | 141|
|org.orbeon.oxf.util.PooledXPathExpression          |evaluate                      |PooledXPathExpression.scala   | 180|
|org.orbeon.oxf.util.PooledXPathExpression          |$anonfun$evaluateAsExtent$1   |PooledXPathExpression.scala   | 116|
|org.orbeon.oxf.util.DynamicVariable                |withValue                     |DynamicVariable.scala         |  42|
|org.orbeon.oxf.util.XPath$                         |withFunctionContext           |XPath.scala                   |  62|
|org.orbeon.oxf.util.PooledXPathExpression          |evaluateAsExtent              |PooledXPathExpression.scala   | 116|
|org.orbeon.oxf.util.XPathCache$                    |$anonfun$evaluateAsExtent$1   |XPathCache.scala              | 295|
|org.orbeon.oxf.util.XPathCache$                    |withEvaluation                |XPathCache.scala              | 734|
|----------------------------------------------------------------------------------------------------------------------|
|Exception: org.orbeon.oxf.common.ValidationException                                                                  |
|----------------------------------------------------------------------------------------------------------------------|
|org.orbeon.oxf.common.OrbeonLocationException$     |wrapException                 |OrbeonLocationException.scala |  60|
|org.orbeon.oxf.util.XPath$                         |handleXPathException          |XPath.scala                   | 377|
|org.orbeon.oxf.util.XPathCache$                    |withEvaluation                |XPathCache.scala              | 744|
|org.orbeon.oxf.util.XPathCache$                    |evaluateAsExtent              |XPathCache.scala              | 295|
|org.orbeon.oxf.xforms.Variable                     |evaluate                      |Variable.scala                |  87|
|org.orbeon.oxf.xforms.Variable                     |$anonfun$valueEvaluateIfNeeded|Variable.scala                |  43|
|scala.Option                                       |getOrElse                     |Option.scala                  | 189|
|org.orbeon.oxf.xforms.Variable                     |valueEvaluateIfNeeded         |Variable.scala                |  37|
|n.oxf.xforms.control.controls.XFormsVariableControl|$anonfun$preEvaluateImpl$2    |XFormsVariableControl.scala   |  81|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.xforms.analytics.NOPRequestStats$   |withXPath                     |RequestStats.scala            |  92|
|n.oxf.xforms.control.controls.XFormsVariableControl|preEvaluateImpl               |XFormsVariableControl.scala   |  81|
|org.orbeon.oxf.xforms.control.XFormsControl        |evaluate                      |XFormsControl.scala           | 206|
|org.orbeon.oxf.xforms.control.ControlBindingSupport|setBindingContext             |ControlBindingSupport.scala   | 138|
|org.orbeon.oxf.xforms.control.ControlBindingSupport|setBindingContext$            |ControlBindingSupport.scala   | 118|
|org.orbeon.oxf.xforms.control.XFormsControl        |setBindingContext             |XFormsControl.scala           |  42|
|org.orbeon.oxf.xforms.control.ControlBindingSupport|evaluateBindingAndValues      |ControlBindingSupport.scala   |  79|
|org.orbeon.oxf.xforms.control.ControlBindingSupport|evaluateBindingAndValues$     |ControlBindingSupport.scala   |  63|
|org.orbeon.oxf.xforms.control.XFormsControl        |evaluateBindingAndValues      |XFormsControl.scala           |  42|
|org.orbeon.oxf.xforms.control.Controls$            |$anonfun$buildTree$1          |Controls.scala                | 147|
|scala.Option                                       |map                           |Option.scala                  | 230|
|org.orbeon.oxf.xforms.control.Controls$            |buildTree                     |Controls.scala                | 135|
|org.orbeon.oxf.xforms.control.Controls$            |$anonfun$buildTree$3          |Controls.scala                | 151|
|org.orbeon.oxf.xforms.control.Controls$            |$anonfun$buildChildren$1      |Controls.scala                | 168|
|org.orbeon.oxf.xforms.control.Controls$            |$anonfun$buildChildren$1$adapt|Controls.scala                | 167|
|scala.collection.mutable.ResizableArray            |foreach                       |ResizableArray.scala          |  62|
|scala.collection.mutable.ResizableArray            |foreach$                      |ResizableArray.scala          |  55|
|scala.collection.mutable.ArrayBuffer               |foreach                       |ArrayBuffer.scala             |  49|
|org.orbeon.oxf.xforms.control.Controls$            |buildChildren                 |Controls.scala                | 167|
|org.orbeon.oxf.xforms.control.XFormsControl        |buildChildren                 |XFormsControl.scala           | 248|
|org.orbeon.oxf.xforms.control.Controls$            |$anonfun$buildTree$1          |Controls.scala                | 151|
|scala.Option                                       |map                           |Option.scala                  | 230|
|org.orbeon.oxf.xforms.control.Controls$            |buildTree                     |Controls.scala                | 135|
|org.orbeon.oxf.xforms.control.Controls$            |$anonfun$buildTree$3          |Controls.scala                | 151|
|org.orbeon.oxf.xforms.control.Controls$            |$anonfun$buildChildren$1      |Controls.scala                | 168|
|org.orbeon.oxf.xforms.control.Controls$            |$anonfun$buildChildren$1$adapt|Controls.scala                | 167|
|scala.collection.mutable.ResizableArray            |foreach                       |ResizableArray.scala          |  62|
|scala.collection.mutable.ResizableArray            |foreach$                      |ResizableArray.scala          |  55|
|scala.collection.mutable.ArrayBuffer               |foreach                       |ArrayBuffer.scala             |  49|
|org.orbeon.oxf.xforms.control.Controls$            |buildChildren                 |Controls.scala                | 167|
|---8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<---|
|org.orbeon.oxf.webapp.ProcessorService$            |withProcessorService          |ProcessorService.scala        | 146|
|org.orbeon.oxf.servlet.OrbeonServlet               |service                       |OrbeonServlet.scala           |  76|
|javax.servlet.http.HttpServlet                     |service                       |HttpServlet.java              | 741|
|org.apache.catalina.core.ApplicationFilterChain    |internalDoFilter              |ApplicationFilterChain.java   | 231|
|org.apache.catalina.core.ApplicationFilterChain    |doFilter                      |ApplicationFilterChain.java   | 166|
|org.apache.tomcat.websocket.server.WsFilter        |doFilter                      |WsFilter.java                 |  53|
|org.apache.catalina.core.ApplicationFilterChain    |internalDoFilter              |ApplicationFilterChain.java   | 193|
|org.apache.catalina.core.ApplicationFilterChain    |doFilter                      |ApplicationFilterChain.java   | 166|
|org.orbeon.oxf.servlet.FormRunnerAuthFilter        |doFilter                      |FormRunnerAuthFilter.scala    |  51|
|org.apache.catalina.core.ApplicationFilterChain    |internalDoFilter              |ApplicationFilterChain.java   | 193|
|org.apache.catalina.core.ApplicationFilterChain    |doFilter                      |ApplicationFilterChain.java   | 166|
|org.orbeon.oxf.servlet.LimiterFilter               |$anonfun$doFilter$3           |LimiterFilter.scala           |  85|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.logging.LifecycleLogger$            |withEvent                     |LifecycleLogger.scala         | 126|
|org.orbeon.oxf.servlet.LimiterFilter               |$anonfun$doFilter$2           |LimiterFilter.scala           |  85|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.logging.LifecycleLogger$            |withEvent                     |LifecycleLogger.scala         | 126|
|org.orbeon.oxf.servlet.LimiterFilter               |$anonfun$doFilter$1           |LimiterFilter.scala           |  78|
|org.orbeon.oxf.servlet.LimiterFilter               |$anonfun$doFilter$1$adapted   |LimiterFilter.scala           |  72|
|scala.Option                                       |foreach                       |Option.scala                  | 407|
|org.orbeon.oxf.servlet.LimiterFilter               |doFilter                      |LimiterFilter.scala           |  72|
|org.apache.catalina.core.ApplicationFilterChain    |internalDoFilter              |ApplicationFilterChain.java   | 193|
|org.apache.catalina.core.ApplicationFilterChain    |doFilter                      |ApplicationFilterChain.java   | 166|
|org.apache.catalina.core.StandardWrapperValve      |invoke                        |StandardWrapperValve.java     | 202|
|org.apache.catalina.core.StandardContextValve      |invoke                        |StandardContextValve.java     |  96|
|org.apache.catalina.authenticator.AuthenticatorBase|invoke                        |AuthenticatorBase.java        | 541|
|org.apache.catalina.core.StandardHostValve         |invoke                        |StandardHostValve.java        | 139|
|org.apache.catalina.valves.ErrorReportValve        |invoke                        |ErrorReportValve.java         |  92|
|org.apache.catalina.valves.AbstractAccessLogValve  |invoke                        |AbstractAccessLogValve.java   | 688|
|org.apache.catalina.core.StandardEngineValve       |invoke                        |StandardEngineValve.java      |  74|
|org.apache.catalina.connector.CoyoteAdapter        |service                       |CoyoteAdapter.java            | 343|
|org.apache.coyote.http11.Http11Processor           |service                       |Http11Processor.java          | 367|
|org.apache.coyote.AbstractProcessorLight           |process                       |AbstractProcessorLight.java   |  65|
|rg.apache.coyote.AbstractProtocol$ConnectionHandler|process                       |AbstractProtocol.java         | 868|
|.apache.tomcat.util.net.NioEndpoint$SocketProcessor|doRun                         |NioEndpoint.java              |1639|
|org.apache.tomcat.util.net.SocketProcessorBase     |run                           |SocketProcessorBase.java      |  49|
|java.util.concurrent.ThreadPoolExecutor            |runWorker                     |ThreadPoolExecutor.java       |1149|
|java.util.concurrent.ThreadPoolExecutor$Worker     |run                           |ThreadPoolExecutor.java       | 624|
|che.tomcat.util.threads.TaskThread$WrappingRunnable|run                           |TaskThread.java               |  61|
|java.lang.Thread                                   |run                           |Thread.java                   | 748|
+----------------------------------------------------------------------------------------------------------------------+"}


El jue, 11 feb 2021 a las 17:53, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

If i remove the <xbl> node manually then I can edit the form on the Form Builder.

If the <xbl> node is present then is render in the Form Builder like:

regards,
bruno

El jue, 11 feb 2021 a las 17:19, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

Actually my PL does not care about that <xbl> node.
But when a form is published (with library dependencies) then it can not be edited.
After searching a little the only difference I found was the <xbl> node.

If you are confirming that <xbl> is put there by Orbeon then the problem must be another.
Check:

This form has exactly the same problem as my local installation.

The only difference is that at Orbeon installation I can edit the Form code while in my local installation when editing I only see the <dummy> node.

Still hunting down this problem :)

regards,
bruno

El mié, 10 feb 2021 a las 18:42, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

This is a complete form with the XBL node added, search for "xbl:xbl".

<?xml version="1.0" encoding="UTF-8"?>
<xh:html xmlns:array="http://www.w3.org/2005/xpath-functions/array" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:exf="http://www.exforms.org/exf/1-0" xmlns:fb="http://orbeon.org/oxf/xml/form-builder" xmlns:fr="http://orbeon.org/oxf/xml/form-runner" xmlns:map="http://www.w3.org/2005/xpath-functions/map" xmlns:saxon="http://saxon.sf.net/" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sql="http://orbeon.org/oxf/xml/sql" xmlns:xf="http://www.w3.org/2002/xforms" xmlns:xh="http://www.w3.org/1999/xhtml" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xxf="http://orbeon.org/oxf/xml/xforms" xmlns:xxi="http://orbeon.org/oxf/xml/xinclude">
<xh:head>
<xh:title>11</xh:title>
<xf:model xxf:analysis.calculate="true" xxf:expose-xpath-types="true" id="fr-form-model">
<!-- Main instance -->
<xf:instance xxf:exclude-result-prefixes="#all" id="fr-form-instance" xxf:index="id">
<form>
<section-2>
<grid-1>
<name/>
<surname/>
</grid-1>
</section-2>
</form>
</xf:instance>
<!-- Bindings -->
<xf:bind id="fr-form-binds" ref="instance(''fr-form-instance'')">
<xf:bind id="section-2-bind" name="section-2" ref="section-2"/>
</xf:bind>
<!-- Metadata -->
<xf:instance xxf:exclude-result-prefixes="#all" id="fr-form-metadata" xxf:readonly="true">
<metadata>
<application-name>gs</application-name>
<form-name>test11</form-name>
<title xml:lang="en">11</title>
<description xml:lang="en"/>
<created-with-version>2020.1.1.202102012142 PE</created-with-version>
<library-versions>
<app>3</app>
</library-versions>
<updated-with-version>2020.1.1.202102012142 PE</updated-with-version>
<migration version="2019.1.0">{"migrations":[{"containerPath":[{"value":"section-2"}],"newGridElem":{"value":"grid-1"},"afterElem":null,"content":[{"value":"name"},{"value":"surname"}],"topLevel":false}]}</migration>
</metadata>
</xf:instance>
<!-- Attachments -->
<xf:instance xxf:exclude-result-prefixes="#all" id="fr-form-attachments">
<attachments/>
</xf:instance>
<!-- All form resources -->
<xf:instance xxf:exclude-result-prefixes="#all" id="fr-form-resources" xxf:readonly="true">
<resources>
<resource xml:lang="en">
<section-2>
<label/>
<help/>
</section-2>
</resource>
</resources>
</xf:instance>
</xf:model>
<xbl:xbl xmlns:component="http://orbeon.org/oxf/xml/form-builder/component/gs/library" xmlns:fbf="java:org.orbeon.oxf.fb.FormBuilderXPathApi" xmlns:frf="java:org.orbeon.oxf.fr.FormRunner" xmlns:p="http://www.orbeon.com/oxf/pipeline" xmlns:xbl="http://www.w3.org/ns/xbl" xmlns:xxbl="http://orbeon.org/oxf/xml/xbl">
<xbl:binding class="fr-section-component" element="component|section-1" id="gs-section-1-component">
<xbl:implementation>
<xf:model id="section-1-model">
<xf:instance id="fr-form-instance" xxf:index="id" xxbl:mirror="true">
<empty/>
</xf:instance>
<xf:instance id="fr-form-template">
<section-1>
<grid-1>
<name/>
<surname/>
</grid-1>
</section-1>
</xf:instance>
<xf:bind id="fr-form-binds" ref="instance(''fr-form-instance'')">
<xf:bind id="grid-1-bind" name="grid-1" ref="grid-1">
<xf:bind id="name-bind" name="name" ref="name" xxf:whitespace="trim"/>
<xf:bind id="surname-bind" name="surname" ref="surname" xxf:whitespace="trim"/>
</xf:bind>
</xf:bind>
<xf:instance id="fr-form-resources" xxf:readonly="true">
<resources>
<resource xml:lang="en">
<section-1>
<label>Name</label>
</section-1>
<name>
<label>Name</label>
<hint/>
</name>
<surname>
<label>Surname</label>
<hint/>
</surname>
</resource>
</resources>
</xf:instance>
<xf:instance id="readonly">
<readonly/>
</xf:instance>
<xf:var name="fr-params" value="xxf:instance(''fr-parameters-instance'')"/>
<xf:var name="fr-mode" value="$fr-params/mode"/>
<xf:bind readonly="                             fr:is-readonly-mode()         or                             instance(''readonly'') = ''true'' or                             fr:is-design-time()" ref="instance(''fr-form-instance'')"/>
<xf:action class="fr-design-time-preserve" event="xforms-model-construct-done">
<xf:var name="is-empty" value="empty(instance()/*)"/>
<xf:action if="$is-empty">
<xf:insert context="instance()" origin="instance(''fr-form-template'')/*"/>
<xf:rebuild/>
<xf:recalculate xxf:defaults="true"/>
</xf:action>
<xf:action if="not($is-empty)">
<xf:var xmlns:migration="java:org.orbeon.oxf.fr.SimpleDataMigration" name="simply-migrated" value="                                     migration:dataMaybeWithSimpleMigration(                                         event(''xxf:absolute-targetid''),                                         instance(''fr-form-template''),                                         instance()                                     )"/>
<xf:action if="exists($simply-migrated)">
<xf:delete ref="instance()/*"/>
<xf:insert context="instance()" origin="$simply-migrated/*"/>
<xf:rebuild/>
<xf:recalculate xxf:defaults="true"/>
</xf:action>
</xf:action>
</xf:action>
<xf:action event="xforms-model-construct-done">
<xf:insert xmlns:migration="java:org.orbeon.oxf.fr.SimpleDataMigration" context="." iterate="migration:iterateBinds(event(''xxf:absolute-targetid''), instance())" origin="xf:attribute(''fr:relevant'', ''false'')"/>
</xf:action>
<xf:insert context="event(''xxf:binding'')" event="xforms-disabled" if="event(''xxf:binding'')/root()/* is instance(''fr-form-instance'')" observer="fr-section-template-view" origin="xf:attribute(''fr:relevant'', ''false'')" xxf:phantom="true"/>
<xf:delete event="xforms-enabled" if="event(''xxf:binding'')/root() is instance(''fr-form-instance'')/root()" observer="fr-section-template-view" ref="event(''xxf:binding'')/@fr:relevant" xxf:phantom="true"/>
</xf:model>
</xbl:implementation>
<xbl:template>
<xf:group appearance="xxf:internal" id="fr-section-template-view" model="section-1-model">
<xf:var id="context" name="context" value="xxf:binding-context(''gs-section-1-component'')"/>
<xf:var as="xs:boolean" name="readonly" value="exf:readonly($context)">
<xf:setvalue class="fr-design-time-preserve" event="xforms-enabled xforms-value-changed" ref="instance(''readonly'')" value="exf:readonly($context)"/>
</xf:var>
<xf:var as="element()?" name="fr-resources">
<xxf:value xxbl:scope="outer" value="$fr-resources"/>
</xf:var>
<xf:var as="element(resource)" name="form-resources" value="instance(''fr-form-resources'')/(resource[@xml:lang = xxf:instance(''fr-language-instance'')], resource[1])[1]"/>
<xf:label xmlns:oxf="http://www.orbeon.com/oxf/processors" ref="$form-resources/section-1/label"/>
<fr:grid xmlns:oxf="http://www.orbeon.com/oxf/processors" bind="grid-1-bind" id="grid-1-grid">
<fr:c w="12" x="1" y="1">
<xf:input bind="name-bind" class="fr-summary fr-search" id="name-control">
<xf:label ref="$form-resources/name/label"/>
<xf:hint ref="$form-resources/name/hint"/>
<xf:alert ref="$fr-resources/detail/labels/alert"/>
</xf:input>
</fr:c>
<fr:c w="12" x="1" y="2">
<xf:input bind="surname-bind" class="fr-summary fr-search" id="surname-control">
<xf:label ref="$form-resources/surname/label"/>
<xf:hint ref="$form-resources/surname/hint"/>
<xf:alert ref="$fr-resources/detail/labels/alert"/>
</xf:input>
</fr:c>
</fr:grid>
</xf:group>
</xbl:template>
</xbl:binding>
</xbl:xbl>
</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 bind="section-2-bind" id="section-2-section">
<xf:label ref="$form-resources/section-2/label"/>
<component:section-1 xmlns:component="http://orbeon.org/oxf/xml/form-builder/component/gs/library" xmlns:fbf="java:org.orbeon.oxf.fb.FormBuilderXPathApi" xmlns:frf="java:org.orbeon.oxf.fr.FormRunner" xmlns:xxbl="http://orbeon.org/oxf/xml/xbl" xmlns="http://orbeon.org/oxf/xml/form-builder"/>
</fr:section>
</fr:body>
</fr:view>
</xh:body>
</xh:html>

El mié, 10 feb 2021 a las 17:44, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

It happens on Orbeon 2020.1.1 but only with my Persistence Layer. If i switch to MySQL it works fine.

I do not know why the <xbl:xbl>... node is being added on Publish action only (see previous post for the complete <xbl> node).
Also the XML is taken from http put request directly so at this point my PL is doing nothing only reading the XML from the request body (which already has the <xbl> node).

regards,
bruno


El vie, 5 feb 2021 a las 18:48, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

I have made a video with the problem:
1) It shows the library
2) Create a new form using a section of 1)
3) Publish it
4) With a breakpoint it show the extra XBL node that is inserted in the XML of the form (with Save this does not happend)
5) Try to edit 3) but nothing is displayed

Maybe the video gives you some clues of the cause:


El vie, 5 feb 2021 a las 16:44, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

Orbeon 2020.1.1 behave as expected.

My local installation is 2020.1, so i will upgrade and check if it is happening.

regards,
bruno

El jue, 28 ene 2021 a las 13:38, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Hi,

Let me know when you deploy Orbeon 2020.1 on https://www.orbeon.com/try

I will try it there ...

regards,
bruno

El mié, 27 ene 2021 a las 15:59, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,
1) Create the form
2) Add a section from the App library
3) Publish the form
4) Goto to summary
5) Edit the form
Orbeon 2020.1

At 3) Orbeon is sending the extra node in the XML string. Then in 5) the form is not displayed because of the extra node.

It does NOT happen with Save.

regards,
bruno

El lun, 25 ene 2021 a las 18:21, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Hi Alex,

Just to confirm that is Orbeon that adds the extra <xbl:xbl> node and only does this on Publishing.
Because my services receive the XML string with that node added.

The workaround is to Save the form once after the Publishing and this action removes the extra node and the form can be edited from the Summary without problems.

regards,
bruno


El lun, 25 ene 2021 a las 18:13, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

I found the culprit but not sure yet why this is happening...
After Publishing a form an extra XML is added after <xf:model> node. Also the problems are forms with references to library forms.
(This does not happen when the form definition is Saved only after Publishing).

The node is the following (not sure if it is a bug on my PL or is an Orbeon thing):
<xbl:xbl xmlns:xbl="http://www.w3.org/ns/xbl" xmlns:fbf="java:org.orbeon.oxf.fb.FormBuilderXPathApi" xmlns:xxbl="http://orbeon.org/oxf/xml/xbl" xmlns:frf="java:org.orbeon.oxf.fr.FormRunner" xmlns:component="http://orbeon.org/oxf/xml/form-builder/component/gs/library" xmlns:p="http://www.orbeon.com/oxf/pipeline"><xbl:binding id="gs-section-1-component" element="component|section-1" class="fr-section-component"><xbl:implementation><xf:model id="section-1-model"><xf:instance id="fr-form-instance" xxbl:mirror="true" xxf:index="id"><empty/></xf:instance><xf:instance id="fr-form-template"><section-1>
                        <grid-1>
                            <gs_name/>
                        </grid-1>
                    </section-1></xf:instance><xf:bind id="fr-form-binds" ref="instance(''fr-form-instance'')"><xf:bind id="grid-1-bind" ref="grid-1" name="grid-1">
                        <xf:bind id="gs_name-bind" name="gs_name" ref="gs_name" xxf:whitespace="trim"/>
                    </xf:bind></xf:bind><xf:instance id="fr-form-resources" xxf:readonly="true"><resources><resource xml:lang="en"><section-1>
                            <label>Untitled Section</label>
                        </section-1><gs_name>
                            <label>GS Name</label>
                            <hint/>
                        </gs_name></resource></resources></xf:instance><xf:instance id="readonly"><readonly/></xf:instance><xf:var name="fr-params" value="xxf:instance(''fr-parameters-instance'')"/><xf:var name="fr-mode" value="$fr-params/mode"/><xf:bind ref="instance(''fr-form-instance'')" readonly="                             fr:is-readonly-mode()         or                             instance(''readonly'') = ''true'' or                             fr:is-design-time()"/><xf:action event="xforms-model-construct-done" class="fr-design-time-preserve"><xf:var name="is-empty" value="empty(instance()/*)"/><xf:action if="$is-empty"><xf:insert context="instance()" origin="instance(''fr-form-template'')/*"/><xf:rebuild/><xf:recalculate xxf:defaults="true"/></xf:action><xf:action if="not($is-empty)"><xf:var xmlns:migration="java:org.orbeon.oxf.fr.SimpleDataMigration" name="simply-migrated" value="                                     migration:dataMaybeWithSimpleMigration(                                         event(''xxf:absolute-targetid''),                                         instance(''fr-form-template''),                                         instance()                                     )"/><xf:action if="exists($simply-migrated)"><xf:delete ref="instance()/*"/><xf:insert context="instance()" origin="$simply-migrated/*"/><xf:rebuild/><xf:recalculate xxf:defaults="true"/></xf:action></xf:action></xf:action><xf:action event="xforms-model-construct-done"><xf:insert xmlns:migration="java:org.orbeon.oxf.fr.SimpleDataMigration" iterate="migration:iterateBinds(event(''xxf:absolute-targetid''), instance())" context="." origin="xf:attribute(''fr:relevant'', ''false'')"/></xf:action><xf:insert observer="fr-section-template-view" event="xforms-disabled" xxf:phantom="true" if="event(''xxf:binding'')/root()/* is instance(''fr-form-instance'')" context="event(''xxf:binding'')" origin="xf:attribute(''fr:relevant'', ''false'')"/><xf:delete observer="fr-section-template-view" event="xforms-enabled" xxf:phantom="true" if="event(''xxf:binding'')/root() is instance(''fr-form-instance'')/root()" ref="event(''xxf:binding'')/@fr:relevant"/></xf:model></xbl:implementation><xbl:template><xf:group appearance="xxf:internal" model="section-1-model" id="fr-section-template-view"><xf:var name="context" id="context" value="xxf:binding-context(''gs-section-1-component'')"/><xf:var name="readonly" as="xs:boolean" value="exf:readonly($context)"><xf:setvalue event="xforms-enabled xforms-value-changed" ref="instance(''readonly'')" value="exf:readonly($context)" class="fr-design-time-preserve"/></xf:var><xf:var name="fr-resources" as="element()?"><xxf:value value="$fr-resources" xxbl:scope="outer"/></xf:var><xf:var name="form-resources" value="instance(''fr-form-resources'')/(resource[@xml:lang = xxf:instance(''fr-language-instance'')], resource[1])[1]" as="element(resource)"/><xf:label xmlns:oxf="http://www.orbeon.com/oxf/processors" ref="$form-resources/section-1/label"/><fr:grid xmlns:oxf="http://www.orbeon.com/oxf/processors" id="grid-1-grid" bind="grid-1-bind">
                        <fr:c y="1" x="1" w="12">
                            <xf:input id="gs_name-control" bind="gs_name-bind" class="fr-summary fr-search">
                                <xf:label ref="$form-resources/gs_name/label"/>
                                <xf:hint ref="$form-resources/gs_name/hint"/>
                                <xf:alert ref="$fr-resources/detail/labels/alert"/>
                            </xf:input>
                        </fr:c>
                    </fr:grid></xf:group></xbl:template></xbl:binding></xbl:xbl>


El lun, 25 ene 2021 a las 17:15, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

Still checking this error but the problem is only on Form Builder.

The form runner correctly renders the form in the NEW url. Also the EDIT page the form is correctly rendered.
Only the Form Builder does not display the form definition.

The root of the problem is unknown yet but if I found something I would let you know.

regards,
bruno



El vie, 22 ene 2021 a las 17:40, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Hi,

I think it is a problem of Form formats.

Because I executed some old TestCases that for sure had an old format (4.0, 4.8 i think) and also created some forms online so they were stored with 2019.1.0 format.

And is not supported to have different formats in the same PL.

I think this is because if I delete the old forms and only use the one created online then all forms are displayed correctly.

When different formats are mixed then the problems start.

Is there any way to transform old formats to new one with a script ?}

regards,
bruno






El jue, 21 ene 2021 a las 16:31, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Hi,

In which situation the Form Builder will set the form source to:
<dummy xmlns:xbl="http://www.w3.org/ns/xbl" xmlns:xxf="http://orbeon.org/oxf/xml/xforms"
       xmlns:xxi="http://orbeon.org/oxf/xml/xinclude"
       xmlns:saxon="http://saxon.sf.net/"
       xmlns:fbf="java:org.orbeon.oxf.fb.FormBuilderXPathApi"
       xmlns:fr="http://orbeon.org/oxf/xml/form-runner"
       xmlns:secure="java:org.orbeon.oxf.util.SecureUtils"
       xmlns:xf="http://www.w3.org/2002/xforms"
       xmlns:xh="http://www.w3.org/1999/xhtml"
       xmlns:p="http://www.orbeon.com/oxf/pipeline"
       xmlns:ev="http://www.w3.org/2001/xml-events"
       xmlns:xi="http://www.w3.org/2001/XInclude"
       xmlns:toolboxOps="java:org.orbeon.oxf.fb.ToolboxOps"
       xmlns:xs="http://www.w3.org/2001/XMLSchema"
       xmlns:frf="java:org.orbeon.oxf.fr.FormRunner"
       xmlns:fb="http://orbeon.org/oxf/xml/form-builder"/>

There is a bug in my Persistence Layer for any form that use a section library:
1) Create the form
2) Add a section from any library
3) Publish the form
4) Goto to summary
5) Edit the form
And now the form is not displayed and if I "Edit Source" in the Form Builder it display the HTML code above (with the dummy mode).

It is also strange that only happen with Publish because if it is only Save it can be edit normaly.

regards,
bruno

--
You received this message because you are subscribed to the Google Groups "Orbeon Forms" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/orbeon/CALjxVcQqJuborqyrO_a3MR_%2BDSfK7aUMwVTAK9Nb1KZSsCdQ8A%40mail.gmail.com.
Reply | Threaded
Open this post in threaded view
|

Re: PL: Dummy in Form Builder

Alessandro  Vernet
Administrator
In reply to this post by Bruno
Hi Bruno,

As you know, persistence stores form definitions that are published and for
edition separately. Only the published forms contains the inlined section
templates. And when you publish, the form definition you edit in Form
Builder shouldn't change. Does your implementation of the persistence API
maybe conflate those 2 form definitions?

-Alex

-----
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
--
Sent from: http://discuss.orbeon.com/

--
You received this message because you are subscribed to the Google Groups "Orbeon Forms" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/orbeon/1613157148884-0.post%40n4.nabble.com.
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
Reply | Threaded
Open this post in threaded view
|

Re: PL: Dummy in Form Builder

Bruno
In reply to this post by Bruno
Hi,
" As you know, persistence stores form definitions that are published and for
edition separately. Only the published forms contains the inlined section
templates. And when you publish, the form definition you edit in Form
Builder shouldn't change. Does your implementation of the persistence API
maybe conflate those 2 form definitions? "

Ok this is the bug.
When a form is published my PL overrides the XML string of the Saved Definitions (which is wrong) and then it can not be edited.

regards,
bruno

 

El jue, 11 feb 2021 a las 18:45, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

I found 2 exceptions in the log.
First Exception
+----------------------------------------------------------------------------------------------------------------------+
|An Error has Occurred                                                                                                 |
|----------------------------------------------------------------------------------------------------------------------|
|assertion failed: expect no more than one `<xbl:xbl>` container for the namespace `http://orbeon.org/oxf/xml/form-buil|
|der/component/gs/library`                                                                                             |
|----------------------------------------------------------------------------------------------------------------------|
|Application Call Stack                                                                                                |
|----------------------------------------------------------------------------------------------------------------------|
|----------------------------------------------------------------------------------------------------------------------|
|Exception: java.lang.AssertionError                                                                                   |
|----------------------------------------------------------------------------------------------------------------------|
|scala.Predef$                                      |assert                        |Predef.scala                  | 223|
|org.orbeon.oxf.fr.FormRunnerSectionTemplateOps     |findXblXblForSectionTemplateNa|FormRunnerSectionTemplateOps.s|  76|
|org.orbeon.oxf.fr.FormRunnerSectionTemplateOps     |findXblXblForSectionTemplateNa|FormRunnerSectionTemplateOps.s|  66|
|org.orbeon.oxf.fr.FormRunner$                      |findXblXblForSectionTemplateNa|FormRunner.scala              |  16|
|org.orbeon.oxf.fb.FormBuilderXPathApi$             |$anonfun$updateSectionTemplate|FormBuilderXPathApi.scala     | 282|
|scala.Option                                       |flatMap                       |Option.scala                  | 271|
|org.orbeon.oxf.fb.FormBuilderXPathApi$             |$anonfun$updateSectionTemplate|FormBuilderXPathApi.scala     | 281|
|scala.collection.immutable.List                    |flatMap                       |List.scala                    | 338|
|org.orbeon.oxf.fb.FormBuilderXPathApi$             |$anonfun$updateSectionTemplate|FormBuilderXPathApi.scala     | 280|
|scala.collection.immutable.List                    |flatMap                       |List.scala                    | 338|
|org.orbeon.oxf.fb.FormBuilderXPathApi$             |$anonfun$updateSectionTemplate|FormBuilderXPathApi.scala     | 279|
|scala.collection.immutable.Stream                  |flatMap                       |Stream.scala                  | 489|
|org.orbeon.oxf.fb.FormBuilderXPathApi$             |updateSectionTemplateContentHo|FormBuilderXPathApi.scala     | 278|
|org.orbeon.oxf.fb.FormBuilderXPathApi              |updateSectionTemplateContentHo|FormBuilderXPathApi.scala     |    |
|sun.reflect.NativeMethodAccessorImpl               |invoke0                       |NativeMethodAccessorImpl.java |    |
|sun.reflect.NativeMethodAccessorImpl               |invoke                        |NativeMethodAccessorImpl.java |  62|
|sun.reflect.DelegatingMethodAccessorImpl           |invoke                        |DelegatingMethodAccessorImpl.j|  43|
|java.lang.reflect.Method                           |invoke                        |Method.java                   | 498|
|org.orbeon.saxon.functions.ExtensionFunctionCall   |invokeMethod                  |ExtensionFunctionCall.java    | 690|
|org.orbeon.saxon.functions.ExtensionFunctionCall   |call                          |ExtensionFunctionCall.java    | 343|
|----------------------------------------------------------------------------------------------------------------------|
|Exception: org.orbeon.saxon.trans.XPathException                                                                      |
|----------------------------------------------------------------------------------------------------------------------|
|org.orbeon.saxon.functions.ExtensionFunctionCall   |call                          |ExtensionFunctionCall.java    | 369|
|org.orbeon.saxon.functions.ExtensionFunctionCall   |iterate                       |ExtensionFunctionCall.java    | 224|
|org.orbeon.saxon.instruct.BlockIterator            |next                          |BlockIterator.java            |  42|
|org.orbeon.scaxon.Implicits$$anon$2                |<init>                        |Implicits.scala               |  75|
|org.orbeon.scaxon.Implicits$                       |asScalaIterator               |Implicits.scala               |  73|
|org.orbeon.oxf.util.PooledXPathExpression          |$anonfun$evaluateKeepItems$1  |PooledXPathExpression.scala   |  96|
|org.orbeon.oxf.util.DynamicVariable                |withValue                     |DynamicVariable.scala         |  42|
|org.orbeon.oxf.util.XPath$                         |withFunctionContext           |XPath.scala                   |  62|
|org.orbeon.oxf.util.PooledXPathExpression          |evaluateKeepItems             |PooledXPathExpression.scala   |  96|
|org.orbeon.oxf.util.XPathCache$                    |$anonfun$evaluateKeepItems$1  |XPathCache.scala              | 227|
|org.orbeon.oxf.util.XPathCache$                    |withEvaluation                |XPathCache.scala              | 734|
|----------------------------------------------------------------------------------------------------------------------|
|Exception: org.orbeon.oxf.common.ValidationException                                                                  |
|----------------------------------------------------------------------------------------------------------------------|
|org.orbeon.oxf.common.OrbeonLocationException$     |wrapException                 |OrbeonLocationException.scala |  60|
|org.orbeon.oxf.util.XPath$                         |handleXPathException          |XPath.scala                   | 377|
|org.orbeon.oxf.util.XPathCache$                    |withEvaluation                |XPathCache.scala              | 744|
|org.orbeon.oxf.util.XPathCache$                    |evaluateKeepItems             |XPathCache.scala              | 227|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|evaluateKeepItems             |XFormsActionInterpreter.scala | 291|
|orbeon.oxf.xforms.action.actions.XFormsActionAction|execute                       |XFormsActionAction.scala      |  75|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|$anonfun$runSingleIteration$7 |XFormsActionInterpreter.scala | 189|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.xforms.XFormsContextStackSupport$   |withBinding                   |XFormsContextStackSupport.scal|  47|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|$anonfun$runSingleIteration$6 |XFormsActionInterpreter.scala | 187|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.util.Logging                        |withDebug                     |Logging.scala                 |  50|
|org.orbeon.oxf.util.Logging                        |withDebug$                    |Logging.scala                 |  45|
|org.orbeon.oxf.util.Logging$                       |withDebug                     |Logging.scala                 |  73|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|$anonfun$runSingleIteration$1 |XFormsActionInterpreter.scala | 169|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|scala.util.control.Breaks$$anon$1                  |catchBreak                    |Breaks.scala                  |  67|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|runSingleIteration            |XFormsActionInterpreter.scala | 199|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|runSingle$1                   |XFormsActionInterpreter.scala |  99|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|$anonfun$runAction$2          |XFormsActionInterpreter.scala | 119|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.xforms.XFormsContextStackSupport$   |withBinding                   |XFormsContextStackSupport.scal|  47|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|runAction                     |XFormsActionInterpreter.scala |  90|
|orbeon.oxf.xforms.action.actions.XFormsActionAction|$anonfun$execute$7            |XFormsActionAction.scala      |  97|
|orbeon.oxf.xforms.action.actions.XFormsActionAction|$anonfun$execute$7$adapted    |XFormsActionAction.scala      |  85|
|scala.collection.Iterator                          |foreach                       |Iterator.scala                | 941|
|scala.collection.Iterator                          |foreach$                      |Iterator.scala                | 941|
|scala.collection.AbstractIterator                  |foreach                       |Iterator.scala                |1429|
|scala.collection.IterableLike                      |foreach                       |IterableLike.scala            |  74|
|scala.collection.IterableLike                      |foreach$                      |IterableLike.scala            |  73|
|scala.collection.AbstractIterable                  |foreach                       |Iterable.scala                |  56|
|orbeon.oxf.xforms.action.actions.XFormsActionAction|execute                       |XFormsActionAction.scala      |  85|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|$anonfun$runSingleIteration$7 |XFormsActionInterpreter.scala | 189|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.xforms.XFormsContextStackSupport$   |withBinding                   |XFormsContextStackSupport.scal|  47|
|rg.orbeon.oxf.xforms.action.XFormsActionInterpreter|$anonfun$runSingleIteration$6 |XFormsActionInterpreter.scala | 187|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.util.Logging                        |withDebug                     |Logging.scala                 |  50|
|org.orbeon.oxf.util.Logging                        |withDebug$                    |Logging.scala                 |  45|
|org.orbeon.oxf.util.Logging$                       |withDebug                     |Logging.scala                 |  73|
|---8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<---|
|org.orbeon.oxf.webapp.ProcessorService$            |withProcessorService          |ProcessorService.scala        | 146|
|org.orbeon.oxf.servlet.OrbeonServlet               |service                       |OrbeonServlet.scala           |  76|
|javax.servlet.http.HttpServlet                     |service                       |HttpServlet.java              | 741|
|org.apache.catalina.core.ApplicationFilterChain    |internalDoFilter              |ApplicationFilterChain.java   | 231|
|org.apache.catalina.core.ApplicationFilterChain    |doFilter                      |ApplicationFilterChain.java   | 166|
|org.apache.tomcat.websocket.server.WsFilter        |doFilter                      |WsFilter.java                 |  53|
|org.apache.catalina.core.ApplicationFilterChain    |internalDoFilter              |ApplicationFilterChain.java   | 193|
|org.apache.catalina.core.ApplicationFilterChain    |doFilter                      |ApplicationFilterChain.java   | 166|
|org.orbeon.oxf.servlet.FormRunnerAuthFilter        |doFilter                      |FormRunnerAuthFilter.scala    |  51|
|org.apache.catalina.core.ApplicationFilterChain    |internalDoFilter              |ApplicationFilterChain.java   | 193|
|org.apache.catalina.core.ApplicationFilterChain    |doFilter                      |ApplicationFilterChain.java   | 166|
|org.orbeon.oxf.servlet.LimiterFilter               |$anonfun$doFilter$3           |LimiterFilter.scala           |  85|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.logging.LifecycleLogger$            |withEvent                     |LifecycleLogger.scala         | 126|
|org.orbeon.oxf.servlet.LimiterFilter               |$anonfun$doFilter$2           |LimiterFilter.scala           |  85|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.logging.LifecycleLogger$            |withEvent                     |LifecycleLogger.scala         | 126|
|org.orbeon.oxf.servlet.LimiterFilter               |$anonfun$doFilter$1           |LimiterFilter.scala           |  78|
|org.orbeon.oxf.servlet.LimiterFilter               |$anonfun$doFilter$1$adapted   |LimiterFilter.scala           |  72|
|scala.Option                                       |foreach                       |Option.scala                  | 407|
|org.orbeon.oxf.servlet.LimiterFilter               |doFilter                      |LimiterFilter.scala           |  72|
|org.apache.catalina.core.ApplicationFilterChain    |internalDoFilter              |ApplicationFilterChain.java   | 193|
|org.apache.catalina.core.ApplicationFilterChain    |doFilter                      |ApplicationFilterChain.java   | 166|
|org.apache.catalina.core.StandardWrapperValve      |invoke                        |StandardWrapperValve.java     | 202|
|org.apache.catalina.core.StandardContextValve      |invoke                        |StandardContextValve.java     |  96|
|org.apache.catalina.authenticator.AuthenticatorBase|invoke                        |AuthenticatorBase.java        | 541|
|org.apache.catalina.core.StandardHostValve         |invoke                        |StandardHostValve.java        | 139|
|org.apache.catalina.valves.ErrorReportValve        |invoke                        |ErrorReportValve.java         |  92|
|org.apache.catalina.valves.AbstractAccessLogValve  |invoke                        |AbstractAccessLogValve.java   | 688|
|org.apache.catalina.core.StandardEngineValve       |invoke                        |StandardEngineValve.java      |  74|
|org.apache.catalina.connector.CoyoteAdapter        |service                       |CoyoteAdapter.java            | 343|
|org.apache.coyote.http11.Http11Processor           |service                       |Http11Processor.java          | 367|
|org.apache.coyote.AbstractProcessorLight           |process                       |AbstractProcessorLight.java   |  65|
|rg.apache.coyote.AbstractProtocol$ConnectionHandler|process                       |AbstractProtocol.java         | 868|
|.apache.tomcat.util.net.NioEndpoint$SocketProcessor|doRun                         |NioEndpoint.java              |1639|
|org.apache.tomcat.util.net.SocketProcessorBase     |run                           |SocketProcessorBase.java      |  49|
|java.util.concurrent.ThreadPoolExecutor            |runWorker                     |ThreadPoolExecutor.java       |1149|
|java.util.concurrent.ThreadPoolExecutor$Worker     |run                           |ThreadPoolExecutor.java       | 624|
|che.tomcat.util.threads.TaskThread$WrappingRunnable|run                           |TaskThread.java               |  61|
|java.lang.Thread                                   |run                           |Thread.java                   | 748|
+----------------------------------------------------------------------------------------------------------------------+"}




Second Exception

+----------------------------------------------------------------------------------------------------------------------+
|An Error has Occurred                                                                                                 |
|----------------------------------------------------------------------------------------------------------------------|
|Exception in extension function java.lang.NullPointerException                                                        |
|----------------------------------------------------------------------------------------------------------------------|
|Application Call Stack                                                                                                |
|----------------------------------------------------------------------------------------------------------------------|
|----------------------------------------------------------------------------------------------------------------------|
|Exception: java.lang.NullPointerException                                                                             |
|----------------------------------------------------------------------------------------------------------------------|
|org.orbeon.scaxon.SimplePath$NodeLocalNameTest     |test                          |SimplePath.scala              |  67|
|org.orbeon.scaxon.SimplePath$NodeInfoOps$          |find$extension                |SimplePath.scala              | 308|
|org.orbeon.scaxon.SimplePath$NodeInfoOps$          |$div$extension                |SimplePath.scala              | 123|
|org.orbeon.scaxon.SimplePath$NodeInfoOps$          |elemValueOpt$extension0       |SimplePath.scala              | 190|
|org.orbeon.oxf.fr.FormRunnerBaseOps                |optionFromMetadataOrProperties|FormRunnerBaseOps.scala       | 277|
|org.orbeon.oxf.fr.FormRunnerBaseOps                |optionFromMetadataOrProperties|FormRunnerBaseOps.scala       | 272|
|org.orbeon.oxf.fr.FormRunner$                      |optionFromMetadataOrProperties|FormRunner.scala              |  16|
|org.orbeon.oxf.fr.FormRunnerPDF                    |optionFromMetadataOrProperties|FormRunnerPDF.scala           | 107|
|org.orbeon.oxf.fr.FormRunnerPDF                    |optionFromMetadataOrProperties|FormRunnerPDF.scala           |  97|
|org.orbeon.oxf.fr.FormRunner$                      |optionFromMetadataOrProperties|FormRunner.scala              |  16|
|org.orbeon.oxf.fr.FormRunner                       |optionFromMetadataOrProperties|FormRunner.scala              |    |
|sun.reflect.NativeMethodAccessorImpl               |invoke0                       |NativeMethodAccessorImpl.java |    |
|sun.reflect.NativeMethodAccessorImpl               |invoke                        |NativeMethodAccessorImpl.java |  62|
|sun.reflect.DelegatingMethodAccessorImpl           |invoke                        |DelegatingMethodAccessorImpl.j|  43|
|java.lang.reflect.Method                           |invoke                        |Method.java                   | 498|
|org.orbeon.saxon.functions.ExtensionFunctionCall   |invokeMethod                  |ExtensionFunctionCall.java    | 690|
|org.orbeon.saxon.functions.ExtensionFunctionCall   |call                          |ExtensionFunctionCall.java    | 343|
|----------------------------------------------------------------------------------------------------------------------|
|Exception: org.orbeon.saxon.trans.XPathException                                                                      |
|----------------------------------------------------------------------------------------------------------------------|
|org.orbeon.saxon.functions.ExtensionFunctionCall   |call                          |ExtensionFunctionCall.java    | 369|
|org.orbeon.saxon.functions.ExtensionFunctionCall   |iterate                       |ExtensionFunctionCall.java    | 224|
|org.orbeon.saxon.expr.Atomizer                     |iterate                       |Atomizer.java                 | 163|
|org.orbeon.saxon.expr.QuantifiedExpression         |effectiveBooleanValue         |QuantifiedExpression.java     | 213|
|org.orbeon.saxon.expr.QuantifiedExpression         |evaluateItem                  |QuantifiedExpression.java     | 202|
|org.orbeon.saxon.expr.Expression                   |iterate                       |Expression.java               | 370|
|org.orbeon.saxon.sxpath.XPathExpression            |iterate                       |XPathExpression.java          | 141|
|org.orbeon.oxf.util.PooledXPathExpression          |evaluate                      |PooledXPathExpression.scala   | 180|
|org.orbeon.oxf.util.PooledXPathExpression          |$anonfun$evaluateAsExtent$1   |PooledXPathExpression.scala   | 116|
|org.orbeon.oxf.util.DynamicVariable                |withValue                     |DynamicVariable.scala         |  42|
|org.orbeon.oxf.util.XPath$                         |withFunctionContext           |XPath.scala                   |  62|
|org.orbeon.oxf.util.PooledXPathExpression          |evaluateAsExtent              |PooledXPathExpression.scala   | 116|
|org.orbeon.oxf.util.XPathCache$                    |$anonfun$evaluateAsExtent$1   |XPathCache.scala              | 295|
|org.orbeon.oxf.util.XPathCache$                    |withEvaluation                |XPathCache.scala              | 734|
|----------------------------------------------------------------------------------------------------------------------|
|Exception: org.orbeon.oxf.common.ValidationException                                                                  |
|----------------------------------------------------------------------------------------------------------------------|
|org.orbeon.oxf.common.OrbeonLocationException$     |wrapException                 |OrbeonLocationException.scala |  60|
|org.orbeon.oxf.util.XPath$                         |handleXPathException          |XPath.scala                   | 377|
|org.orbeon.oxf.util.XPathCache$                    |withEvaluation                |XPathCache.scala              | 744|
|org.orbeon.oxf.util.XPathCache$                    |evaluateAsExtent              |XPathCache.scala              | 295|
|org.orbeon.oxf.xforms.Variable                     |evaluate                      |Variable.scala                |  87|
|org.orbeon.oxf.xforms.Variable                     |$anonfun$valueEvaluateIfNeeded|Variable.scala                |  43|
|scala.Option                                       |getOrElse                     |Option.scala                  | 189|
|org.orbeon.oxf.xforms.Variable                     |valueEvaluateIfNeeded         |Variable.scala                |  37|
|n.oxf.xforms.control.controls.XFormsVariableControl|$anonfun$preEvaluateImpl$2    |XFormsVariableControl.scala   |  81|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.xforms.analytics.NOPRequestStats$   |withXPath                     |RequestStats.scala            |  92|
|n.oxf.xforms.control.controls.XFormsVariableControl|preEvaluateImpl               |XFormsVariableControl.scala   |  81|
|org.orbeon.oxf.xforms.control.XFormsControl        |evaluate                      |XFormsControl.scala           | 206|
|org.orbeon.oxf.xforms.control.ControlBindingSupport|setBindingContext             |ControlBindingSupport.scala   | 138|
|org.orbeon.oxf.xforms.control.ControlBindingSupport|setBindingContext$            |ControlBindingSupport.scala   | 118|
|org.orbeon.oxf.xforms.control.XFormsControl        |setBindingContext             |XFormsControl.scala           |  42|
|org.orbeon.oxf.xforms.control.ControlBindingSupport|evaluateBindingAndValues      |ControlBindingSupport.scala   |  79|
|org.orbeon.oxf.xforms.control.ControlBindingSupport|evaluateBindingAndValues$     |ControlBindingSupport.scala   |  63|
|org.orbeon.oxf.xforms.control.XFormsControl        |evaluateBindingAndValues      |XFormsControl.scala           |  42|
|org.orbeon.oxf.xforms.control.Controls$            |$anonfun$buildTree$1          |Controls.scala                | 147|
|scala.Option                                       |map                           |Option.scala                  | 230|
|org.orbeon.oxf.xforms.control.Controls$            |buildTree                     |Controls.scala                | 135|
|org.orbeon.oxf.xforms.control.Controls$            |$anonfun$buildTree$3          |Controls.scala                | 151|
|org.orbeon.oxf.xforms.control.Controls$            |$anonfun$buildChildren$1      |Controls.scala                | 168|
|org.orbeon.oxf.xforms.control.Controls$            |$anonfun$buildChildren$1$adapt|Controls.scala                | 167|
|scala.collection.mutable.ResizableArray            |foreach                       |ResizableArray.scala          |  62|
|scala.collection.mutable.ResizableArray            |foreach$                      |ResizableArray.scala          |  55|
|scala.collection.mutable.ArrayBuffer               |foreach                       |ArrayBuffer.scala             |  49|
|org.orbeon.oxf.xforms.control.Controls$            |buildChildren                 |Controls.scala                | 167|
|org.orbeon.oxf.xforms.control.XFormsControl        |buildChildren                 |XFormsControl.scala           | 248|
|org.orbeon.oxf.xforms.control.Controls$            |$anonfun$buildTree$1          |Controls.scala                | 151|
|scala.Option                                       |map                           |Option.scala                  | 230|
|org.orbeon.oxf.xforms.control.Controls$            |buildTree                     |Controls.scala                | 135|
|org.orbeon.oxf.xforms.control.Controls$            |$anonfun$buildTree$3          |Controls.scala                | 151|
|org.orbeon.oxf.xforms.control.Controls$            |$anonfun$buildChildren$1      |Controls.scala                | 168|
|org.orbeon.oxf.xforms.control.Controls$            |$anonfun$buildChildren$1$adapt|Controls.scala                | 167|
|scala.collection.mutable.ResizableArray            |foreach                       |ResizableArray.scala          |  62|
|scala.collection.mutable.ResizableArray            |foreach$                      |ResizableArray.scala          |  55|
|scala.collection.mutable.ArrayBuffer               |foreach                       |ArrayBuffer.scala             |  49|
|org.orbeon.oxf.xforms.control.Controls$            |buildChildren                 |Controls.scala                | 167|
|---8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<---|
|org.orbeon.oxf.webapp.ProcessorService$            |withProcessorService          |ProcessorService.scala        | 146|
|org.orbeon.oxf.servlet.OrbeonServlet               |service                       |OrbeonServlet.scala           |  76|
|javax.servlet.http.HttpServlet                     |service                       |HttpServlet.java              | 741|
|org.apache.catalina.core.ApplicationFilterChain    |internalDoFilter              |ApplicationFilterChain.java   | 231|
|org.apache.catalina.core.ApplicationFilterChain    |doFilter                      |ApplicationFilterChain.java   | 166|
|org.apache.tomcat.websocket.server.WsFilter        |doFilter                      |WsFilter.java                 |  53|
|org.apache.catalina.core.ApplicationFilterChain    |internalDoFilter              |ApplicationFilterChain.java   | 193|
|org.apache.catalina.core.ApplicationFilterChain    |doFilter                      |ApplicationFilterChain.java   | 166|
|org.orbeon.oxf.servlet.FormRunnerAuthFilter        |doFilter                      |FormRunnerAuthFilter.scala    |  51|
|org.apache.catalina.core.ApplicationFilterChain    |internalDoFilter              |ApplicationFilterChain.java   | 193|
|org.apache.catalina.core.ApplicationFilterChain    |doFilter                      |ApplicationFilterChain.java   | 166|
|org.orbeon.oxf.servlet.LimiterFilter               |$anonfun$doFilter$3           |LimiterFilter.scala           |  85|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.logging.LifecycleLogger$            |withEvent                     |LifecycleLogger.scala         | 126|
|org.orbeon.oxf.servlet.LimiterFilter               |$anonfun$doFilter$2           |LimiterFilter.scala           |  85|
|scala.runtime.java8.JFunction0$mcV$sp              |apply                         |JFunction0$mcV$sp.java        |  23|
|org.orbeon.oxf.logging.LifecycleLogger$            |withEvent                     |LifecycleLogger.scala         | 126|
|org.orbeon.oxf.servlet.LimiterFilter               |$anonfun$doFilter$1           |LimiterFilter.scala           |  78|
|org.orbeon.oxf.servlet.LimiterFilter               |$anonfun$doFilter$1$adapted   |LimiterFilter.scala           |  72|
|scala.Option                                       |foreach                       |Option.scala                  | 407|
|org.orbeon.oxf.servlet.LimiterFilter               |doFilter                      |LimiterFilter.scala           |  72|
|org.apache.catalina.core.ApplicationFilterChain    |internalDoFilter              |ApplicationFilterChain.java   | 193|
|org.apache.catalina.core.ApplicationFilterChain    |doFilter                      |ApplicationFilterChain.java   | 166|
|org.apache.catalina.core.StandardWrapperValve      |invoke                        |StandardWrapperValve.java     | 202|
|org.apache.catalina.core.StandardContextValve      |invoke                        |StandardContextValve.java     |  96|
|org.apache.catalina.authenticator.AuthenticatorBase|invoke                        |AuthenticatorBase.java        | 541|
|org.apache.catalina.core.StandardHostValve         |invoke                        |StandardHostValve.java        | 139|
|org.apache.catalina.valves.ErrorReportValve        |invoke                        |ErrorReportValve.java         |  92|
|org.apache.catalina.valves.AbstractAccessLogValve  |invoke                        |AbstractAccessLogValve.java   | 688|
|org.apache.catalina.core.StandardEngineValve       |invoke                        |StandardEngineValve.java      |  74|
|org.apache.catalina.connector.CoyoteAdapter        |service                       |CoyoteAdapter.java            | 343|
|org.apache.coyote.http11.Http11Processor           |service                       |Http11Processor.java          | 367|
|org.apache.coyote.AbstractProcessorLight           |process                       |AbstractProcessorLight.java   |  65|
|rg.apache.coyote.AbstractProtocol$ConnectionHandler|process                       |AbstractProtocol.java         | 868|
|.apache.tomcat.util.net.NioEndpoint$SocketProcessor|doRun                         |NioEndpoint.java              |1639|
|org.apache.tomcat.util.net.SocketProcessorBase     |run                           |SocketProcessorBase.java      |  49|
|java.util.concurrent.ThreadPoolExecutor            |runWorker                     |ThreadPoolExecutor.java       |1149|
|java.util.concurrent.ThreadPoolExecutor$Worker     |run                           |ThreadPoolExecutor.java       | 624|
|che.tomcat.util.threads.TaskThread$WrappingRunnable|run                           |TaskThread.java               |  61|
|java.lang.Thread                                   |run                           |Thread.java                   | 748|
+----------------------------------------------------------------------------------------------------------------------+"}


El jue, 11 feb 2021 a las 17:53, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

If i remove the <xbl> node manually then I can edit the form on the Form Builder.

If the <xbl> node is present then is render in the Form Builder like:

regards,
bruno

El jue, 11 feb 2021 a las 17:19, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

Actually my PL does not care about that <xbl> node.
But when a form is published (with library dependencies) then it can not be edited.
After searching a little the only difference I found was the <xbl> node.

If you are confirming that <xbl> is put there by Orbeon then the problem must be another.
Check:

This form has exactly the same problem as my local installation.

The only difference is that at Orbeon installation I can edit the Form code while in my local installation when editing I only see the <dummy> node.

Still hunting down this problem :)

regards,
bruno

El mié, 10 feb 2021 a las 18:42, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

This is a complete form with the XBL node added, search for "xbl:xbl".

<?xml version="1.0" encoding="UTF-8"?>
<xh:html xmlns:array="http://www.w3.org/2005/xpath-functions/array" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:exf="http://www.exforms.org/exf/1-0" xmlns:fb="http://orbeon.org/oxf/xml/form-builder" xmlns:fr="http://orbeon.org/oxf/xml/form-runner" xmlns:map="http://www.w3.org/2005/xpath-functions/map" xmlns:saxon="http://saxon.sf.net/" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sql="http://orbeon.org/oxf/xml/sql" xmlns:xf="http://www.w3.org/2002/xforms" xmlns:xh="http://www.w3.org/1999/xhtml" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xxf="http://orbeon.org/oxf/xml/xforms" xmlns:xxi="http://orbeon.org/oxf/xml/xinclude">
<xh:head>
<xh:title>11</xh:title>
<xf:model xxf:analysis.calculate="true" xxf:expose-xpath-types="true" id="fr-form-model">
<!-- Main instance -->
<xf:instance xxf:exclude-result-prefixes="#all" id="fr-form-instance" xxf:index="id">
<form>
<section-2>
<grid-1>
<name/>
<surname/>
</grid-1>
</section-2>
</form>
</xf:instance>
<!-- Bindings -->
<xf:bind id="fr-form-binds" ref="instance(''fr-form-instance'')">
<xf:bind id="section-2-bind" name="section-2" ref="section-2"/>
</xf:bind>
<!-- Metadata -->
<xf:instance xxf:exclude-result-prefixes="#all" id="fr-form-metadata" xxf:readonly="true">
<metadata>
<application-name>gs</application-name>
<form-name>test11</form-name>
<title xml:lang="en">11</title>
<description xml:lang="en"/>
<created-with-version>2020.1.1.202102012142 PE</created-with-version>
<library-versions>
<app>3</app>
</library-versions>
<updated-with-version>2020.1.1.202102012142 PE</updated-with-version>
<migration version="2019.1.0">{"migrations":[{"containerPath":[{"value":"section-2"}],"newGridElem":{"value":"grid-1"},"afterElem":null,"content":[{"value":"name"},{"value":"surname"}],"topLevel":false}]}</migration>
</metadata>
</xf:instance>
<!-- Attachments -->
<xf:instance xxf:exclude-result-prefixes="#all" id="fr-form-attachments">
<attachments/>
</xf:instance>
<!-- All form resources -->
<xf:instance xxf:exclude-result-prefixes="#all" id="fr-form-resources" xxf:readonly="true">
<resources>
<resource xml:lang="en">
<section-2>
<label/>
<help/>
</section-2>
</resource>
</resources>
</xf:instance>
</xf:model>
<xbl:xbl xmlns:component="http://orbeon.org/oxf/xml/form-builder/component/gs/library" xmlns:fbf="java:org.orbeon.oxf.fb.FormBuilderXPathApi" xmlns:frf="java:org.orbeon.oxf.fr.FormRunner" xmlns:p="http://www.orbeon.com/oxf/pipeline" xmlns:xbl="http://www.w3.org/ns/xbl" xmlns:xxbl="http://orbeon.org/oxf/xml/xbl">
<xbl:binding class="fr-section-component" element="component|section-1" id="gs-section-1-component">
<xbl:implementation>
<xf:model id="section-1-model">
<xf:instance id="fr-form-instance" xxf:index="id" xxbl:mirror="true">
<empty/>
</xf:instance>
<xf:instance id="fr-form-template">
<section-1>
<grid-1>
<name/>
<surname/>
</grid-1>
</section-1>
</xf:instance>
<xf:bind id="fr-form-binds" ref="instance(''fr-form-instance'')">
<xf:bind id="grid-1-bind" name="grid-1" ref="grid-1">
<xf:bind id="name-bind" name="name" ref="name" xxf:whitespace="trim"/>
<xf:bind id="surname-bind" name="surname" ref="surname" xxf:whitespace="trim"/>
</xf:bind>
</xf:bind>
<xf:instance id="fr-form-resources" xxf:readonly="true">
<resources>
<resource xml:lang="en">
<section-1>
<label>Name</label>
</section-1>
<name>
<label>Name</label>
<hint/>
</name>
<surname>
<label>Surname</label>
<hint/>
</surname>
</resource>
</resources>
</xf:instance>
<xf:instance id="readonly">
<readonly/>
</xf:instance>
<xf:var name="fr-params" value="xxf:instance(''fr-parameters-instance'')"/>
<xf:var name="fr-mode" value="$fr-params/mode"/>
<xf:bind readonly="                             fr:is-readonly-mode()         or                             instance(''readonly'') = ''true'' or                             fr:is-design-time()" ref="instance(''fr-form-instance'')"/>
<xf:action class="fr-design-time-preserve" event="xforms-model-construct-done">
<xf:var name="is-empty" value="empty(instance()/*)"/>
<xf:action if="$is-empty">
<xf:insert context="instance()" origin="instance(''fr-form-template'')/*"/>
<xf:rebuild/>
<xf:recalculate xxf:defaults="true"/>
</xf:action>
<xf:action if="not($is-empty)">
<xf:var xmlns:migration="java:org.orbeon.oxf.fr.SimpleDataMigration" name="simply-migrated" value="                                     migration:dataMaybeWithSimpleMigration(                                         event(''xxf:absolute-targetid''),                                         instance(''fr-form-template''),                                         instance()                                     )"/>
<xf:action if="exists($simply-migrated)">
<xf:delete ref="instance()/*"/>
<xf:insert context="instance()" origin="$simply-migrated/*"/>
<xf:rebuild/>
<xf:recalculate xxf:defaults="true"/>
</xf:action>
</xf:action>
</xf:action>
<xf:action event="xforms-model-construct-done">
<xf:insert xmlns:migration="java:org.orbeon.oxf.fr.SimpleDataMigration" context="." iterate="migration:iterateBinds(event(''xxf:absolute-targetid''), instance())" origin="xf:attribute(''fr:relevant'', ''false'')"/>
</xf:action>
<xf:insert context="event(''xxf:binding'')" event="xforms-disabled" if="event(''xxf:binding'')/root()/* is instance(''fr-form-instance'')" observer="fr-section-template-view" origin="xf:attribute(''fr:relevant'', ''false'')" xxf:phantom="true"/>
<xf:delete event="xforms-enabled" if="event(''xxf:binding'')/root() is instance(''fr-form-instance'')/root()" observer="fr-section-template-view" ref="event(''xxf:binding'')/@fr:relevant" xxf:phantom="true"/>
</xf:model>
</xbl:implementation>
<xbl:template>
<xf:group appearance="xxf:internal" id="fr-section-template-view" model="section-1-model">
<xf:var id="context" name="context" value="xxf:binding-context(''gs-section-1-component'')"/>
<xf:var as="xs:boolean" name="readonly" value="exf:readonly($context)">
<xf:setvalue class="fr-design-time-preserve" event="xforms-enabled xforms-value-changed" ref="instance(''readonly'')" value="exf:readonly($context)"/>
</xf:var>
<xf:var as="element()?" name="fr-resources">
<xxf:value xxbl:scope="outer" value="$fr-resources"/>
</xf:var>
<xf:var as="element(resource)" name="form-resources" value="instance(''fr-form-resources'')/(resource[@xml:lang = xxf:instance(''fr-language-instance'')], resource[1])[1]"/>
<xf:label xmlns:oxf="http://www.orbeon.com/oxf/processors" ref="$form-resources/section-1/label"/>
<fr:grid xmlns:oxf="http://www.orbeon.com/oxf/processors" bind="grid-1-bind" id="grid-1-grid">
<fr:c w="12" x="1" y="1">
<xf:input bind="name-bind" class="fr-summary fr-search" id="name-control">
<xf:label ref="$form-resources/name/label"/>
<xf:hint ref="$form-resources/name/hint"/>
<xf:alert ref="$fr-resources/detail/labels/alert"/>
</xf:input>
</fr:c>
<fr:c w="12" x="1" y="2">
<xf:input bind="surname-bind" class="fr-summary fr-search" id="surname-control">
<xf:label ref="$form-resources/surname/label"/>
<xf:hint ref="$form-resources/surname/hint"/>
<xf:alert ref="$fr-resources/detail/labels/alert"/>
</xf:input>
</fr:c>
</fr:grid>
</xf:group>
</xbl:template>
</xbl:binding>
</xbl:xbl>
</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 bind="section-2-bind" id="section-2-section">
<xf:label ref="$form-resources/section-2/label"/>
<component:section-1 xmlns:component="http://orbeon.org/oxf/xml/form-builder/component/gs/library" xmlns:fbf="java:org.orbeon.oxf.fb.FormBuilderXPathApi" xmlns:frf="java:org.orbeon.oxf.fr.FormRunner" xmlns:xxbl="http://orbeon.org/oxf/xml/xbl" xmlns="http://orbeon.org/oxf/xml/form-builder"/>
</fr:section>
</fr:body>
</fr:view>
</xh:body>
</xh:html>

El mié, 10 feb 2021 a las 17:44, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

It happens on Orbeon 2020.1.1 but only with my Persistence Layer. If i switch to MySQL it works fine.

I do not know why the <xbl:xbl>... node is being added on Publish action only (see previous post for the complete <xbl> node).
Also the XML is taken from http put request directly so at this point my PL is doing nothing only reading the XML from the request body (which already has the <xbl> node).

regards,
bruno


El vie, 5 feb 2021 a las 18:48, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

I have made a video with the problem:
1) It shows the library
2) Create a new form using a section of 1)
3) Publish it
4) With a breakpoint it show the extra XBL node that is inserted in the XML of the form (with Save this does not happend)
5) Try to edit 3) but nothing is displayed

Maybe the video gives you some clues of the cause:


El vie, 5 feb 2021 a las 16:44, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

Orbeon 2020.1.1 behave as expected.

My local installation is 2020.1, so i will upgrade and check if it is happening.

regards,
bruno

El jue, 28 ene 2021 a las 13:38, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Hi,

Let me know when you deploy Orbeon 2020.1 on https://www.orbeon.com/try

I will try it there ...

regards,
bruno

El mié, 27 ene 2021 a las 15:59, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,
1) Create the form
2) Add a section from the App library
3) Publish the form
4) Goto to summary
5) Edit the form
Orbeon 2020.1

At 3) Orbeon is sending the extra node in the XML string. Then in 5) the form is not displayed because of the extra node.

It does NOT happen with Save.

regards,
bruno

El lun, 25 ene 2021 a las 18:21, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Hi Alex,

Just to confirm that is Orbeon that adds the extra <xbl:xbl> node and only does this on Publishing.
Because my services receive the XML string with that node added.

The workaround is to Save the form once after the Publishing and this action removes the extra node and the form can be edited from the Summary without problems.

regards,
bruno


El lun, 25 ene 2021 a las 18:13, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

I found the culprit but not sure yet why this is happening...
After Publishing a form an extra XML is added after <xf:model> node. Also the problems are forms with references to library forms.
(This does not happen when the form definition is Saved only after Publishing).

The node is the following (not sure if it is a bug on my PL or is an Orbeon thing):
<xbl:xbl xmlns:xbl="http://www.w3.org/ns/xbl" xmlns:fbf="java:org.orbeon.oxf.fb.FormBuilderXPathApi" xmlns:xxbl="http://orbeon.org/oxf/xml/xbl" xmlns:frf="java:org.orbeon.oxf.fr.FormRunner" xmlns:component="http://orbeon.org/oxf/xml/form-builder/component/gs/library" xmlns:p="http://www.orbeon.com/oxf/pipeline"><xbl:binding id="gs-section-1-component" element="component|section-1" class="fr-section-component"><xbl:implementation><xf:model id="section-1-model"><xf:instance id="fr-form-instance" xxbl:mirror="true" xxf:index="id"><empty/></xf:instance><xf:instance id="fr-form-template"><section-1>
                        <grid-1>
                            <gs_name/>
                        </grid-1>
                    </section-1></xf:instance><xf:bind id="fr-form-binds" ref="instance(''fr-form-instance'')"><xf:bind id="grid-1-bind" ref="grid-1" name="grid-1">
                        <xf:bind id="gs_name-bind" name="gs_name" ref="gs_name" xxf:whitespace="trim"/>
                    </xf:bind></xf:bind><xf:instance id="fr-form-resources" xxf:readonly="true"><resources><resource xml:lang="en"><section-1>
                            <label>Untitled Section</label>
                        </section-1><gs_name>
                            <label>GS Name</label>
                            <hint/>
                        </gs_name></resource></resources></xf:instance><xf:instance id="readonly"><readonly/></xf:instance><xf:var name="fr-params" value="xxf:instance(''fr-parameters-instance'')"/><xf:var name="fr-mode" value="$fr-params/mode"/><xf:bind ref="instance(''fr-form-instance'')" readonly="                             fr:is-readonly-mode()         or                             instance(''readonly'') = ''true'' or                             fr:is-design-time()"/><xf:action event="xforms-model-construct-done" class="fr-design-time-preserve"><xf:var name="is-empty" value="empty(instance()/*)"/><xf:action if="$is-empty"><xf:insert context="instance()" origin="instance(''fr-form-template'')/*"/><xf:rebuild/><xf:recalculate xxf:defaults="true"/></xf:action><xf:action if="not($is-empty)"><xf:var xmlns:migration="java:org.orbeon.oxf.fr.SimpleDataMigration" name="simply-migrated" value="                                     migration:dataMaybeWithSimpleMigration(                                         event(''xxf:absolute-targetid''),                                         instance(''fr-form-template''),                                         instance()                                     )"/><xf:action if="exists($simply-migrated)"><xf:delete ref="instance()/*"/><xf:insert context="instance()" origin="$simply-migrated/*"/><xf:rebuild/><xf:recalculate xxf:defaults="true"/></xf:action></xf:action></xf:action><xf:action event="xforms-model-construct-done"><xf:insert xmlns:migration="java:org.orbeon.oxf.fr.SimpleDataMigration" iterate="migration:iterateBinds(event(''xxf:absolute-targetid''), instance())" context="." origin="xf:attribute(''fr:relevant'', ''false'')"/></xf:action><xf:insert observer="fr-section-template-view" event="xforms-disabled" xxf:phantom="true" if="event(''xxf:binding'')/root()/* is instance(''fr-form-instance'')" context="event(''xxf:binding'')" origin="xf:attribute(''fr:relevant'', ''false'')"/><xf:delete observer="fr-section-template-view" event="xforms-enabled" xxf:phantom="true" if="event(''xxf:binding'')/root() is instance(''fr-form-instance'')/root()" ref="event(''xxf:binding'')/@fr:relevant"/></xf:model></xbl:implementation><xbl:template><xf:group appearance="xxf:internal" model="section-1-model" id="fr-section-template-view"><xf:var name="context" id="context" value="xxf:binding-context(''gs-section-1-component'')"/><xf:var name="readonly" as="xs:boolean" value="exf:readonly($context)"><xf:setvalue event="xforms-enabled xforms-value-changed" ref="instance(''readonly'')" value="exf:readonly($context)" class="fr-design-time-preserve"/></xf:var><xf:var name="fr-resources" as="element()?"><xxf:value value="$fr-resources" xxbl:scope="outer"/></xf:var><xf:var name="form-resources" value="instance(''fr-form-resources'')/(resource[@xml:lang = xxf:instance(''fr-language-instance'')], resource[1])[1]" as="element(resource)"/><xf:label xmlns:oxf="http://www.orbeon.com/oxf/processors" ref="$form-resources/section-1/label"/><fr:grid xmlns:oxf="http://www.orbeon.com/oxf/processors" id="grid-1-grid" bind="grid-1-bind">
                        <fr:c y="1" x="1" w="12">
                            <xf:input id="gs_name-control" bind="gs_name-bind" class="fr-summary fr-search">
                                <xf:label ref="$form-resources/gs_name/label"/>
                                <xf:hint ref="$form-resources/gs_name/hint"/>
                                <xf:alert ref="$fr-resources/detail/labels/alert"/>
                            </xf:input>
                        </fr:c>
                    </fr:grid></xf:group></xbl:template></xbl:binding></xbl:xbl>


El lun, 25 ene 2021 a las 17:15, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Alex,

Still checking this error but the problem is only on Form Builder.

The form runner correctly renders the form in the NEW url. Also the EDIT page the form is correctly rendered.
Only the Form Builder does not display the form definition.

The root of the problem is unknown yet but if I found something I would let you know.

regards,
bruno



El vie, 22 ene 2021 a las 17:40, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Hi,

I think it is a problem of Form formats.

Because I executed some old TestCases that for sure had an old format (4.0, 4.8 i think) and also created some forms online so they were stored with 2019.1.0 format.

And is not supported to have different formats in the same PL.

I think this is because if I delete the old forms and only use the one created online then all forms are displayed correctly.

When different formats are mixed then the problems start.

Is there any way to transform old formats to new one with a script ?}

regards,
bruno






El jue, 21 ene 2021 a las 16:31, Bruno Buzzi Brassesco (<[hidden email]>) escribió:
Hi,

In which situation the Form Builder will set the form source to:
<dummy xmlns:xbl="http://www.w3.org/ns/xbl" xmlns:xxf="http://orbeon.org/oxf/xml/xforms"
       xmlns:xxi="http://orbeon.org/oxf/xml/xinclude"
       xmlns:saxon="http://saxon.sf.net/"
       xmlns:fbf="java:org.orbeon.oxf.fb.FormBuilderXPathApi"
       xmlns:fr="http://orbeon.org/oxf/xml/form-runner"
       xmlns:secure="java:org.orbeon.oxf.util.SecureUtils"
       xmlns:xf="http://www.w3.org/2002/xforms"
       xmlns:xh="http://www.w3.org/1999/xhtml"
       xmlns:p="http://www.orbeon.com/oxf/pipeline"
       xmlns:ev="http://www.w3.org/2001/xml-events"
       xmlns:xi="http://www.w3.org/2001/XInclude"
       xmlns:toolboxOps="java:org.orbeon.oxf.fb.ToolboxOps"
       xmlns:xs="http://www.w3.org/2001/XMLSchema"
       xmlns:frf="java:org.orbeon.oxf.fr.FormRunner"
       xmlns:fb="http://orbeon.org/oxf/xml/form-builder"/>

There is a bug in my Persistence Layer for any form that use a section library:
1) Create the form
2) Add a section from any library
3) Publish the form
4) Goto to summary
5) Edit the form
And now the form is not displayed and if I "Edit Source" in the Form Builder it display the HTML code above (with the dummy mode).

It is also strange that only happen with Publish because if it is only Save it can be edit normaly.

regards,
bruno

--
You received this message because you are subscribed to the Google Groups "Orbeon Forms" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/orbeon/CALjxVcT5_JhzDgc_eOQAS8cn2_v-P1oLS-3%2BnJTgrfFWNdMAqw%40mail.gmail.com.
Reply | Threaded
Open this post in threaded view
|

Re: PL: Dummy in Form Builder

Alessandro  Vernet
Administrator
Perfect Bruno; I'm glad you found what the problem is, and indeed, by design,
"saved" and "published" form definitions are expected to be kept separately.

-Alex

-----
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
--
Sent from: http://discuss.orbeon.com/

--
You received this message because you are subscribed to the Google Groups "Orbeon Forms" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/orbeon/1613430485438-0.post%40n4.nabble.com.
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
12