JRex integration on OS X/Intel

Luc Beaudoin <[email protected]> Mon, 30 Apr 2007 15:11:45 -0700
Newsgroups gmane.comp.mozilla.jrex
Message-ID <[email protected]>
Hi,

This message has been cross-posted to
http://www.lists.apple.com/listname
with subject:
"	Re: Options for good Swing web browser?"

The Learning Kit project, http://www.learningkit.sfu.ca , http:// 
www.learningkit.sfu.ca/software.html is trying to compile and run  
JRex on OS X. So far we have been successful on PowerPC (and Windows/ 
Intel for that matter), but we are encountering glitches with OS X/ 
Intel integration.

We're looking for some help on the matter. If you're interested in  
helping, we can discuss over the list and we're even willing to  
contract some of the work (on a limited, academic budget). Please  
email lpb\\\at///sfu.ca for this. If you know someone who might be  
interested, we'd appreciate you passing on this message.

In short, our basic application starts and shows a Swing frame, but  
the application cannot load web pages.

Here is some debugging information that might reveal the problem:

ShowInternal()--> **** mBrowCreated<0> ****
ShowInternal()--> **** Using HWND <0x3d4f50> ****
ShowInternal()--> **** Using x<0> y<0> width<1> height<1> ****
ShowInternal()--> **** WebBrowser do_CreateInstance" Done ****
ShowInternal()--> **** Got myChrome ****


Here are some more details:
==========================

gStudy is a Java-based application that currently includes a Java- 
based web renderer named WebWindow from JavaIO.

gStudy 4.0 requires a widely used open-source browser. JRex, a Java- 
based Gecko wrapper, allows Java applications to leverage the well- 
developed Gecko-based web page rendering engine. gStudy 4.0 will  
include JRex/Gecko as its new web-renderer.

We'd be happy to make progress debugging this on this list (could use  
[email protected])

However, this may require more dedicated involvement of an individual.

-- Breakdown of the Task

The following tasks apply to both Mac OS X and Windows. There is  
currently a single code base for gStudy. Ideally, gStudy should keep  
one code base for both platforms. However, if it requires significant  
effort, it is acceptable to maintain separate code bases for  
different platforms.

-- -- Compilation and Running JRex

One of the steps of integration is to compile JRex and produce the  
necessary libraries and Jar files, so that any Java application that  
wishes to embed a web-rendering engine may rely solely on these  
libraries and jar files.

-- -- Integration of Xpointer Service

The Learning Kit Project needs to integrate an Xpointer service into  
JRex. There are a few technical routes to achieve this. An Xpoiner  
Sservice is developed as a Mozilla plugin. Because gStudy 4.0 will  
embed Gecko, the Learning Kit Project only needs the core  
implementation of Xpointer service, which is written in Javascript.  
gStudy 4.0 will use Spider Monkey, the Javascript engine to execute  
the Javascript of the Xpoiner service.

-- -- Packaging

The Learning Kit Project needs to package the JRex and Mozilla  
libraries in such a way that these libraries can be integrated into  
the installer of gStudy.


-- Status of the project as of April 2007.

-- -- Windows Platform

The Learning Kit Project has successfully compiled JRex and it runs  
well. The Learning Kit Project has integrated Xpointer service into  
JRex.

The core features related to Xpointer Service required by gStudy have  
been developed and tested on Windows XP. The Learning Kit Project has  
investigated the way to package JRex and Mozilla for the gStudy  
installer, and packaging has been found to be straightforward

-- -- MacOSX

The project has successfully compiled and run JRex on PPC; but OS X/ 
Intel integration has been a challenge. I.e., using the same  
configuration file and code base, the gStudy build worked fine on PPC- 
based machines but not on Intel-based machines.

1. PPC-based Mac

The project has successfully compiled JRex for PPC-based Macs. It  
worked fine with a small glitch when the test application quits.

2. Intel-based Mac

The project has compiled JRex for Intel-based Macs. The built  
application starts and shows a Swing frame, but the application  
cannot not load web pages.

Here is some debugging information that might reveal the problem:

ShowInternal()--> **** mBrowCreated<0> ****
ShowInternal()--> **** Using HWND <0x3d4f50> ****
ShowInternal()--> **** Using x<0> y<0> width<1> height<1> ****
ShowInternal()--> **** WebBrowser do_CreateInstance" Done ****
ShowInternal()--> **** Got myChrome ****

-- Goal

Ultimately, we're looking for:

1. A detailed document about how to compile JRex on PPC-based and  
Intel-based Macs.
The supported OS X versions are 10.3.9 and 10.4.x

2. A detailed document about how to integrate with third-party Java- 
based applications.

3. A set of distribution binaries of library files and JAR files.

4. A distribution binary able to pass a provided test suite.

Cheers,

Luc
On behalf of the Learning Kit Project