PostgreSQL sdbc is not compatible with Pgsql version 8.2. The tables are read only despite everything is properly defined. A dump with the same tables works well on version 8.4.
This is by design. When the code for the SDBC connector was re-written by Lionel, it was only designed to allow write access from version postgresql9 and up. The previous version of the postgresql connector extension only allowed read access to pg8.4 anyway. At best, this is a request for enhancement, but I can't see it happening any time soon (unless I'm much mistaken). Setting enhancement and low priority. When Lionel gets back from his hols, he can decide whether, if anything, is to be done about it. Alex
The official compatibility information is PostgreSQL 8.4 or later (LibreOffice 3.5.0 worked only with PostgreSQL 9.0 or later, but 3.5.1 brought that down to 8.4). I don't feel particularly motivated to deal with older PostgreSQL versions, but I'll take patches if they don't make the code too messy. You might try to add unnest function to PostgreSQL 8.3 or 8.2, and this might make it work, untested. See http://wiki.documentfoundation.org/PostgreSQL-SDBC#Backward_compatibility
As Lionel says, there are differences between 8.4 and previous versions, but version 8.4 is not so different, despite some advanced features mainly on the server side. Maybe it's only a matter of enabling write access on version 8.4 and maybe adding a check for array unnesting for preceding version. Obviously it would need some tests, but there are a lot of version 8.4 databases out there and this is so much faster than any other connection that is a real pity not having write access.
Adding self to CC if not already on
i think now we can safely conclude this isn't going to happen. postgresql.org says the oldest supported release is 9.2, so probably everybody on versions < 8.4 has upgraded anyway.