fr:relational-crud override

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

fr:relational-crud override

afnb
Hello,

I'm triyng Orbeon Froms version 4.5 i need to change "fr:relational-crud" processor for SQL Server support.

I have managed change it in 4.4 in crud.xpl file, but in 4.5 i can't find it.

The error:
+----------------------------------------------------------------------------------------------------------------+
|An Error has Occurred                                                                                           |
|----------------------------------------------------------------------------------------------------------------|
|An expression of non-boolean type specified in a context where a condition is expected, near ','.               |
|----------------------------------------------------------------------------------------------------------------|
|Application Call Stack                                                                                          |
|----------------------------------------------------------------------------------------------------------------|
|oxf:/apps/fr/page-flow.xml                                                  |reading page model data output|  42|
|················································································································|
|element=<service path="/fr/service/(oracle|mysql|db2|sqlserver)/crud/([^/]+/[^/]+/(form/[^/]+|(data|draft)/([^/]+/[^/]|
|model  =persistence/relational/crud.xpl                                                                               |
|----------------------------------------------------------------------------------------------------------------|
|oxf:/apps/fr/persistence/relational/crud.xpl                                |executing processor           |  18|
|················································································································|
|element=<p:processor name="fr:relational-crud"/>                                                                |
|name   ={http://orbeon.org/oxf/xml/form-runner}relational-crud                                                  |
|----------------------------------------------------------------------------------------------------------------|
|----------------------------------------------------------------------------------------------------------------|
|Exception: java.sql.SQLException                                                                                |
|----------------------------------------------------------------------------------------------------------------|

Thank you.
Reply | Threaded
Open this post in threaded view
|

Re: fr:relational-crud override

Alessandro  Vernet
Administrator
Hi Antonio,

In 4.5, we moved the implementation of the CRUD operations to Scala, which allows us to make the code more maintainable. The implementation is mostly in the two files linked below. And don't be afraid by Scala; it is in many way very similar to Java, and of course, if you have any question doing changes to those files, just let us know.

https://github.com/orbeon/orbeon-forms/blob/master/src/main/scala/org/orbeon/oxf/fr/relational/crud/Read.scala
https://github.com/orbeon/orbeon-forms/blob/master/src/main/scala/org/orbeon/oxf/fr/relational/crud/CreateUpdateDelete.scala

Support for SQL Server is really something we'd like to have, but we didn't get a chance yet to get started on it. Last time I had a look, one thing we needed to change where queries of the form WHERE (a, b) IN SELECT (…), which isn't yet supported by SQL Server.

http://connect.microsoft.com/SQLServer/feedback/details/299231/add-support-for-ansi-standard-row-value-constructors

You'll let us know how it goes if you get a chance to work on this.

Alex
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
Reply | Threaded
Open this post in threaded view
|

Re: fr:relational-crud override

afnb
This post was updated on .
I'm working on a Prove Of Concept of Orbeon Forms with SQL Server.

I've modified version 4.4 to fully work with SQL Server (ex: replacing "WHERE (a, b) IN SELECT (…)" with INNER JOIN, etc.), but failed to so with 4.5.

If i change those files i need to rebuild the project, right? Im not confortable with Java development.


Thank you
Reply | Threaded
Open this post in threaded view
|

Re: fr:relational-crud override

Alessandro  Vernet
Administrator
Antonio,

Would you be able to share with us the changes you've done for 4.4? We might be able to put those in 4.5 for you.

Alex
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
Reply | Threaded
Open this post in threaded view
|

Re: fr:relational-crud override

afnb
I've already modified the 4.5 to work with SQL Server and fully translated to portuguese (Portugal).

I can share this modifications with you.

António.
Reply | Threaded
Open this post in threaded view
|

Re: fr:relational-crud override

Erik Bruchez
Administrator
Excellent! If you send any code, can you please send us a signed CLA at info at orbeon dot com:

    http://wiki.orbeon.com/forms/community/cla

Feel free to send a github pull request with changes, or to send patches by email is that's not convenient.

-Erik
Reply | Threaded
Open this post in threaded view
|

Re: fr:relational-crud override

Erik Bruchez
Administrator
The Portuguese resources are in:

  https://github.com/orbeon/orbeon-forms/commit/7c4c4d4680f1bdba9027973b85738725adf2f3f0

Thanks again for the changes!

-Erik