%_load manual.var%
Java Developer Notes
Java Developer Notes
The ConferenceRoom Java Client was originally developed
to the Java 1.0.2 API specification but recently
some changes have become necessary that required
Java 1.1 API. Most of the client is still on 1.0.2 code
however, and will be converted eventually to take full
advantage of Java 1.1 features. A small footprint mini
chat client was embedded into the code when the switch to
1.1 began, and this client still is all 1.0.2 for
backwards compatibility with older browsers (Internet
Explorer 3.x and Netscape 2/3). All this really means is
you must use a 1.1 level Java compiler to compile the
source code, but don't worry if you see a bunch of
deprecation warnings about the 1.0.2 code. That's
perfectly normal. Acceptable compilers include the JDK 1.1+ from Sun,
Inprise/Borland
JBuilder, Microsoft
Visual J++ and Microsoft
SDK for Java. Other compilers may work, but all
of these have been specifically used in the development
of the ConferenceRoom Java Client.Steps
used to compile and deploy the Java client
- Compile the source code (deprecation warnings can
be safely ignored).
- Optionally use an obfuscator to mangle the code
to deter prying eyes who might disassemble your
code, and also will help reduce code size. Good
choices are Dash-O
Pro or 4thPass
SourceGuard. Make sure your settings do not
rename public methods or the loadable module
classes such as NickServPanel, MemoServPanel,
OpPanel, etc.
- The Java client ships with two useful archives in
the java directory of a ConferenceRoom
installation. These archives are named cr.zip and
smallcr.zip, which contain all the classes
necessary to load the full client and the mini
client respectively. These files MUST
be updated with your
compiled classes or your users will encounter
problems with your changes. If you do
not make these changes, your users will be
loading a combination of your newly compiled
classes and older classes. It is only necessary
to add the classes that are already in the cr.zip
and/or smallcr.zip archives. It is not necessary
to add loadable module classes, and is not
recommended as it will add to the size of the
initial download for your users.
- Unzip the classes into the java directory,
overwriting the class files that are already
there.
Loadable Module Classes
A few classes are provided as loadable modules and
should not be renamed by an obfuscator or provided in the
cr.zip archive as they are not necessary for the normal
Java client to function. They are not compatible with the
mini client. The classes as shipped from WebMaster are:
- AvatarPanel
- BuddyList
- ChanServPanel
- EventWizard
- ImagePanel
- NickServPanel
- MemoServPanel
- OpPanel
- SessionPanel
- TickerTopics
- WhoCard
If you experience any problems or need assistance when
compiling and deploying your code, send email to support@webmaster.com