PL/Java brings functions, triggers, and types in Java. 1.5.1, now in beta, adds support for PostgreSQL 9.6 and 10 (beta), with a small number of improvements and fixes.
Project site: http://tada.github.io/pljava/
Release notes: http://tada.github.io/pljava/releasenotes.html
One previously-announced security issue is addressed in PL/Java 1.5.1, as described in the release notes.
This release introduces support for parallel-safety declarations on functions in PostgreSQL 9.6. Simple cases work as expected, but PL/Java's code has not been thoroughly audited to be sure its internal behavior cannot violate constraints on parallel-restricted or parallel-safe functions. See the release notes and new user-guide page on parallel query. This could be a fruitful area for beta testing.
In PostgreSQL 10, trigger transition tables are supported for AFTER triggers, as described in the release notes.
Notable changes have also been made for the benefit of maintainers of prebuilt PL/Java packages for software distributions. They allow the build to be tailored appropriately with options on the mvn command line and no need to patch the source. One of these allows a working default for pljava.libjvm_location to be built in, when packaging for a distribution that has a known, conventional location for Java. An entire section for package maintainers has been added to the build docs.
Please see the release notes for a more complete list of changes.
1.5.1-BETA1 is available from GitHub as a source release, which builds quickly using Maven:
Release page: https://github.com/tada/pljava/releases/tag/V1_5_1b1
This wiki page will add links to prebuilt packages that become available: