Learning Center
Plans & pricing Sign in
Sign Out
Your Federal Quarterly Tax Payments are due April 15th Get Help Now >>




                                        WAKE UP
                                   to Server-Side
                                                            Cheryl Walton

                                        ot long ago, you may have associated the Java pro-
                              N         gramming language almost exclusively with applets
                                       and dynamic web pages. You may have also thought
                              Java Virtual Machines (JVMs) were included only with web
                              browsers, such as Netscape Navigator. In other words, you prob-
                              ably thought Java was used primarily to write programs that
                              jazz up web pages and run on web browsers.
                                  Times have changed, however, and Java isn’t just for browsers     allows programmers to be more productive than they would be
                              anymore. Java can do a lot more than make a snappy web page.          if they were using other programming languages. “It’s a great lan-
                              In the past few years, increasingly sophisticated JVMs have been      guage,” Holbrook states, adding that programmers who “articulate
                              included with server operating systems, such as NetWare 5. These      their solutions” in Java get their products to market sooner than
                              server-side JVMs have spawned a growing number of Java pro-           they otherwise would. In addition, Java-based products have fewer
                              grams that run on servers rather than on browsers.                    bugs than products written in other languages.
                                  With these Java programs, you can add interest to your com-           What makes Java easy to use? Java classes, for one thing.
                              pany’s web site and extend the usefulness of resources that run on
                              the server. For example, Java servlets, like applets, can activate    Java in the Class, Java in the Library
                              otherwise static web pages. (A servlet is a Java program that exe-        Java classes encompass the categories to which specific types
                              cutes on an HTTP web server on which a servlet-enabled JVM            of objects (or variables) belong and the methods (or procedures)
                              is running.) Servlets can also access information from other pro-     that you can perform on those objects. In other words, an object
                              grams that are running on the server and then dynamically create      is a particular instance (or constituent) of the class to which that
                              web pages that contain this information.                              object belongs.
                                  Other server-side Java applications can also make servers more        For example, a programmer may define a Java class called
                              useful. For example, you can use server-side Java applications to     Branches, which includes objects that consist of corporate branch
                              host Internet or intranet chat rooms in which your company’s          offices. Furthermore, this programmer may define two methods
                              employees, customers, or business partners can conduct online         that operate on objects of the Branches class: List and int.
                              meetings in real time. You can also use these server-side Java ap-        The List method allows the programmer to write code that
                              plications to access databases and to write reports based upon the    lists all of the objects that he or she has instantiated (or created)
                              data accessed. (For more information about some interesting           in a particular class. In this case, the list of objects that belong to
                              server-side Java applications, see “A Java Sampler” on p. 18.)        the Branches class might include HoustonBranch, NYBranch,
                                  Before you begin to explore the available server-side Java ap-    and LondonBranch.
                              plications, you may find it helpful to know how these applica-            The int method allows the programmer to write code that adds
                              tions work. You should also know that although Java is largely a      the total number of objects he or she instantiates for a particular
                              platform-independent programming language, most installation          class. For example, the sum of the Branches class objects would
                              programs for Java applications are not platform independent.          equal the number three. (For more information about Java objects
                              Because many installation programs are programmed to install          and classes, complete the tutorial at
                              the Java application in a Windows NT or 95 directory, you may         docs/books/tutorial/java/javaOO.)
                              need to learn a few techniques for installing and running Java            Java classes make programming easier because programmers
Illustration: Murray Kimber

                              applications on the NetWare 5 JVM.                                    can use previously created classes to write new programs. For ex-
                                                                                                    ample, if a programmer wants to write a program that will, among
                              NOW SERVING JAVA                                                      other things, allow users within an organization to request a list of
                                 One of Java’s inherent benefits is its ease of use. According to   the organization’s branch offices, the programmer can use the
                              Steve Holbrook, a Java product specialist for Novell, Java also       hypothetical Branches class described above.

                              6   NetWare Connection   June 1999
     FEATURE Ser ver-S i d e Ja v a

                                                                                                tion resides. For example, suppose the
    Classes and Java Beans                          NWBrowser         nwBrowser = null          Xyz Java program was stored in the
                                                    NWEntry           parentEntry = null        SYS:\JAVA\Xyz directory. The classes
        A standard set of classes is included                                                   necessary to run this program may be
    with the NetWare 5 Java Virtual Machine         //more omitted lines                        contained in the file, which re-
    (JVM). (These classes are stored in the                                                     sides in the Xyz directory or in one of its
    SYS:\JAVA\LIB\ file on the           setSize (THE_WIDTH, THE_HEIGHT);            subdirectories.
    NetWare 5 server.) For example, the             setTitle (“VolAdmin”)
    Frame class, as shown below, defines a          setBackground (Color.lightGray);            BEANS, MACHINES, AND
    frame in which Java objects (text strings,                                                  OTHER THINGS
    for example) can be displayed.                  //more omitted lines                           Java classes are key constituents of the
                                                    {                                           Java Application Programming Interface
       public class Frame {                                                                     (API), which, in turn, is a key constitu-
                                                                                                ent of a particular Java implementation,
           int THE_WIDTH ( )                         The VolAdmin class defines the Vol-        such as the NetWare 5 Java implementa-
           int THE_HEIGHT ( )                    Admin Java bean and extends the Frame          tion. The Java API uses class files to en-
                                                 class. In the Java programming lan-            able the Java implementation to access
       }                                         guage, extending a class means that the        operating system level functions, such as
                                                 newly defined class, called a subclass,        threading and read-write functions. For
        Because the Frame class is a standard    inherits all of the objects and methods        example, Java classes which are located
    class, a programmer would not ordinarily     contained in the originally defined class,     in the SYS:\JAVA\LIB\ file
    define this class. Rather, the programmer    called a superclass.                           enable Java programs to call NetWare 5
    would import the Frame class. For exam-          For example, the VolAdmin subclass in-     operating system functions, such as
    ple, this class has been imported into the   herits THE_WIDTH and THE_HEIGHT ob-            multithreading or writing lines of text
    following Java bean:                         jects from its superclass, the Frame class.    to a screen.
                                                 (A Java subclass also contains objects and        The NetWare 5 Java implementation
       import java.awt.Frame;                    methods that are not inherited from its        also includes the following constituents:
       import java.awt.ActionListener            superclass.) Although the VolAdmin bean
       import java.awt.ButtonListener            contains only one explicit class statement,    • Novell JVM for NetWare
                                                 this Java bean implements (or uses) the fol-   • Symantec Just-in-Time (JIT) compiler
       public class VolAdmin extends Frame       lowing previously defined classes: Action-     • Java beans
          implements ActionListener,             Listener, NwBrowserChangeListener, and         • Java Database Connectivity (JDBC)
          NwBrowserChangeListener,               ButtonListener. In addition, the VolAdmin        API
          ButtonListener                         bean instantiates other Java beans (such       • Java Naming and Directory Interface
       {                                         as NWBrowser and NWEntry) as objects.            (JNDI) API
                                                     To view the unabridged code for VolAd-     • Java servlet API
       //                                        min and other Java beans, go to http://
       //omitted lines                        Novell JVM for NetWare
       //                                        bns_sample, and click the segment of code         The Novell JVM for NetWare reads
                                                 you want to see. b                             the compiled code contained in Java
                                                                                                class files, including the class files in the
                                                                                       file. This compiled code is called
   The more classes Java programmers             classes the programmer uses in any given       bytecode or JVM instruction set code. The
create, the more previously created              program, the fewer bugs that program is        Novell JVM for NetWare interprets the
classes are available to other program-          likely to have.                                instructions contained in the bytecode and
mers. Consequently, it takes less time               Where can programmers find these           then executes those instructions.
for programmers to write new programs,           previously created Java classes (which they
making Java programmers more efficient           can then reuse in their own programs)?         Symantec JIT Compiler
than other types of programmers. (For an         Several sources are available. For example,        To improve the performance of Java
example of Java classes, see “Classes and        most JVMs, including the NetWare 5             programs, the Symantec JIT compiler
Java Beans.”)                                    JVM, ship with the file, which     translates the bytecode into the par-
   Because Java classes are reusable, they       includes Java classes created by Sun Mi-       ticular machine code that is meaningful
also tend to yield programs that have            crosystems. On a NetWare 5 server, the         to your computer’s CPU. Because the
fewer bugs than programs written in     file is located in the SYS:\       Symantec JIT compiler performs this
other languages. When a programmer               JAVA\LIB directory.                            translation before a Java program runs,
uses previously created classes in a pro-            Java programs themselves usually in-       the program can run at top speed once
gram, the code that comprises those              clude Java classes. These classes are typi-    it begins to execute.
classes has already been debugged. Ob-           cally contained in files that have a .zip or        To enable the NetWare 5 JVM to use
viously, the more previously created             .jar extension and are usually located in      the Symantec JIT compiler, you must
(and, therefore, previously debugged)            the directory in which the Java applica-       first load the JVM on the NetWare 5

7    NetWare Connection   June 1999
 Chat With Java on NetWare 5                                                    tory and the files contained therein to the public document di-
                                                                                rectory on Netscape FastTrack Server (NOVONYX\SUITESPOT\
     VolanoChat from Volano, L.L.C. is a Java application that en-              DOCS\vcclient).
 ables you to set up chat rooms through which users can communi-
 cate in real time. For example, you can create a chat room that            CREATE A NETWARE COMMAND FILE (NCF)
 serves as an online help desk through which customers have real-           1. Create a text document that contains the following commands:
 time access to your company’s customer service personnel.
     Before you run VolanoChat, you must first install Netscape Fast-           envset java_compiler=symcjit
 Track Server on the NetWare 5 server. (Netscape FastTrack Server               envset CWD=SYS:\JAVA\vchat2.1.2
 is included on the NetWare 5 installation CD-ROM. For informa-                 envset classpath=$CLASSPATH;SYS:\JAVA\vchat2.1.2
 tion about other system requirements, see the System Require-                  java COM.volano.Main
 ments section of the VolanoChat Administrator Guide at http://www. You must then complete              2. Save this document as a text (ASCII) file with the .NCF exten-
 the following steps to install VolanoChat on the NetWare 5 server             sion. For example, you could call the document Volano.NCF
 and then to run VolanoChat on that server.                                 3. Move this NCF to the NetWare 5 SYS:\SYSTEMS directory.

 1. From your workstation, download the version of VolanoChat                  To run VolanoChat on the NetWare 5 server, reboot the server,
    that Volano recommends for installation on Windows NT, 98,              and type the name of the NCF at the server console. After Volano-
    and 95. (To download a trial version of VolanoChat 2.1.1, go            Chat is running on the NetWare 5 server, complete the following
    to, and click on Free Server Trial.)              steps to initiate a VolanoChat chat session:
 2. Create a VolanoChat directory in the SYS:\JAVA directory on
    the NetWare 5 server. For example, you may create the                   1. Make sure Netscape FastTrack Server is running on the NetWare
    vchat2.1.2 directory.                                                      5 server on which VolanoChat is running. To start Netscape Fast-
 3. Double-click the VolanoChat .exe file you downloaded on your               Track Server, enter the following command at the server console:
    workstation’s hard drive.
 4. Click OK to install the application.                                        nsweb
 5. When the installation program prompts you to select a direc-
    tory in which to install VolanoChat, click Browse, and then             2. Launch the browser on your workstation, and enter the following
    select the directory that you created on the NetWare 5 server              URL: (Replace
    (SYS:\JAVA\vchat2.1.2, for example).                              with the IP address of the NetWare 5 server on which
 6. Click Install.                                                             VolanoChat is running.)
 7. After the installation is completed, locate the vcclient directory in   3. Click the Chat button located in the middle of the VolanoChat
    the VolanoChat directory you created. Move this vcclient direc-            web page. (See Figure 2 on p. 14.)    b

server by typing LOAD JAVA at the                  that has a .jar extension. (To learn more         JNDI API
server console. You then type the fol-             about the enterprise Java beans Novell               The JNDI API enables Java programs
lowing command at the server console:              offers in the Novell Developer Kit,               to access information contained in various
                                                   visit            naming systems. Naming systems operate
  envset java_compiler=symcjit                     bns.htm.)                                         on the notion that objects existing within
                                                                                                     these systems are bound to contexts that
Java Beans                                         JDBC API                                          also exist within those systems. For ex-
    Java beans are program components                  The JDBC and JNDI APIs require                ample, in Novell Directory Services
that consist of one or more Java classes           classes that are stored in .zip and .jar files.   (NDS) a particular User object is bound
(which in turn encompass one or more               On a NetWare 5 server, these .zip and .jar        to the NDS tree and Organizational Unit
Java objects) and Java code called mes-            files are part of Novell’s Java Class Librar-     (OU) in which that User object exists.
sages. (See “Classes and Java Beans” on            ies (NJCL), which are located in the fol-            The JNDI API provides access to nam-
p. 8.) Java messages are instructions—             lowing directories on the NetWare 5 ser-          ing systems such as the following:
such as get and set—that allow objects             ver: SYS:\JAVA\LIB and SYS:\JAVA\
from one class to interact with objects            CLASSES.                                          • Naming systems used in NDS, X.500-
from another class.                                    The classes for the NetWare 5 JDBC              compliant directories, and Lightweight
    Java beans make Java programmers               API have Structured Query Language                  Directory Application Protocol (LDAP)
even more productive by allowing them              (SQL) statements and commands as ob-                compliant directories
to assemble these ready-made compo-                jects. These statements and commands              • Operating system file systems
nents (along with non-bean Java code)              enable programmers to write Java pro-             • Domain Naming System (DNS)
to create a variety of applications. The           grams that can access relational data-
program code that comprises a Java bean            bases, which are located on the NetWare              JNDI API classes define
is typically located in a compressed file          5 server.                                         provider-specific objects and

                                                                                                         June 1999   NetWare Connection   8
    FEATURE Ser ver-S i d e Ja v a

                                                                                               process called bytecode verification. Byte-
                                                                                               code verification is a series of tests that are
                                                                                               implemented through Java classes. These
                                                                                               tests ensure that Java code received from
                                                                                               outside sources adheres to built-in Java
                                                                                               security rules. (For more information about
                                                                                               built-in Java security features, see http://

                                                                                               HAVE SOME JAVA WITH NETWARE 5
                                                                                                   If you are not interested in writing a
                                                                                               Java application, you may think you do
                                                                                               not need to understand Java classes and
                                                                                               the objects they comprise. Even if you are
                                                                                               not interested in writing a Java applica-
                                                                                               tion, however, understanding Java classes
                                                                                               is important if you want to run many of
                                                                                               the commercially available Java applica-
Figure 1. You can add CLASSPATH variables to the java.cfg file.                                tions on your company’s NetWare 5 server.

the methods by which these objects can             The servlet, in turn, uses this informa-    How to Serve a Typical Java Application
be accessed. These provider-specific           tion to determine what kind of informa-             Although programmers can create Java
classes include the NetWare file system        tion the user is requesting—in this case,       applications without regard to the platform
and NDS. Novell’s provider-specific            the user’s beneficiary. The servlet then uses   upon which these applications can run,
classes for the JNDI API are located           the JNDI API to access NDS to verify that       network administrators who install Java
in the njcl.jar file, which resides in         this user has the necessary rights to receive   applications must take into account the
the SYS:\JAVA\LIB directory on the             the information requested.                      platform on which the application will
NetWare 5 server.                                  If the user has the necessary rights, the   run. For example, the platform upon
   The JNDI API also includes classes          servlet uses the JDBC API to access the         which you run a Java application deter-
that define generic (or abstract) naming       human resources database in which bene-         mines the storage and access methods
system objects and the methods by which        ficiary information is stored. The servlet      used for that application’s files, including
these objects can be accessed. These           then creates an HTML web page to dis-           executable files and the class files the ap-
classes define the framework for provider-     play the retrieved information and delivers     plication and the JVM call.
specific classes and are located in the        this web page to the user’s browser.                For example, an installation program
jndi.jar file that resides in the SYS:\            The classes that allow you to run serv-     that was written for Windows may try to
JAVA\LIB directory on the NetWare 5            lets on a JVM have the .cla (short for          install the Java application in a directory
server. (For more information about how        class) file extension. (On the NetWare 5        such as C:\Windows\Java. Obviously,
JNDI provides Java applications with ac-       server, these .cla files are located in the     this directory path does not exist on a
cess to naming-system information, see         SYS:\JAVA\JAVAX directory.) Because             NetWare 5 server. If the Java applica-
the white paper located at http://www.         servlets run on the NetWare 5 server and        tion’s installation program is not written        can access that server’s resources, such as     specifically for NetWare, you must create
                                               NDS, the Java servlet API contains built-       a directory for the application on the
Java Servlet API                               in security features.                           NetWare 5 server. You must then either
   Programmers can use Java beans, the             For example, the Java servlet API spe-      install or copy the application files into
JDBC API, and the JNDI API in both             cifies that Java classes that are imported      this directory.
servlets and non-servlet server-side Java      from outside the server upon which the              After the Java application files reside
programs. Servlets can access information      servlet resides (such as Java classes that      in a directory that is meaningful to the
from various other applications (via the       might be sent within a user’s request for       NetWare 5 server, you must let the Net-
JDBC and JNDI APIs, for example), in-          servlet-provided information) must be           Ware 5 JVM know where to find the class
cluding other Java applications.               stored separately from the Java class files     files it needs to run the application. As a
   For example, a programmer may write a       that reside locally. Because imported Java      general rule, you can provide the NetWare
servlet that allows a user to access person-   classes are stored in their own separate lo-    5 JVM with the information it needs in
nel information, such as the beneficiary of    cations (called name spaces), an imported       one of three ways:
a user’s company-provided life insurance.      Java class cannot impersonate a local Java
To request this information, this user ac-     class to access confidential information        • You can use Java envset commands
cesses and completes an HTML form via          stored on the NetWare 5 server.                   each time you want to run the Java
his or her web browser. A Java applet em-          In fact, before any imported Java code        application.
bedded in this form then delivers the user’s   (including Java classes) can be processed,      • You can add the application’s path to
information to the servlet.                    the NetWare 5 JVM subjects the code to a          the java.cfg file, which resides in the

9   NetWare Connection   June 1999
                                                                                                 For example, you would enter this com-
                                                                                               mand to run the Xyz application:

                                                                                                  java -ns

                                                                                                  In this command, the parameter -ns
                                                                                               instructs the JVM to run the application
                                                                                               in a new screen.

                                                                                               The Better Solution
                                                                                                   If you don’t want to type a lengthy
                                                                                               CLASSPATH variable each time you run
                                                                                               a Java application, you can add the appli-
                                                                                               cation’s CLASSPATH variable to the
                                                                                               java.cfg file. (See Figure 1 on p. 12.) For
                                                                                               the example above, you would add the
                                                                                               following statements at the end of the
                                                                                               CLASSPATH variable in the java.cfg file:

Figure 2. With VolanoChat, you can create chat rooms through which groups of users can            CLASSPATH=$CLASSPATH;$OSA_HOME\
communicate in real time.                                                                           classes\Xyz
  SYS:\ETC directory on the NetWare            application, including the series of class           classes\Xyz\lib
  5 server.                                    files necessary to run the JVM itself.             CLASSPATH=$CLASSPATH;$OSA_HOME\
• You can create a NetWare Command             Typically, the CLASSPATH statement                   classes\Xyz\lib\
  File (NCF) and copy it in the SYS:\          contains all of the application’s class files      CLASSPATH=$CLASSPATH;$OSA_HOME\
  SYSTEM directory.                            (.cla), program files (.pro), and Java bean          classes\Xyz\lib\XyzBean.jar
                                               files (.jar), which are often located in the
A Good Solution                                application’s \LIB directory.                      After you add an application’s CLASS-
    Like all Java commands that you type           For example, suppose that most of the       PATH variable to the java.cfg file, you
at the server console, envset commands         Xyz application’s class files are contained     must initialize the newly changed file by
are deleted each time you unload the           in the file and the Xyz appli-      unloading the JAVA NetWare Loadable
NetWare 5 JVM. As a result, you must           cation contains one Java bean in the            Module (NLM) and then reloading it. To
reenter envset commands each time the          XyzBean.jar file. To set the CLASSPATH          unload the JAVA NLM, type UNLOAD
JVM is loaded. (For a complete list of         variable, you would type the following          JAVA at the server console. To load the
standard Java commands, type java at the       command at the server console:                  JAVA.NLM, type LOAD JAVA. (For
server console. For an extended list of Java                                                   an example of adding an application’s
commands that are specific to NetWare,            envset CLASSPATH=$CLASSPATH;                 CLASSPATH variable to the SYS:\
type java -nwhelp at the server console.)            SYS:\JAVA\Xyz; SYS:\JAVA\Xyz\lib;         ETC\java.cfg file, see “How to Brew
    You can use the envset command to                SYS:\JAVA\Xyz\lib\;SYS:\       HotJava” on p. 16.)
set two environment variables that allow             JAVA\Xyz\lib\XyzBean.jar                     If you add a Java application’s CLASS-
the NetWare 5 JVM to find and to run                                                           PATH variable to the java.cfg file, you
Java applications:                                 In this command, $CLASSPATH is a            must enter a Java command at the server
                                               shorthand way of including the current          console to run the application. This com-
• The Current Working Directory                value of the CLASSPATH variable. This           mand should include any special param-
  (CWD) variable                               variable directs the NetWare 5 implemen-        eters the application needs to run. For
• The CLASSPATH variables                      tation to the class files it needs to run the   example, in the case of the hypothetical
                                               JVM. (To view the series of CLASSPATH           Xyz application, you would type the fol-
    The CWD variable should be set to the      variables included in this shorthand state-     lowing at the command prompt:
directory that contains the Java applica-      ment, see Figure 1 on p. 12. These vari-
tion you want to run. For example, if the      ables reside in the java.cfg file, which is        java -ns
Java application is located in the SYS:\       located in the SYS:\ETC directory on the
JAVA\Xyz directory, you should type the        NetWare 5 server.)                                 Unfortunately, using this method to
following command at the server console:           To run the Java application, you then       run Java applications on a NetWare 5
                                               enter the Java command that launches            server has two inherent drawbacks: First,
   envset CWD=SYS:\JAVA\Xyz                    the application. This command has the           adding even one application to the
                                               following structure:                            java.cfg file can add significantly to the
   The CLASSPATH variable should                                                               length of that file, making java.cfg diffi-
be set to include every class file that the       java application <parameters> <application   cult to troubleshoot. Second, to run the
NetWare 5 JVM calls to run a given Java              startup command>                          application, you must remember its exact

                                                                                                             June 1999   NetWare Connection   10
     FEATURE Ser ver-S i d e Ja v a

 How to Brew HotJava                                                         CLASSPATH=$CLASSPATH;OSA_HOME\HotJava1.1.5.
     HotJava Browser from Sun Microsystems is a server-side web              CLASSPATH=$CLASSPATH;OSA_HOME\HotJava1.1.5\lib
 browser. You can use HotJava Browser to create web-enabled ap-              CLASSPATH=$CLASSPATH;OSA_HOME\HotJava1.1.5\lib\
 plications such as applets.                                                   jndi.jar
     To install Sun Microsystems’ HotJava Browser on the NetWare             CLASSPATH=$CLASSPATH;OSA_HOME\HotJava1.1.5\lib\
 5 server and add this application’s CLASSPATH variable to the                 HotJavaBean.jar
 java.cfg file, complete the following steps:
                                                                         RUN HOTJAVA ON THE NETWARE 5 SERVER
 INSTALL HOTJAVA ON THE NETWARE 5 SERVER                                 1. To run HotJava Browser, type the following commands at the
 1. From your workstation, download the version of HotJava Browser          server console:
    that Sun recommends for platforms other than Solaris for
    SPARC, Windows 95, or Windows NT. (You can find this free                unload java
    download at             load java
 2. Create a HotJava Browser directory in the SYS:\JAVA directory
    on the NetWare 5 server. For example, you could create the           2. Then type the following command at the server console:
    HotJava1.1.5 directory.
 3. Add the following lines to the file in the SYS:\ETC          java -ms4m -mx32m -Dhotjava.home=SYS:\JAVA\HotJava1.1.5
    directory on the NetWare 5 server:                                           -Djava.home=SYS:\JAVA sunw.hotjava.Main

name and any special parameters that             with an .NCF file extension (Xyz.NCF,            .jar files must be included in the applica-
must be specified. (The names of Java            for example). Then copy this file to the         tion’s CLASSPATH variable, regardless of
executable files and class files are case sen-   SYS:\SYSTEM directory on the NetWare             which method you are using to run the
sitive.) Even if you have a picture-perfect      5 server. To run the application, you sim-       application on the NetWare 5 server.
memory and relish the idea of memorizing         ply type its NCF filename (Xyz) at the               Finally, you can usually get information
application startup commands, you prob-          server console. (For an example of using         about running a particular vendor’s prod-
ably don’t want to make the java.cfg file        this method to run an application on a           uct on NetWare 5 by calling that vendor’s
any larger than it has to be.                    NetWare 5 server, see “Chat With Java            support staff directly—especially if the
                                                 on NetWare 5” on p. 10.)                         product is Novell Yes, Tested and Ap-
The Best Solution                                                                                 proved. (For a list of Novell Yes, Tested
   Fortunately, you don’t have to add a          IF ALL ELSE FAILS, READ THE                      and Approved Java applications, go to
Java application’s CLASSPATH variable            INSTRUCTIONS                           
to the java.cfg file in order to run this            What happens if you try these three          1962.htm, and then click Java Showcase.)
application on the NetWare 5 server.             methods and still find it difficult to run
There is an easier way. You can create an        a Java application on your company’s             LOOKING AHEAD
NCF that contains all of the information         NetWare 5 server? How should you trou-              In addition to explaining Novell’s
necessary to run the application.                bleshoot the problem? First, you should          commitment to Java, Holbrook predicted
   To create an NCF, open any ASCII              search the application’s files for a text file   that the world of network computing will
text editor (such as Notepad), and type          that contains documentation. If such a           look increasingly to server-side Java appli-
the entire series of commands needed to          file exists, it may include important               cations for answers to its computing
run the application. (You must start each        configuration information. For ex-                     problems. This prediction is tenable,
new command on a new line.) For exam-            ample, HotJava Browser from                             to say the least. For example, many
ple, if you created an NCF for the hypo-         Sun Microsystems includes Hot-                          networking devices such as Inter-
thetical Xyz application, this file would        Java1.1.5.CMD, a text file that                        net-enabled cellular phones are be-
contain the following commands:                  lists a series of parameters that must               coming smaller and have less com-
                                                 be set in the application’s startup com-         puting power than desktop workstations.
     envset CWD=SYS:\JAVA\Xyz                    mand. If these parameters are not set,           Using server-side Java applications, these
                                                 HotJava Browser will not run. (HotJava           devices can deliver information that they
     envset                                      Browser is a web browser application. For        would otherwise lack the computing
        CLASSPATH=$CLASSPATH;SYS:\JAVA\          more information about this application,         power to deliver.
        Xyz;SYS:\JAVA\Xyz\lib;SYS:\JAVA\Xyz\     see “How to Brew HotJava.”)                         As the need for server-side applications
        lib\;SYS:\JAVA\Xyz\lib\           Second, you should search the appli-         grows, the number of software developers
        XyzBean.jar                              cation’s files for .jar files that are not       who write applications to meet this need
                                                 included in the application’s current            will arguably grow in tandem. These de-
     java -ns                       CLASSPATH variable. Although .jar files          velopers will choose Java both for its plat-
                                                 are often located in the application’s \LIB      form independence and for the increased
   After you have created the NCF, save it       directory, these files may be stored in other    productivity that is a by-product of the
with a name that is easy to remember and         directories as well. All of the application’s    Java language.

11    NetWare Connection   June 1999
  A Java Sampler
    Company                            Product                       Product Description
    BulletProof Corp.                  JDesignerPro 3.0              This Java application builder is integrated with Novell Directory
    Voice: 1-800-505-0105                                            Services (NDS) and Oracle and enables you to develop applications
    Fax: 1-305-933-1216                                              via a drag-and-drop capability. (A 90-day trial download for NetWare                                       5 is available at For NetWare-specific in-
                                                                     formation, visit

    Cereus Design Corp.                HotTEA 5.0 (Green TEA)        This software enables you to quickly write applets and small applica-
    Voice: 1-650-947-0880                                            tions using the Basic programming language.
    Fax: 1-650-429-2029                HotTEA 5.0 (B.R.I.S.K. TEA)   This software is a scripting kit that enables you to write complex Java                                           applications using the Basic programming language. (An evalu-
                                                                     ation download is available at For
                                                                     NetWare-specific information, visit

    The Prestige Software              Masterpiece/Net 1.1           This application provides web-enabled financial management tools
    International division of                                        for multinational, multiorganizational companies. This application
    Computer Associates Inc.                                         includes numerous features including General Ledger, Accounts
    Voice: 1-201-592-0009                                            Payable, Accounts Receivable, Fixed Assets, and Inventory Control
    Fax: 1-201-585-6513                                              modules. (For NetWare-specific information, visit http://developer.                            

    D2K Inc.                           Tapestry 2.0                  This application automates the data extraction, transformation, and
    Voice: 1-888-770-4636                                            loading processes needed to build and maintain data warehouses
    Fax: 1-408-451-2015                                              and data marts. Data sources include various mainframe and client-                                               server databases, as well as PeopleSoft Enterprise Resource Planning
                                                                     (ERP) and SAP database applications. (For NetWare-specific informa-
                                                                     tion, visit

    Global Communications Ltd.         Teamphone Web 8.0             This application provides users with a single number and a single
    Voice: (0)171-306-7300 (UK)                                      corporate directory that is based on Lightweight Directory Access
    Fax: (0)171-306-7371                                             Protocol (LDAP). Business contacts can use this number and direc-                                         tory to reach users wherever they happen to be. (For NetWare-
                                                                     specific information, visit

    Open Concept International         openQuote 1.1                 This application consists of client-server software that allows users to
    Voice: 1-780-434-2363                                            quote product and service prices to potential customers. You can
    Fax: 1-780-438-2941                                              implement this product over the Internet and/or over your company’s                                              intranet. (You can download a trial version from Open Concept’s web
                                                                     site. For NetWare-specific information, visit http://developer.novell.

    TRADEX Technologies Inc.           TRADE’ex Market Maker 3.11 This application consists of e-commerce software through which
    Voice: 1-888-487-2339                                         commercial and noncommercial entities can create a web-
    Fax: 1-813-222-5658                                           based market place. (For information about new product releases,                                         visit TRADEX’s web site at For NetWare-
                                                                  specific information, visit
                                                                  49901.htm.)      b

   If you’re looking for an application to      Tested and Approved, you may also want          case. For a list of the 100-percent Java
answer a present need, it isn’t too early to    to check out the applications that Sun Mi-      applications, go to
explore the variety of server-side applica-     crosystems has certified as being 100 per-      100percent/latestlist.html.) Applications
tions already available. Novell’s Java          cent pure Java. (For a list of the Novell       that are 100 percent pure Java will run on
Showcase features more than 250 Java            Yes, Tested and Approved Java applica-          any JVM, including the NetWare 5 JVM.
applications. In addition to checking out       tions, go to           Cheryl Walton works for Niche Associates
the Java applications that are Novell Yes,      infosys/lv3_1962.htm, and click Java Show-      in Sandy, Utah.  b

                                                                                                               June 1999   NetWare Connection   12

To top