Mark Wielaard wrote:
Hi,

This patch adds javax.script javascript support through rhino. CCed
build-dev since it is mainly build stuff and there doesn't seem to be
another list for scripting stuff (not that I am advocating yet another
list!)

The idea is pretty simple, if configure can detect rhino being installed
on the system already (either the rhino.jar from fedora or the js.jar
from debian) it uses that instead of the closed and unreleased sun
internal classes. The only wrinkle is that the javascript support is
written to expect the implementation on the bootclasspath, I would have
liked it to be possible to just add it to the extension dir. This is
solved by patching the hardcoded hotspot boostrap path and creating the
correct symlink in the jre lib dir.

Maybe the modules project and/or the extension/plugin ideas from icedtea
can help a bit in the future to rewrite these kind of things a little
cleaner: http://icedtea.classpath.org/wiki/PackagingExtensions

2008-06-22  Mark Wielaard  <[EMAIL PROTECTED]>

        * patches/icedtea-rhino.patch: New patch.
        * Makefile.am: Add RHINO_JAR to environment variable lists.
        (ICEDTEA_PATHCES): Add patches/icedtea-rhino.patch.
        * Makefile.in: Regenerated.
        * acinclude.m4 (FIND_RHINO_JAR): New.
        * configure.ac: Use FIND_RHINO_JAR.
        * configure: Regenerated.

Committed to icedtea6.

With this patch the jrunscript works perfectly, and the javax.script and
sun.tools.jscript jtreg tests all pass except for one. The
sun/tools/jrunscript/jrunscriptTest.sh test insists that 2 + 5 = 7.0,
while our current implementation says it is 7 (without the .0). The
tests references two bugs (6265810,6705893) which might help analyze
this, unfortunately they are closed to the public (is there anybody who
could see what these bugs were about?).

Cheers,

Mark

Hi Mark,

In my JavaOne talk Sandeep and I had worked up a hack with the same purpose. He's been busy enough that he hadn't had a chance to turn the hack into an official proposal like this..
Here's a couple things I see reading through your patch..

This patch puts a hard dependency on having rhino in your environment. Maybe this is okay for IcedTea but in OpenJDK's makefiles I'd rather it be a loose dependency (if RHINO_JAR is in the environment, that should trigger makefile rules to include RHINO support).

A lot of the changes are in com/sun/script/javascript files to change imports from sun.org.mozilla.xyzzy to org.mozilla.xyzzy ... we've been following a practice for a long time of munging the package names of imported packages, and this came from issues which arose when we imported Xerces XML code and people started using some of the Xerces API's ...

- David


Reply via email to