head	1.9;
access;
symbols
	ApacheJSSI-1_1_2:1.9
	ApacheJSSI-1_1_1:1.8
	ApacheJSSI-pre1_1:1.7
	JavaApacheSSI-pre2-1_1:1.4.4.7
	JavaApacheSSI-pre1_1:1.4.4.6
	before-peter-urban-commit:1.4.4.1
	jservssi_1_1-DEV:1.4.0.4
	jservssi_1_0-patches:1.4.0.2
	jservssi_1_0:1.1.1.1
	arelease:1.1.1.1
	avendor:1.1.1;
locks; strict;
comment	@# @;


1.9
date	99.06.22.23.07.12;	author hzeller;	state Exp;
branches;
next	1.8;

1.8
date	99.06.22.10.47.38;	author hzeller;	state Exp;
branches;
next	1.7;

1.7
date	99.06.10.11.21.14;	author hzeller;	state Exp;
branches;
next	1.6;

1.6
date	99.06.09.22.41.18;	author hzeller;	state Exp;
branches;
next	1.5;

1.5
date	99.03.08.19.30.29;	author admin;	state Exp;
branches;
next	1.4;

1.4
date	99.02.15.18.20.22;	author hzeller;	state Exp;
branches
	1.4.4.1;
next	1.3;

1.3
date	99.02.03.23.15.03;	author jonbolt;	state Exp;
branches;
next	1.2;

1.2
date	98.12.28.03.29.10;	author bob;	state Exp;
branches;
next	1.1;

1.1
date	98.11.26.23.23.04;	author stefano;	state Exp;
branches
	1.1.1.1;
next	;

1.1.1.1
date	98.11.26.23.23.04;	author stefano;	state Exp;
branches;
next	;

1.4.4.1
date	99.02.18.10.49.06;	author hzeller;	state Exp;
branches;
next	1.4.4.2;

1.4.4.2
date	99.05.17.08.07.35;	author hzeller;	state Exp;
branches;
next	1.4.4.3;

1.4.4.3
date	99.05.18.17.48.28;	author peter;	state Exp;
branches;
next	1.4.4.4;

1.4.4.4
date	99.05.18.19.52.10;	author hzeller;	state Exp;
branches;
next	1.4.4.5;

1.4.4.5
date	99.05.19.09.05.42;	author peter;	state Exp;
branches;
next	1.4.4.6;

1.4.4.6
date	99.05.26.16.31.21;	author hzeller;	state Exp;
branches;
next	1.4.4.7;

1.4.4.7
date	99.05.29.06.27.57;	author hzeller;	state Exp;
branches;
next	;


desc
@@


1.9
log
@o 1.1.1 -> 1.1.2
@
text
@
		         A P A C H E   J S S I
                             Version 1.1.2


  What is it?
  -----------
  
  Apache JSSI is Java servlet that provides support for including dynamic
  servlet output from within HTML documents via the <SERVLET> tag as specified
  by the JavaSoft Java Web Server. 

  Additionally there are some extensions which can make your life easier:
    o Support of some traditional SSI-commands (like <!--#ECHO ...-->)
    o URL-Rewriting of any <A HREF=..> in the page
      to allow session tracking without cookies. See HTML-doc.
    o For Developers: An easy way to extend the SSI Servlet to handle 
      any tag (consult the JavaDoc for TagHandlers)


  The Latest Version
  ------------------

  Details of the latest version can be found on the Java Apache 
  Project web site <http://java.apache.org>.

  Changes to 1.0
  ---------------
  Note that the servlet has been renamed from
  Apache JServSSI to Apache JSSI since it became a project not dependant
  on the JServ project. 
  
  The package name changed from org.apache.jservssi to org.apache.servlet.ssi.

  Several bugs have been fixed, it parses faster, uses less memory and has
  a bunch of (nonstandard) extensions.

  Licensing
  ---------

  Please see the file called LICENSE.
  
  Requirements
  ------------
  
    o  Any servlet engine compatible with the 2.0 Servlet API specification
       (the use of Apache JServ is highly recommended). Note that the
       JSDK 2.1 isn't supported yet and the SSI servlet may or may not
       work with JSDK 2.1 compliant servlet engines.
       
    o  Any Java 1.1 compatible compiler
    
  Installation
  ------------
  Please see the file called INSTALL

  Usage
  -----
  
  Servlet output may be included in an HTML document by use of the <SERVLET>
  tag. For example, to embed the output of the HelloWorldServlet servlet in 
  an HTML page, you might write the following:
  
        ... (some HTML code) ...
        <SERVLET CODE="HelloWorldServlet.class">
        Your web server has not been configured to support servlet tags.
        </SERVLET>
        ... (more HTML code) ...

  When this page is served from the web server, the code above will be replaced
  with the output of HelloWorldServlet. If you see the message between the tags 
  instead, there is a problem with your server configuration. If this happens, 
  check to make sure your file has a ".jhtml" extension and that the server is 
  properly configured.
       
  Two attributes are used by the <SERVLET> tag, and they are roughly 
  equivalent: 

   o The CODE attribute may be set to the name of a class file (the ".class" 
     extension is optional) containing the servlet to be run. This servlet must
     be visible by the Apache JSSI servlet. 
   o The NAME attribute may also be set to the name of the servlet to be run 
     (with no class extension). 

  In some implementations of <SERVLET> tags, if both NAME and CODE attributes
  are set, the servlet designated by CODE will then become available for future
  use under the symbolic named designated by the NAME attribute. This is not
  currently supported. 

  Note that both the <SERVLET> and </SERVLET> tags must be present.       
       
  You may send parameters to a servlet via the PARAM tag, which should be 
  placed between the <SERVLET> and </SERVLET> tags, like so:  

        <SERVLET CODE="MyServlet.class">
         <PARAM NAME="param1" VALUE="valueOfParam1">
         <PARAM NAME="anotherParam" VALUE="valueOfAnotherParam">
        </SERVLET>

  You could then access these parameters from your servlet as follows:  

        public void doGet(HttpServletRequest req, HttpServletResponse res)
        throws ServletException, IOException {
            String param1 = req.getParameter("param1");
            String anotherParam = req.getParameter("anotherParam");
        }

  For use of the URL rewriting and traditional SSI features see the
  HTML documentation.

  Notes
  -----

   o  Attribute values
      ----------------
      
      Attribute values, NAME and VALUE in the PARAM tag may be a single word 
      (NAME=xyz value=1) or must be enclosed in quotes if they contain 
      whitespace (NAME=xyz VALUE="This is a test").
      
   o  Case sensitivity and SGML 
      -------------------------
      
      This class does not care about case when reading SGML tags or their 
      attributes, so uppercase, or lowercase, or any combination thereof may 
      be used. The text in attribute values is not translated to upper- or 
      lowercase but is passed on intact.
      
   o  Error handling
      --------------
      
      To simplify error detection and correction, exceptions thrown by Java 
      Apache SSI or called servlets are printed, enclosed in comments 
      ("<!-- ... -->"), in the HTML output.


  Known Bugs
  ---------

  Servlets implementing the SingleThreadModel interface are known not to
  work together with the Apache JSSI. This is due to deficiencies of
  JSDK 2.0 which doesn't allow to implement a SSI servlet independent of
  the servlet engine.
  So you either have to 
     o write clean, reentrant servlets (preferred)
     o synchronize your service(), doGet(), doPost() methods (ugly)
   or 
     o write a SSI dependant on your servlet engine (or wait
       for JSDK 2.1)

  Thanks for using Apache JSSI.

                                           The Java Apache Project
                                           <http://java.apache.org/>
@


1.8
log
@o changed version 1.1 -> 1.1.1 in docs
@
text
@d3 1
a3 1
                             Version 1.1.1
@


1.7
log
@o Rename Java Apache SSI to Apache JSSI; 'Java' is a SUN tm.
@
text
@d3 1
a3 1
                              Version 1.1
@


1.6
log
@o merge the 'jservssi_1_1-DEV' - branch with the default branch
@
text
@d2 1
a2 1
		      J A V A   A P A C H E   S S I
d9 1
a9 1
  Java Apache SSI is Java servlet that provides support for including dynamic
d30 1
a30 1
  Apache JServSSI to Java Apache SSI since it became a project not dependant
d81 1
a81 1
     be visible by the Java Apache SSI servlet. 
d141 1
a141 1
  work together with the Java Apache SSI. This is due to deficiencies of
d151 1
a151 1
  Thanks for using Java Apache SSI.
@


1.5
log
@new installation instructions
@
text
@d2 2
a3 2
                      A P A C H E   J S E R V S S I
                           Version 1.0 (and up)
d9 1
a9 1
  Apache JServSSI is Java servlet that provides support for including dynamic
d11 10
a20 2
  by the JavaSoft Java Web Server.
  
d27 11
d47 3
a49 1
       (the use of Apache JServ is highly recommended)
d55 1
a55 41

  1. Compiling
     ---------
     
     You need to have the Java Servlet API (JSDK) 2.0 in your CLASSPATH to 
     compile Apache JServSSI. Please get this from: 
     <http://java.sun.com/products/servlet/>

     To compile the source code from the directory where this README file 
     is located, type:
     
     $ javac -d . src/java/org/apache/jservssi/*.java
     $ jar cf0 ApacheJServSSI.jar org

  2. Installing
     ----------

       Apache JServ
       ------------
       In order to include the Apache JServSSI classes in your servlet 
       engine, you have to enable the server side inclusion by mapping the 
       ".jhtml" URI to the "org.apache.jservssi.JServSSI" servlet by doing 
       the following:

       In your Apache config file add:
       ApJServAction .jhtml /servlets/org.apache.jservssi.JServSSI

       Change the /servlets/ part to be the location of your zone.

       In your zone.properties file add:
       wrapper.classpath=/path/to/ApacheJServSSI.jar

       Change the /path/to/ part to be the path to the location of your 
       ApacheJServSSI.jar file.

       Other Servlet Engines
       ---------------------
       Apache JServSSI will work with other servlet engines that meet the 
       requirements defined above. Please see the Apache JServ installation 
       instructions for hints on how to configure your servlet engine in 
       order to do suffix/action mapping.
d62 1
a62 1
  an HTML page, you might write following:
d81 1
a81 1
     be visible by the Apache JServSSI servlet. 
d106 4
a109 1
        }              
d132 2
a133 2
      To simplify error detection and correction, exceptions thrown by Apache
      JServSSI or called servlets are printed, enclosed in comments 
d137 15
a151 1
  Thanks for using Apache JServSSI.
@


1.4
log
@o Re Known Bug Section: Parameters which are set in subsequent
  servlet calls --> this isn't true anymore since the rewrite of
  SSI several month ago (by Tim Williams ?)
@
text
@d50 25
a74 11
     
     Follow your servlet engine instructions to install the ApacheJServSSI.jar
     package in your servlet engine.
     
  3. Mapping
     -------
     
     Once the Apache JServSSI classes have been included in your servlet
     engine, you have to enable the server side inclusion by mapping the
     ".jhtml" URI to the "org.apache.jservssi.JServSSI" servlet by following
     your servlet engine instructions.
d95 2
a96 1
  Two attributes are used by the <SERVLET> tag, and they are roughly equivalent: 
@


1.4.4.1
log
@o start 1.1
@
text
@d3 1
a3 1
                           Version 1.1 (and up)
d9 1
a9 1
  Java Apache SSI is Java servlet that provides support for including dynamic
d39 1
a39 1
     compile Java Apache SSI. Please get this from: 
d42 5
a46 6
     To compile the source code, go to the src/java directory and
     type:

     $ make
	
     you'll get JavaApacheSSI.jar 
d51 1
a51 1
     Follow your servlet engine instructions to install the JavaApacheSSI.jar
d57 1
a57 1
     Once the Java Apache SSI classes have been included in your servlet
d59 1
a59 1
     ".jhtml" URI to the "org.apache.servlet.SSI" servlet by following
d85 1
a85 1
     be visible by the Java Apache SSI servlet. 
d133 2
a134 2
      To simplify error detection and correction, exceptions thrown by Java 
      Apache SSI or called servlets are printed, enclosed in comments 
d138 1
a138 1
  Thanks for using Java Apache SSI.
@


1.4.4.2
log
@o minor changes to documentation
o made SITE_ROOT an init-Parameter (SSISiteRoot) of the SSI-Servlet
  instead of a SystemProperty
@
text
@d60 1
a60 1
     ".jhtml" URI to the "org.apache.servlet.ssi.SSI" servlet by following
@


1.4.4.3
log
@Documentation changes only.

Modified Files:
 Tag: jservssi_1_1-DEV
	README src/java/org/apache/servlet/ssi/ConfigTagHandler.java
	src/java/org/apache/servlet/ssi/EchoTagHandler.java
	src/java/org/apache/servlet/ssi/FLastModTagHandler.java
	src/java/org/apache/servlet/ssi/FSizeTagHandler.java
	src/java/org/apache/servlet/ssi/IncludeTagHandler.java
	src/java/org/apache/servlet/ssi/SSI.java
	src/java/org/apache/servlet/ssi/SSIContext.java
	src/java/org/apache/servlet/ssi/SSITagHandler.java
	src/java/org/apache/servlet/ssi/SpecialTagHandlerWithContext.java
@
text
@a62 10
     (optional) In order to use SSI directives, pass the following init
     argument to the "org.apache.servlet.ssi.SSI" servlet (by following
     your servlet engine instructions):

       SSISiteRoot=/site/root

     Replace /site/root by the top level directory of your site.
     This is the <code>DocumentRoot</code> in your Apache configuration file.
     Beware, the SSI directives are not (yet) fully implemented. 

@


1.4.4.4
log
@o some pre-distribution cleanups
@
text
@d2 2
a3 2
		      J A V A   A P A C H E   S S I
                              Version 1.1
d11 2
a12 9
  by the JavaSoft Java Web Server. 

  Additionally there are some extensions which can make your life easier:
    o Support of some traditional SSI-commands (like <!--#ECHO ...-->)
    o An easy way to extend the SSI Servlet to handle any tag (besides
      <SERVLET>) 
    o URL-Rewriting of any <A HREF=..> in the page
      to allow session tracking without cookies.

a18 7
  Changes to 1.0
  ---------------
  Note that the servlet has been renamed from
  Apache JServSSI to Java Apache SSI since it became a project not dependant
  on the JServ project. The package name changed from org.apache.jservssi
  to org.apache.servlet.ssi.

d51 15
a65 35

       Apache JServ
       ------------
       In order to include the Java Apache SSI classes in your servlet 
       engine, you have to enable the server side inclusion by mapping the 
       ".jhtml" URI to the "org.apache.servlet.ssi.SSI" servlet by doing 
       the following:

       In your Apache config file add:
         ApJServAction .jhtml /servlets/org.apache.servlet.ssi.SSI

       Change the /servlets/ part to be the location of your zone.

       In your zone.properties file add:
         wrapper.classpath=/path/to/JavaApacheSSI.jar

       Change the /path/to/ part to be the path to the location of your 
       JavaApacheSSI.jar file.

       If you would like to use the URL-Rewriting feature, use the
       org.apache.servlet.ssi.ParameterPropagatingSSI - Servlet instead.
       Consult the HTML-documentation for parameters.

       Other Servlet Engines
       ---------------------
       Java Apache SSI will work with other servlet engines that meet the 
       requirements defined above. Please see the Apache JServ installation 
       instructions for hints on how to configure your servlet engine in 
       order to do suffix/action mapping.
 
       Additinal Options
       ------------------
       (optional) In order to use traditional SSI directives (<!--#..),
       pass the following init argument to the "org.apache.servlet.ssi.SSI" 
       servlet (by following your servlet engine instructions):
d69 3
a71 3
       Replace /site/root by the top level directory of your site.
       This is the <code>DocumentRoot</code> in your Apache configuration file.
       Beware, the SSI directives are not (yet) fully implemented. 
d78 1
a78 1
  an HTML page, you might write the following:
d92 1
a92 2
  Two attributes are used by the <SERVLET> tag, and they are roughly 
  equivalent: 
a147 5

  Known Bugs
  ---------
  ### TO BE TESTED ###
  Single Thread Model-Problem ?
@


1.4.4.5
log
@Small changes to the docs.

Modified Files:
 Tag: jservssi_1_1-DEV
	README src/java/org/apache/servlet/ssi/SSI.java
@
text
@d95 1
a95 1
       Additional Options
a102 5
       With Apache JServ, you just have to insert a line in your
       zone.properties file:

       servlet.org.apache.servlet.ssi.SSI.initArgs=SSISiteRoot=/site/root

d104 1
a104 2
       This is the DocumentRoot in your Apache configuration file.

@


1.4.4.6
log
@o += Known Bugs section
@
text
@d15 2
d18 1
a18 4
      to allow session tracking without cookies. See HTML-doc.
    o For Developers: An easy way to extend the SSI Servlet to handle 
      any tag (consult the JavaDoc for TagHandlers)

d30 2
a31 6
  on the JServ project. 
  
  The package name changed from org.apache.jservssi to org.apache.servlet.ssi.

  Several bugs have been fixed, it parses faster, uses less memory and has
  a bunch of (nonstandard) extensions.
d42 1
a42 3
       (the use of Apache JServ is highly recommended). Note that the
       JSDK 2.1 isn't supported yet and the SSI servlet may or may not
       work with JSDK 2.1 compliant servlet engines.
d61 1
a61 4
     you'll get JavaApacheSSI.jar
     
     If you grabbed the distribution, the JavaApacheSSI.jar is already compiled
     for you.
d86 1
a86 1
       Consult the HTML-documentation for further information.
d192 2
a193 11

  Servlets implementing the SingleThreadModel interface are known not to
  work together with the Java Apache SSI. This is due to deficiencies of
  JSDK 2.0 which doesn't allow to implement a SSI servlet independent of
  the servlet engine.
  So you either have to 
     o write clean, reentrant servlets (preferred)
     o synchronize your service(), doGet(), doPost() methods (ugly)
   or 
     o write a SSI dependant on your servlet engine (or wait
       for JSDK 2.1)
@


1.4.4.7
log
@o add a way to control client caching: the new 'expires' init argument
  for the servlet allows for providing a time after the generated
  content expires. Negative values can prevent caching completely.
  ('Expires'-Header: RFC2068, 14.21)
@
text
@d55 67
a121 1
  Please see the file called INSTALL
d172 1
a172 4
        }

  For use of the URL rewriting and traditional SSI features see the
  HTML documentation.
@


1.3
log
@updated the documentation so that it is easier to compile jservssi
@
text
@a136 7
  Known bugs
  ----------
  
  Currently, the parameters set for the first servlet on a page will still be 
  set in the next servlet.
  
 
@


1.2
log
@Small typo in the README file.
@
text
@a11 1

d17 1
a17 2
  Project web site (http://java.apache.org).

a23 1

a31 1

d38 6
a43 4
     To compile the source code, go to the src/ directory and type
     
     $ javac -d . *.java
     $ jar cf0 ApacheJServSSI.jar .
d45 3
a61 1

d110 1
a110 2
        }       
       
a136 1
      
d148 1
a148 1
                                           http://java.apache.org/
@


1.1
log
@Initial revision
@
text
@d42 1
a42 1
     The compile the source code, go to the src/ directory and type
@


1.1.1.1
log
@Started the Apache JServSSI Project!
@
text
@@
