You are currently viewing a snapshot of www.mozilla.org taken on April 21, 2008. Most of this content is highly out of date (some pages haven't been updated since the project began in 1998) and exists for historical purposes only. If there are any pages on this archive site that you think should be added back to www.mozilla.org, please file a bug.



2.0 Alpha 1 Release Notes


READ THIS Before You Build and Install

At this point, I only have a source code release, and it is only known to work on win32. We hope to have other binary builds available before the next release.

Webclient 2.0 Alpha 1 depends on Mozilla 1.6. If you build webclient from source, you must first build Mozilla. For instructions on building Mozilla 1.6 please visit http://www.mozilla.org/build/.

Building the 2.0 Alpha 1 Release

Build Instructions -- Cross Platform

This section explains the steps one has to perform before building 2.0 Alpha 1 on any platform.

  1. Get the mozilla 1.6 source tarball.

  2. Build Mozilla 1.6 WITH DEBUG ENABLED. For instructions on how to do that, go to http://www.mozilla.org/build/. Let's assume you built it into directory $MOZILLA.

  3. Once Mozilla 1.6 is successfully built, you must run it to create a profile, then you must configure the proxy settings, if you are behind a firewall. If mozilla can't see external web pages, neither can webclient.

  4. Install JDK 1.3 from http://java.sun.com/. We have made an effort to not have any Java2 specific usage in the webclient code, but we haven't tested webclient with older JDKs. It's likely that webclient will work with older JDKs, but some small tweaking may have to be done. There is a bug on this. See the Known Bugs section of this document.

  5. Install Jakarta Apache Ant 1.6.1. If you don't know what ant is, you have no hope of building webclient from source. Go learn about ant at http://ant.apache.org/ and come back when you do. Previous versions of ant had a problem with the javah target under JDK 1.4, so you must use 1.6.1 or later.

  6. Install JUnit 3.8.1. If you don't know what junit is, you have no hope of running the webclient unit tests, which one must run as a precondition to checkin. Learn about JUnit from http://www.junit.org/.

  7. Obtain the source. You can use a source tarball, or check it out from CVS.

    1. Unpack the webclient source, from http://www.mozilla.org/projects/blackwood/webclient/src/20040801-webclient_2_0_a1_src.tar.gz into $MOZILLA.

      IMPORTANT: DO NOT USE WINZIP TO UNPACK THE TARBALL. Doing so may cause some files to end up in the wrong place. I'm not sure why this is, but on all platforms use gunzip and tar -xvf to unpack the tarball. For example, on unix:

        cp webclient_src.tar.gz $MOZILLA
        cd $MOZILLA
        gunzip webclient_src.tar.gz
        tar -xvf webclient_src.tar
        

      And on win32:

        copy webclient_src.tar.gz %MOZILLA%
        cd %MOZILLA%
        gunzip webclient_src.tar.gz
        tar -xvf webclient_src.tar
        

        Note that on win32, gunzip and tar come from the cygnus package, which you needed to build mozilla.

    2. Check out the webclient source from CVS. Follow the instructions at http://www.mozilla.org/catalog/development/compiling/cvs-sourcecode.html then checkout the CVS module called Webclient .

      This will give you the following directory hierarchy

      $MOZILLA
        java/
         build.xml
         config/
         dom/
         external/
         util/
         webclient/
      
      

  8. In addition to the environment variables required for building mozilla, make sure the following environment variables are defined:

    JDKHOME, MOZ_JDKHOME, JAVA_HOME,
    all of the above must be set to the absolute path to your JDK installation. For example, C:\jdk1.3

    MOZILLA_FIVE_HOME
    the mozilla bin directory. For example, D:\Projects\mozilla\dist\win32_d.obj\bin

    ANT_HOME
    the ant install directory. For example, D:\Files_2k\apache-ant-1.6.1

    BUILD_WEBCLIENT_ONLY
    1

    MOZ_SRC
    Set to the parent directory of your top level mozilla directory, for example D:\Projects\mozilla\MOZILLA_1_6

    XPCOM_DEBUG_BREAK
    warn

    NSPR_LOG_MODULES
    webclient:4,webclientstub:4

    NSPR_LOG_FILE
    logfile.txt

  9. Make it so the native makefiles are generated.

    1. prepend the contents of $MOZILLA/java/makefiles to the add_makefiles entry in the file $MOZILLA/allmakefiles.sh.

    2. cd to $MOZILLA and re-run ./configure. When this is done, you should have the following makefiles generated. If you don't, please post to the newsgroup.

      $MOZILLA
        java/
          dom/jni/Makefile
          dom/src/Makefile
          webclient/src_moz/gtk/Makefile
          webclient/src_moz/Makefile
          webclient/src_ie/Makefile
          webclient/src_share/Makefile
      

  10. create a $MOZILLA/java/build.properties file that contains the following contents:

    # if this were unix, you'd have build.unix.classes=true
    build.win32.classes=true
    # this is where the .class files will end up
    build.home=D:\\Projects\\mozilla\\MOZILLA_1_4\\mozilla\\mozilla/dist/classes
    compile.debug=true
    junit.jar=D:\\Files_2k\\junit3.8.1\\junit.jar
    #native.waitForDebugger=true
    #debug.jvm.args=-Xdebug -Xrunjdwp:transport=dt_shmem,address=jdbconn,server=y,suspend=y
    

Build Instructions -- Win32

  1. set MOZ_DEBUG=1 in your environment

  2. set PATH so that it contains %JDKHOME%\bin, %JDKHOME%\jre\bin, %MOZ_TOOLS\bin, %MOZILLA_FIVE_HOME% and %MOZILLA_FIVE_HOME%/components.

  3. Follow the instructions in Build Instructions -- Cross Platform

  4. cd $MOZILLA\java

  5. run the command ant

    This will build the mozilla util classes, the javaDOM, and webclient.

  6. Make sure mozilla is not running on your machine. cd $MOZILLA\java\webclient

  7. run ant test . This will run the automated JUnit tests. If these all run successfully, you're in good shape.

  8. Still without mozilla running, run ant run.test.browser this will run a simple test browser, taken from the JDIC project.


Uninstalling the 2.0 Alpha 1 Build

Uninstalling if you're using the binary install

  1. Stop any running mozilla or webclient instances

  2. cd $MOZILLA_FIVE_HOME

  3. rm -rf javadev

  4. rm -rf *webclient* *javadom* *blackconnect* components/*javadom* components/*bcorb* components/*bcjava* components/*bcTest* components/*bcxpcom*

Uninstalling if you've built from Source

Cross Platform

Follow the instructions for removing mozilla in the mozilla 1.6 release notes.

  1. cd $MOZILLA

  2. rm -rf ./java

Unix

  1. Do the cross platform uninstall.

  2. cd $MOZILLA/dist/bin

  3. rm libwebclient*.so libjavadomjni.so

Windows

  1. Do the cross platform uninstall.

  2. cd $MOZILLA\dist\WIN32_D.OBJ\bin

  3. del webclient.dll javadomjni.dll


Available and Unavailable Features

This release has very limited features. The following methods are known to work.


BrowserControlFactory.setAppData()

BrowserControlFactory.newBrowserControl()

BrowserControlFactory.deleteBrowserControl()

BrowserControlFactory.appTerminate()

Bookmarks.getBookmarks()

BrowserControl.queryInterface() for the following interfaces

  BrowserControl.BOOKMARKS_NAME
  BrowserControl.HISTORY_NAME
  BrowserControl.BROWSER_CONTROL_CANVAS_NAME
  BrowserControl.EVENT_REGISTRATION_NAME
  BrowserControl.NAVIGATION_NAME
  BrowserControl.CURRENT_PAGE_NAME
  BrowserControl.PREFERENCES_NAME
  BrowserControl.PROFILE_MANAGER_NAME

EventRegistration.addDocumentLoadListener()
EventRegistration.removeDocumentLoadListener()

History.canBack()
History.canForward()
History.back()
History.forward()

Navigation.loadURL()
Navigation.loadFromStream()
Navigation.refresh()
Navigation.stop()
Navigation.post()

Preferences.getPrefs()
Preferences.setPref()
Preferences.registerPrefChangedCallback()
Preferences.unregisterPrefChangedCallback()

ProfileManager.createNewProfile()
ProfileManager.getProfileCount()
ProfileManager.profileExists()
ProfileManager.setCurrentProfile()
ProfileManager.getProfileList()
ProfileManager.renameProfile()
ProfileManager.deleteProfile()

CurrentPage.getSelection()
CurrentPage.selectAll()


Known Issues

Browser and General Issues

  • Webclient hasn't yet been stress tested, so there are probably lots of issues that will come up with a little use.

Printing

Printing is not yet implemented.

Plugins

You can run plugins inside webclient, but on win32, the Java plugin will not work. You must remove the java plugin. Please see the section on installing the win32 binary in this file.

Bookmarks and History

Both the Bookmarks and History interfaces are incompletely implemented.

Profiles

If webclient is acting funny, it may be due to conflicting mozilla registry file. Follow the steps in the mozilla 1.6 release notes to remove the registry, then re-run mozilla 1.6 to generate a new registry.

Known Bugs