Hello,
I am migrating orbeon forms application from 3.8 to 4.9 version. All of my forms where written with Eclipse/OxygenXML - not by built-in form designer. I have read all migration notes, and everything works fine but each *.xform page contains strange section (Reloading form) at the begginning. I can't find any error in orbeon.log file or other.. Thanks for any suggestion what is wrong. Regards, Grzegorz |
Administrator
|
Grzegorz,
This seems to indicate that some of the Orbeon Forms standard CSS is not included. Which Orbeon Forms CSS files do your pages include, if any? -Erik |
I were not using any Orbeon standard CSS - that was the reason. This issue is resolved. I've got another one.
One of my xforms isn't working after migration, this button freezes form with "xforms-loading-loading" span visible. There are no errors on the server side. Both submissions from this action are getting WSDL/SCHEMA from exist and replaces two xform instances. It is working correctly as I can see with inspector. The only error i can see is Javascript Error "TypeError: "spanContainer is undefined" from line 120 orbeon...*js. spanContainer.appendChild(templateClone) this is the part of code that crashes my application. <xf:trigger ref="instance('page')/edition-valid"> <xf:label>EDIT</xf:label> <xf:action ev:event="DOMActivate"> <xf:send submission="get-wsdl" /> <xf:send submission="get-schema" /> <xf:action if="not(instance('schema')//xsd:appinfo[text()='imported'])"> <xf:setvalue ref="instance('page')/edition/operation" value="instance('wsdl')//wsdl:portType[1]/wsdl:operation[1]/@name" /> <xf:setvalue ref="instance('page')/edition/cdm" value="if (instance('page')/edition/adapter='') then 'true' else ()" /> <xf:toggle case="edition" /> </xf:action> </xf:action> </xf:trigger> What is wrong? |
Administrator
|
Hi Gregorio, This is something of a shot in the dark, but this type of error can happen if the nesting of the elements in incorrect, and the browsers changes it on the client, in a way that is unknown to the server. I would try to debug the code and see what it is trying to insert, and see if you can find a case of incorrect element nesting there. If this doesn't get you anywhere, it could of course be a bug in the product. In which case, I'd recommend you create a minimal example that reproduces the problem, and post it here. Alex On Sun, Jun 21, 2015 at 8:53 AM, gregorio <[hidden email]> wrote: I were not using any Orbeon standard CSS - that was the reason. This issue is 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 post to this group, send email to [hidden email].
--
Follow Orbeon on Twitter: @orbeon Follow me on Twitter: @avernet |
The "edition" case had unsupported appearance - that caused above error.
<xf:select1 ref="instance('page')/edition/operation" appearance="xxforms:tree"> It took me many hours to find out. I have one more issue now. The binding looks: <xf:bind id="bind-artifacts" nodeset="instance('configuration')/layout/group/artifact" relevant="if (instance('page')/mode='GROUP' and .[../@name=instance('page')/group]) then true() else if (instance('page')/mode='ARTIFACT' and string-length(instance('page')/names) gt 2 and .[matches(@name,replace(instance('page')/names,' ','.*'))]) then true() else if (instance('page')/mode='LIST' and instance('page')/list='VOLATILE') then .[@configuration='VOLATILE'] else if (instance('page')/mode='LIST' and instance('page')/list='UPDATES') then .[newer='true'] else false()" /> Index of selected elements from this collection has changed after migration - it is numbered from 1..to N in each mode, instead of real index from its binding <xf:repeat ref="xxforms:bind('bind-artifacts')" id="artifact"> <li> <xf:output ref="if (@name='' or @version='') then 'WYBIERZ ARTEFAKT' else concat(@name,'-',@classifier)" /> </li> </xf:repeat> </ul> |
Administrator
|
Hi Gregorio, Nice find about the xxf:tree. This is good to know, in case someone else hits this same issue, and I'm sorry for all the time it took to find! You're saying that "the index of the selected elements from this collection has changed". What do you mean by "index"? I don't see anything that resembles an index in your snippet? Maybe you can create some minimal code that I can run here to reproduce the problem? Alex On Mon, Jun 22, 2015 at 2:33 PM, gregorio <[hidden email]> wrote: The "edition" case had unsupported appearance - that caused above error. 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 post to this group, send email to [hidden email].
--
Follow Orbeon on Twitter: @orbeon Follow me on Twitter: @avernet |
The sample below. In Orbeon 3.8 when you selected "C" the index index('my_repeat') was 3, and expression xxf:bind('repeat-bind')[index('my_repeat')]/id returned correctly "C". In Orbeon 4.9 the index is 1 and letter A... This is my last migration issue, thanks in advance for your help.
<xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:xf="http://www.w3.org/2002/xforms" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fr="http://orbeon.org/oxf/xml/form-runner" xmlns:xxf="http://orbeon.org/oxf/xml/xforms" xmlns:idc="http://www.inventivedesigners.com/xbl" xmlns:exf="http://www.exforms.org/exf/1-0" xmlns:saxon="http://saxon.sf.net/"> <xhtml:head> <xhtml:meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <xhtml:title>Test</xhtml:title> <xf:model id="m-default"> <xf:instance id="i-default"> <data xmlns=""> <repeat> <id>A</id> </repeat> <repeat> <id>B</id> </repeat> <repeat> <id>C</id> </repeat> <repeat> <id>D</id> </repeat> </data> </xf:instance> <xf:bind id="repeat-bind" ref="repeat" relevant="id='C' or id='D'"/> </xf:model> </xhtml:head> <xhtml:body class="orbeon" style="width: 80%; margin-left: auto; margin-right: auto;"> <xhtml:table style="border: 1px solid black; margin-top: 50px;"> <xhtml:tbody> <xf:repeat id="my_repeat" bind="repeat-bind"> <xhtml:tr> <xhtml:td class="{id}"> <xf:output ref="id"/> </xhtml:td> <xhtml:td> <xf:trigger> <xf:label>Delete</xf:label> <xf:delete ev:event="DOMActivate" nodeset="."/> </xf:trigger> </xhtml:td> </xhtml:tr> </xf:repeat> </xhtml:tbody> </xhtml:table> <div style="font-size: 15pt; line-height: 25px;">Selected item: <xf:output value="index('my_repeat')"/> </div> <div style="font-size: 15pt; line-height: 25px;">All items: <xf:output value="count(repeat)"/> </div> <div style="font-size: 15pt; line-height: 25px;">Selected letter: <xf:output value="xxf:bind('repeat-bind')[index('my_repeat')]/id"/> </div> </xhtml:body> </xhtml:html> |
Administrator
|
Hi Gregorio,
Indeed, index() currently "skips" non-relevant iterations. We looked at the XForms spec and there doesn't seem to any indication that it should skip non-relevant iterations, which I would take it to mean that it shouldn't. And I can see how useful *not* skipping the non-relevant iteration can be if you want to use the value returned by index() in a predicate. I've created an issue for this one. https://github.com/orbeon/orbeon-forms/issues/2301 In your case, if the issue is that you want to access the node at the current repeat iteration from outside the repeat, you can use: xxf:bind('repeat-bind')[xxf:relevant()][index('my_repeat')] Alex
--
Follow Orbeon on Twitter: @orbeon Follow me on Twitter: @avernet |
Free forum by Nabble | Edit this page |