Hi,
I've set up a trial persistence layer for Orbeon Forms data using eXist 4.3.0 and Orbeon CE 2017.2 within Tomcat 9.0.10 . Orbeon still does persistence for the form. When I open the Form Runner Summary Page for the form, between the record selector column and the "Created" column there is an additional column with no heading that has a "Read-Only" icon against each entry. Despite this I can select records, edit them, save them and delete them. This extra "Read-Only" column doesn't appear in the same application where Orbeon provides persistence for both data and form. The HTTP trace shows no difference in the XML data being served by Orbeon data persistence and my own eXist/XQuery/RestXQ persistence layer. Am I doing something wrong or is there some additional information I should be providing to Orbeon in the Search XML that I serve. Any pointers would be appreciated. Finian -- 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 post to this group, send email to [hidden email]. |
Administrator
|
Hi Finian,
So you're saying that you've setup an external eXist, inline with what is described in the section linked be bellow, but despite that, Orbeon Forms still writes data to the embedded eXist. Is that accurate? If so, could you attach you `properties-local.xml`? https://doc.orbeon.com/configuration/advanced/exist-db#configuring-form-runner 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 post to this group, send email to [hidden email].
--
Follow Orbeon on Twitter: @orbeon Follow me on Twitter: @avernet |
In reply to this post by Finian O'Boyle
Hi Alex,
I'm sorry - I've explained this badly: I have done two things: (1) Initially I used my own copy of eXist as the persistence layer for ALL applications - the Orbeon samples and a trial application that I wrote. This works fine. (2) I then amended properties-local.xml so that I provided a DATA persistence layer for my own application. This also works fine for all CRUD. The anomaly is that within the Form Runner summary for my own application, each record has "Read-Only" on the left-hand side despite the fact that I can amend the data. My question is - is there somethng I should be providing to Orbeon that causes the "Read-Only" marker to disappear? Attached is the properties-local.xml I've used. Thank you, Finian properties-local.xml <http://discuss.orbeon.com/file/t375652/properties-local.xml> -- 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 post to this group, send email to [hidden email]. |
Administrator
|
Hi Finian,
What you describe sounds like a bug. Could you share with us a screenshot of the summary page, to make sure I understand what you're talking about? Can you reproduce this problem with the built-in eXist? I'm asking as I'd like to see how we can get to reproduce this, as without this we most likely won't be able to solve the problem. 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 post to this group, send email to [hidden email].
--
Follow Orbeon on Twitter: @orbeon Follow me on Twitter: @avernet |
Hi Alex,
I have simplified properties-local.xml by providing persistence for both data and forms within my copy of eXist, but the "Read-Only" marker still appears. It also now appears on the Form Runner screen. I've attached screen shots of both. As to the eXist embedded in Orbeon, with identical data and form, the issue doesn't appear there. At least I know that this isn't expected behaviour, and I can rule out a rookie error in my persistence implementation. It may be something more elusive and I'll update here if anything emerges. Finian properties-local.xml <http://discuss.orbeon.com/file/t375652/properties-local.xml> summary-screen.png <http://discuss.orbeon.com/file/t375652/summary-screen.png> form-builder.png <http://discuss.orbeon.com/file/t375652/form-builder.png> -- 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 post to this group, send email to [hidden email]. |
In reply to this post by Alessandro Vernet
Hi Alex,
Well with a little more digging around, I think I've fixed it: In the Orbeon code at https://github.com/orbeon/orbeon-forms/blob/master/form-runner/jvm/src/main/resources/apps/fr/summary/view.xhtml at line 615, there is a test of the value of @operations on the <document> element. Seeing this I changed the response within my persistence layer for search requests associated with form summary and form builder selection from: <document created="2018-08-01T12:24:08.626+01:00" last-modified="2018-08-01T12:24:08.626+01:00" name="75fc0590822936e9808554ccd641fabe77433d1d"> to: <document created="2018-08-01T12:24:08.626+01:00" last-modified="2018-08-01T12:24:08.626+01:00" name="75fc0590822936e9808554ccd641fabe77433d1d" operations="*"> And for both form summary and form builder this removed the "Read-Only" marker. So I guess this isn't a bug but a requirement for an external persistence layer to declare allowed operations on documents. Finian form-builder-fixed.png <http://discuss.orbeon.com/file/t375652/form-builder-fixed.png> summary-screen-fixed.png <http://discuss.orbeon.com/file/t375652/summary-screen-fixed.png> -- 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 post to this group, send email to [hidden email]. |
Administrator
|
Hi Finian,
I am glad you solved the problem. So I imagine that you wrote your own implementation of the persistence API for eXist; is that correct? If so, is there any reason you didn't use the built-in implementation? 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 post to this group, send email to [hidden email].
--
Follow Orbeon on Twitter: @orbeon Follow me on Twitter: @avernet |
Hi Alex,
Sorry for not replying sooner The reason for building a persistence layer within a separate copy of eXist is that there are already a number of applications with their own, sometimes complex, data structures running there, currently using betterForm and RestXQ. I need to move these applications away from betterForm, for which support is being downgraded from eXist 5.0.0. I had used Orbeon before, up until version 3.7 I think but not with Form Builder/Form Runner, so I am testing a two-pronged approach: (1) For applications where I have existing XForms, I am trialling a separate deployment of Orbeon alongside eXist within Tomcat using org.orbeon.oxf.servlet.OrbeonXFormsFilter. So far, this has worked well. This would provide a "legacy" base albeit supported by the latest versions of eXist and Orbeon. (2) For new developments, and possibly some conversion, I am testing Form Builder/Form Runner. For this my persistence layer manages communication with Orbeon, but also provides a backend which uses XQuery module reflection to access the existing data structures. This isn't as well-developed as the first option, but it's promising. I can certainly appreciate how quickly one can develop useful tools with Form Builder and I'm enjoying using it. However my main issue at the moment is establishing a stable environment for legacy applications. Finian -- 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 post to this group, send email to [hidden email]. |
Administrator
|
Hi Finian, I understand your approach better, and indeed, if it is better for you to store data following an existing data structure, it does makes sense to write your own implementation of the persistence API. And thank you for taking the time to share your approach with us and the community. Alex On Sat, Aug 11, 2018 at 12:35 AM Finian O'Boyle <[hidden email]> wrote: Hi Alex, 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 |
Free forum by Nabble | Edit this page |