lp:~rvalyi/openobject-server/trunk-java-jython

Created by Raphaël Valyi - http://www.akretion.com and last modified
Get this branch:
bzr branch lp:~rvalyi/openobject-server/trunk-java-jython
Only Raphaël Valyi - http://www.akretion.com can upload to this branch. If you are Raphaël Valyi - http://www.akretion.com please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Recent revisions

1650. By Raphaël Valyi - http://www.akretion.com

- merged with openeobject-server trunk (rev #1797 ; 25/04/2009) except bin/sql_db.py which has been left unchanged because merging it was not automatic.
Still, I didn't has the opportunity to test that new revision running Jython (last commit was tested and OK); will do that later.

1649. By Raphaël Valyi - http://www.akretion.com

- added a patched version of _fontdata.py allowing reportlab to work on Jython. It should be placed in place of your current reportlab/pdfbase/_fontdata.py file where you installed the reportlab library for Jython. I hope to see the reportlab developpers include it in the regular distro waiting for a Jython fix of that bug http://bugs.jython.org/issue527524 . Reportlab guys have been notified here: http://two.pairlist.net/pipermail/reportlab-users/2009-January/007977.html

1648. By Raphaël Valyi - http://www.akretion.com

- added uncommited files (go to hell bzr add!!)
- merged with trunk

1647. By Raphaël Valyi - http://www.akretion.com

- merged with current server-trunk (that's why so many .po updates)
- worked arround the list XML/RPC method used by the clients: since no org.postgresql.ds.PGConnectionPoolDataSource method seems to close all the pool connection, we don nothing instead after the method is invoked. I don't know what are the deep implication of this or if it would be better to really bother close all the pool connections.
- still for the list XML/RPC method, worked around the decode(datname, 'escape') SQL in web_service.py. That was returning byte arrays behaving differently under Jython.
now that fine databases get listed in the clients.
- some more extra fixes to wrapp mx.DateTime.RelativeDateTime properly waiting for a real implementation

1646. By Raphaël Valyi - http://www.akretion.com

- added the 3 xml libs wrappers (lxml, libxml2 and libxslt). There aren't implemented yet, but enable OpenERP server to startup almost unmodified. Wrapping their main usage will be easy I think (using Xalan?) cause they are used for simple things in limited places
- changed the code accordingly: no more need to hack anything but sql_db.py. That's great!!!!
- enabled reportlab loading again evrywhere. Actually Jython has a bug preventing to load reportlab ( http://bugs.jython.org/issue527524 ) because a one class which font list makes it exceeed the Java method max allowed size. Still, after having been advised from Charles Headius Nutter (JRuby Rock star) who ran into similar issues, I was able to produce a simple patch to the reportlab lib. I'll submit it on their mailing list and hope they include it, waiting for the Jython final fix. This is almost a non issue overall and I'm so much happy that reportlab WILL run, I mean OpenERP reports WILL run on Jython
- same thing with pychart and ptz, thos libs are pure Python, so no worry they work on Jython and I enabled them back
- OpenERP on Jython will kickass guys!!!!!!!!!!!!!!!!!!!

1645. By Raphaël Valyi - http://www.akretion.com

round 2: true Java DataSource pooling this time. Now we properly borrow and give back connections to the pool.
as a result, we are able to answer basic XML/RPC calls properly and a simple_profile database!!
yes, you heard that running sock.execute("jython", 1, "admin", 'res.partner', 'read', [1,2,3])
in a console will just get back the correct result from a Jython backed server!

By the way, it looks like reportlab might actually be loaded, but there is an issue with its padfbase/_fontdata which seems to be too large
to get parsed properly. That's a Jython issue, I'll report them (if I trim that file, it loads reportlab properly).

Some module like CRM won't load either yet cause there is no proper pychart wrapper yet.

An other issue is that the web_service#list method supposed to list the database isn't yet running properly.
Indeed, the database name are returned as bytearrays, but for some strange reason, in Jython str(the stuff) won't make it a string,
might be a Jython issue or some encoding issue. That's the main thing preventing to connect from the GTK client I think.

as for mx.Datatime, conversation with Jythonistas, Fabien Pinckaers and a glance at Tryton let me very optimistic about getting
rid of that dependence.

1644. By Raphaël Valyi - http://www.akretion.com

- added missing wrapper and removed code changes cause that wrapper would fit the bill to fake the imports (while it will fail if called later on), but will work if not called so far.

1643. By Raphaël Valyi - http://www.akretion.com

- added forgotten wrappers for Jython non existing library (what shoudl be inside those wrappers would require some work actually)

1642. By Raphaël Valyi - http://www.akretion.com

- further work to have a subset of the OpenERP server running on Jython (disabled more reporting stuff, wrapping more mx.DateTime stuff)
- now load most of the modules when starting (if waked up via some XML/RPC request for instance). Module that import report in their __init__.py won't load
I dont understand why yet. Still commenting out the import report statement in those modules let them load (until some other mysterious error happen). But that's for the next round.

1641. By Raphaël Valyi - http://www.akretion.com

first round to run OpenERP on Jython, gettin getting XML/RPC request, firing up the SQL requests though zxJDBC but not yet answering properly to the client, see blueprint

Branch metadata

Branch format:
Branch format 6
Repository format:
Bazaar pack repository format 1 with rich root (needs bzr 1.0)
This branch contains Public information 
Everyone can see this information.