   Java CGI HOWTO
  David H. Silber javacgi-document@orbits.com
  v0.5, 1  1998

     HOWTO        
     CGI   Java   
    Java     CGI.    
   HOWTO         Linux,
           
   Unix  .
  ______________________________________________________________________

  Table of Contents





















































  1. 

     1.1  
     1.2   
     1.3  
     1.4   

  2.        Java CGI ( )

     2.1  
     2.2   Java CGI
     2.3    
     2.4       
     2.5    

  3.        Java CGI (  )

  4.    Java CGI

     4.1     Java     CGI
        4.1.1      Java    .
        4.1.2  Java      .
     4.2      Java CGI
        4.2.1  java.cgi script
        4.2.2   java.cgi    HTML

  5.   Java CGI 

     5.1 CGI
        5.1.1  
        5.1.2  
        5.1.3  
        5.1.4  
        5.1.5 CGI()
        5.1.6 getNames()
        5.1.7 getValue()
     5.2 CGI_Test
        5.2.1  
        5.2.2  
        5.2.3 main()
     5.3 Email
        5.3.1  
        5.3.2  
        5.3.3  
        5.3.4  
        5.3.5 Email()
        5.3.6 send()
        5.3.7 sendTo()
        5.3.8 subject()
     5.4 Email_Test
        5.4.1  
        5.4.2  
        5.4.3 main()
     5.5 HTML
        5.5.1  
        5.5.2  
        5.5.3  
        5.5.4  
        5.5.5 HTML()
        5.5.6 author()
        5.5.7 definitionList()
        5.5.8 definitionListTerm()
        5.5.9 endList()
        5.5.10 listItem()
        5.5.11 send()
        5.5.12 title()
     5.6 HTML_Test
        5.6.1  
        5.6.2  
        5.6.3 main()
     5.7 Text
        5.7.1  
        5.7.2  
        5.7.3  
        5.7.4  
        5.7.5 add()
        5.7.6 addLineBreak()
        5.7.7 addParagraph()

  6.  

  7. 

     7.1    0.4  0.5
     7.2    0.3  0.4
     7.3    0.2  0.3
     7.4    0.1  0.2


  ______________________________________________________________________

  [1m1.  [0m

       Java  ,  
          .
         Java Development Kit
  (JDK),        
    ,         
      /CGI  HTML.   
     ,     
  .     .

          1996,  
      Java.      
      Java   --, 
    --         servlets.


  [1m1.1.   [0m

         HTML    CGI 
        HTTP .   
         Java,   
      .



  [1m1.2.    [0m

           
  http://www.orbits.com/software/Java_CGI.html.



  [1m1.3.   [0m

           
     FTP 
  ftp://ftp.orbits.com/pub/software/java_cgi-0.5.tgz.    
      SGML    .


          GNU  
     (Library General Public License).   
           
    Linux HOWTOs.

      ,    
   http://www.orbits.com/software/Java_CGI.html,    
        Java CGI.

              ,
          .   
             
      ,     
  javacgi-document@orbits.com.



  [1m1.4.    [0m

      majordomo     
      ,      
       .   
    javacgi-request@orbits.com,   
  [4msubscribe[24m.



  [1m2.         Java CGI ([0m
  [1m)[0m

             
  [4mJava[24m [4mCGI[24m          
      .      
            
   ,   ``    
    Java CGI (  )''.



  [1m2.1.   [0m

           unix-like 
       Java Development Kit.   
      [4mDebian[24m [4mLinux[24m    [4mapache[24m 
   HTTP.         
  ,      .   
  ``The Mailing List''  .

  ,  Java run-time      
    --       
  megabytes  RAM       
   Java CGI.



  [1m2.2.    Java CGI[0m

            [4mJava[24m [4mCGI[24m.
       
  ftp://ftp.orbits.com/pub/software/java_cgi-0.5.tgz.  ( 
      ).





  [1m2.3.     [0m

            
   .  (        
  ,     /usr/local/src.)  
       :

  gzip -dc java_cgi-0.5.tgz | tar -xvf -


         java_cgi-0.5.   
            .
  (     ,    
      ).



  [1m2.4.        [0m

          Java CGI  .
  ,           
  cgi-bin  .      [4mapache[24m  
     /var/www/cgi-bin   cgi-bin , 
    /var/www/javacgi       
  Java CGI .         Java
  CGI         
  CLASSPATH.    Makefile    
     .      
   root     make install.   
    Java ,    java.cgi 
             
    .     HTML    
    HTML test  ,    make all 
  .



  [1m2.5.     [0m

       HTML   
  javacgitest.html, javaemailtest.html  javahtmltest.html.   
    - all   ,    
     WEBDIR  Makefile.     ,  
     make test      
  javacgitest.html-dist, javaemailtest.html-dist  javahtmltest.html-
  dist.

          ,  
      CGI_Test.class, Email_Test.class 
  HTML_Test.class   JAVACGI     javacgitest.html,
  javaemailtest.html  javahtmltest.html   WEBDIR  
          
    .




  [1m3.         Java CGI ([0m
  [1m )[0m


       [4mJava[24m [4mCGI[24m  
     ftp://ftp.orbits.com/pub/software/java_cgi-0.5.tgz.  ( 
         ).


          :

     gzip -dc java_cgi-0.5.tgz | tar -xvf -


  (     ,    
           ).

      Makefile      
      java_cgi-0.5        .

     root,    make install.     
     Java ,      
            .    
     HTML       HTML test , 
       make all  .

          .




  [1m4.     Java CGI[0m




  [1m4.1.      Java     CGI[0m

          Java 
    :



  [1m4.1.1.       Java   [0m
  [1m.[0m

       Java run-time     
    (   )   .   
   HTML,         
     .



  [1m4.1.2.   Java      .[0m

           Java
      .       
     [1mC[22m, getenv() .



  [1m4.2.       Java CGI[0m

       ,   CGI 
           Java
  .



  [1m4.2.1.   java.cgi script[0m

          
  HTTP     Java CGI   
  .         
          .  
         .  , 
   Java run-time        
          
   -.

   java.cgi script     `` 
      ''.




  [1m4.2.2.    java.cgi    HTML[0m

        Java CGI  
     :

  <form action="/cgi-bin/java.cgi/CGI_Test" method="POST">


   /cgi-bin/     CGI binary , java.cgi
    Java front-end       Java
      CGI_Test     
  Java   .



  [1m5.    Java CGI [0m

           --
  ``CGI'', ``Email''  ``HTML''.       
    MIME-  (input)  
  (output) -- MIMEin & MIMEout, .

     support  test .  ``CGI_Test'',
  ``Email_Test''  ``HTML_Test''     
     .      
   -      Java 
      .   ``Text''   
       ,  Email   HTML.



  [1m5.1.  CGI[0m




  [1m5.1.1.   [0m

  public class CGI



  [1m5.1.2.   [0m

   CGI    ``CGI '' -- 
         / 
        [1msubmit [22m  .
        Properties 
  .

        ``Orbits.net''.




  [1m5.1.3.   [0m

  CGI()         //  .

  getNames()    //     .

  getValue()    //        .



  [1m5.1.4.   [0m

  CGI_Test.




  [1m5.1.5.  CGI()[0m


     [1mPurpose[0m
               CGI
        .

     [1mSyntax[0m
        public CGI()

     [1mDescription[0m
            CGI,    CGI
               .




  [1m5.1.6.  getNames()[0m


     [1mPurpose[0m
                 
         .

     [1mSyntax[0m
        public Enumeration getKeys ()

     [1mDescription[0m
                 
          .

     [1mReturns[0m
         Enumeration    .



  [1m5.1.7.  getValue()[0m


     [1mPurpose[0m
          [1mvalue [22m   [1mname [22m  .

     [1mSyntax[0m
        public String getValue ( String name )

     [1mDescription[0m
                names 
        values     HTML .

     [1m[0m

        [1mname[0m
                  .

     [1mReturns[0m
         String    .



  [1m5.2.  CGI_Test[0m

            
   CGI         
       [4mJava[24m [4mCGI[24m  .



  [1m5.2.1.   [0m

  main()      //   main().




  [1m5.2.2.   [0m

  CGI.




  [1m5.2.3.  main()[0m


     [1mPurpose[0m
          main() .

     [1mSyntax[0m
        public static void main( String argv[] )

     [1mDescription[0m
                CGI  
                   
         /      .

     [1m[0m

        [1margv[][0m
                 java.cgi script.
              .



  [1m5.3.  Email[0m




  [1m5.3.1.   [0m

  public class Email extends Text




  [1m5.3.2.   [0m

      Text  add*()    e-
  mail-       .
   ,      .

        ``Orbits.net''.




  [1m5.3.3.   [0m


  Email()      //  .

  send()       //    e-mail .

  sendTo()     //       .

  subject()    //    :   .




  [1m5.3.4.   [0m

  Email_Test, Text.




  [1m5.3.5.  Email()[0m


     [1mPurpose[0m
                email
        .

     [1mSyntax[0m
        public Email()

     [1mDescription[0m
                 Email
        .

     [1mSee Also[0m
        Text.




  [1m5.3.6.  send()[0m


     [1mPurpose[0m
          e-mail .

     [1mSyntax[0m
        public void send ()

     [1mDescription[0m
             .    
           ,    .


  [1m5.3.7.  sendTo()[0m


     [1mPurpose[0m
              .

     [1mSyntax[0m
        public String sendTo ( String address )

     [1mDescription[0m
          address    

          .        
           e-mail    .   
              ,   
                [4mMail[24m [4mTransport[24m [4mAgent[0m
                .

     [1mParameter/[0m

        [1maddress[0m
                  .




  [1m5.3.8.  subject()[0m


     [1mPurpose[0m
              .

     [1mSyntax[0m
        public void subject ( String subject )

     [1mDescription[0m
                 Subject: 
        e-mail.       ,  
             .

     [1mParameter[0m

        [1msubject[0m
              Subject:    .




  [1m5.4.  Email_Test[0m

            
  Email    test       
     [4mJava[24m [4mCGI[24m   .




  [1m5.4.1.   [0m

  main()      //   main().






  [1m5.4.2.   [0m

  Email.



  [1m5.4.3.  main()[0m


     [1mPurpose[0m
          main() .

     [1mSyntax[0m
        public static void main( String argv[] )

     [1mDescription[0m
                CGI 
               /  
           .  ,      
           Email .

     [1m[0m

        [1margv[][0m
                 java.cgi
           .     .




  [1m5.5.  HTML[0m




  [1m5.5.1.   [0m

  public class HTML extends Text



  [1m5.5.2.   [0m

      Text  add*()   
  HTML-       .
   ,      .

    ,        
    -     ,
            
   HTML .

        ``Orbits.net''.



  [1m5.5.3.   [0m


  HTML()                  //  .

  author()                //       
  .

  definitionList()        //     .

  definitionListTerm()    //       .

  endList()               //    .

  listItem()              //       .

  send()                  //    HTML .

  title()                 //        
  .



  [1m5.5.4.   [0m

  HTML_Test, Text.



  [1m5.5.5.  HTML()[0m


     [1mPurpose[0m
               HTML .

     [1mSyntax[0m
        public HTML()

     [1mDescription[0m
                HTML .

     [1mSee Also[0m
        Text.



  [1m5.5.6.  author()[0m


     [1mPurpose[0m
              .

     [1mSyntax[0m
        public void author ( String author )

     [1mDescription[0m
                author.

     [1mParameter/[0m

        [1mauthor[0m
                   
             .

     [1mSee Also[0m
        title().




  [1m5.5.7.  definitionList()[0m


     [1mPurpose[0m
           .

     [1mSyntax[0m
        public void definitionList ()

     [1mDescription[0m
           .   [4mdefinition[24m [4mlist[24m   
                 [4mterm[0m
           [4mtext[24m     .   
                )
         /      endList() .
        [4m[24m [4m,[24m [4m[24m [4m[24m [4m,[24m [4m[24m [4m[24m [4m[24m [4m[24m [4m[24m [4m[0m
        [4m[24m [4m(nested)[24m [4m[24m [4m[24m [4m[24m [4m[24m [4m.[0m

     [1mSee Also[0m
        definitionListTerm(), endList(), listItem().




  [1m5.5.8.  definitionListTerm()[0m


     [1mPurpose[0m
             .

     [1mSyntax[0m
        public void definitionListTerm ()

     [1mDescription[0m
             .      
                
                 
          listItem  .

     [1mSee Also[0m
        definitionList(), listItem().



  [1m5.5.9.  endList()[0m


     [1mPurpose[0m
          .

     [1mSyntax[0m
        public void endList ()

     [1mDescription[0m
          .

             .  [4m[24m [4m,[24m [4m[24m [4m[24m [4m,[0m
        [4m[24m [4m[24m [4m[24m [4m[24m [4m[24m [4m[24m [4m[24m [4m(nested),[24m [4m[24m [4m[24m [4m[0m
        [4m[24m [4m.[0m

     [1mSee Also[0m
        definitionList().




  [1m5.5.10.  listItem()[0m


     [1mPurpose[0m
             .

     [1mSyntax[0m
        public void listItem ()

        public void listItem ( String item )

        public boolean listItem ( String term, String item )

     [1mDescription[0m
             .

            ,     
                 
                .
            ,  item   
              (   )
          .       
                  
         .

     [1mParameters[0m

        [1mitem[0m
                .

        [1mterm[0m
                    
           .

     [1mSee Also[0m
        definitionList(), definitionListTerm(), endList().




  [1m5.5.11.  send()[0m


     [1mPurpose[0m
          HTML .

     [1mSyntax[0m
        public void send ()

     [1mDescription[0m
          HTML .




  [1m5.5.12.  title()[0m


     [1mPurpose[0m
              .

     [1mSyntax[0m
        public void title ( String title )

     [1mDescription[0m
              .

     [1mParameter[0m

        [1mtitle[0m
                 .

     [1mSee Also[0m
        author().




  [1m5.6.  HTML_Test[0m

             HTML
     test       
      [4mJava[24m [4mCGI[24m  .




  [1m5.6.1.   [0m


  main()      //   main().





  [1m5.6.2.   [0m

  HTML.




  [1m5.6.3.  main()[0m


     [1mPurpose[0m
          main() .

     [1mSyntax[0m
        public static void main( String argv[] )

     [1mDescription[0m
                CGI 
             /   
        HTML ,    /    
           .

     [1m[0m

        [1margv[][0m
                 java.cgi .
               .




  [1m5.7.  Text[0m





  [1m5.7.1.   [0m

  public abstract class Text


  [1m5.7.2.   [0m

        Email  HTML .  
            
       .

        ``Orbits.text''.




  [1m5.7.3.   [0m


  Text()            //  .

  add()             //       .

  addLineBreak()    //     .

  addParagraph()    //     .




  [1m5.7.4.   [0m

  Email, HTML.




  [1m5.7.5.  add()[0m


     [1mPurpose[0m
             .

     [1mSyntax[0m
        public void add ( char addition )

        public void add ( String addition )

        public void add ( StringBuffer addition )

     [1mDescription[0m
         addition     
        .

     [1mParameter[0m

        [1maddition[0m
                  

     [1mSee Also[0m
        addLineBreak(), addParagraph().




  [1m5.7.6.  addLineBreak()[0m


     [1mPurpose[0m
                 .

     [1mSyntax[0m
        public void addLineBreak ()

     [1mDescription[0m
                .

     [1mSee Also[0m
        add(), addParagraph().




  [1m5.7.7.  addParagraph()[0m


     [1mPurpose[0m
           .

     [1mSyntax[0m
        public void add ()

     [1mDescription[0m
                  .

     [1mSee Also[0m
        add(), addLineBreak().




  [1m6.   [0m


      Email :

     [1mEmail( int capacity )[0m
                
          .

     [1msendTo( String [] address )[0m
              e-mail .

     [1msendCc( String address )[0m
          Carbon-Copy   e-mail .

     [1msendCc( String [] address )[0m
            Carbon-Copy   e-mail
        .

     [1msendBcc( String address )[0m
          Blind Carbon-Copy   e-mail .

     [1msendBcc( String [] address )[0m
            Blind Carbon-Copy   e-mail
        .

      HTML :

     [1mHTML( int capacity )[0m
              

            .

     [1mpublic void unorderedList()[0m
            .

     [1mpublic void orderedList()[0m
           .

     [1mpublic void directoryList()[0m
           .

     [1mpublic void menuList()[0m
           .

     [1mvoid anchor( String anchorName )[0m
          anchor.

     [1mvoid link( String url, String text )[0m
          .

     [1mvoid applet( String url, String altText )[0m
           applet.

      (nested) HTML .

            
      HTML   .

             
         Makefile.

         /   
           GET   
     .

         CGI    java.util.Enumeration
           .

      Test ,      
       .

       CGI_Test, Email_Test  HTML_Test  
              
      .

       Test     
       .




  [1m7.  [0m





  [1m7.1.     0.4  0.5[0m


             
         .




  [1m7.2.     0.3  0.4[0m


      HTML      .

      HTML_Test    javahtmltest.html-dist.

      HTML      
     .




  [1m7.3.     0.2  0.3[0m


      Text  Email .   HTML  ,
             .

         .    
       Orbits.net.*,    Text  
     Orbits.text.Text.

      CGItest  CGI_Test.

      Email_Test .




  [1m7.4.     0.1  0.2[0m


           
          -  Java  .
      CGI    java.cgi   .

     javacgitest.html     .

           make  
            [4m-dist[24m.






























