Opened 6 years ago

Closed 6 years ago

#1801 closed enhancement (fixed)

Reconsider how to communicate with OpenOffice.org Integration Java component

Reported by: simon Owned by: simon
Priority: major Milestone:
Component: word integration Version: future
Keywords: Cc: stakats, dstillman

Description

OpenOffice.org Integration has a lot of problems. Rather than continuing to mess around with all of the idiosyncrasies of the current approach, I propose to move the Java component to OpenOffice.org/LibreOffice, thus eliminating IcedTea issues, and to pass integration commands between OpenOffice.org and Firefox via our own IPC system. Not only should this be much faster, since the current system involves many levels of indirection, but it should be easier to maintain as well, and would fix the IcedTea and AppArmor issues that plague us on the forums.

The communication protocol would be JSON. This is trivial in JavaScript, and easy in Java with an external library. We would probably want to prefix every command with a 64 bit integer that would specify the length of the following JSON block.

There are two possibilities for the IPC system itself:

  • TCP sockets. This should be easy. We can either use a fixed port, or use a random port and write the port number somewhere the OOo component can conveniently find it. This would work with Firefox 3.6 as well.
  • Named pipes. Getting this to work on Windows would require some CTypes trickery, and thus require Firefox 4, but it is not altogether impossible. We already have working named pipes for integration on *NIX. This is theoretically the more elegant way of doing things, but it would be messier to code.

This would probably only take a few hundred lines of code, and I estimate that it would be about 6-8 hours of work if everything goes as planned. Given the amount of time I've put into screwing around with various issues with the current glue code, I think it would be worth it. I'm not sure how we want to prioritize this, but it should probably get done sooner rather than later.

Change History (1)

comment:1 Changed 6 years ago by simon

  • Resolution set to fixed
  • Status changed from new to closed

(In [8418]) Next-generation OpenOffice.org plug-in

closes #1767, Better error handling in OOo plug-in
closes #1800, OpenOffice.org plug-in does not work with Chinese code page
closes #1801, Reconsider how to communicate with OpenOffice.org Integration java component

Note: See TracTickets for help on using tickets.