History of Changes
Changes are chronologically ordered from top (most recent) to bottom
(least recent)
Apache JServ 1.0b3 - 19 Feb 1999
(Ed Korthof, Stefano Mazzocchi, Vadim Tkachenko, Craig McClanahan, Bernie Bernstein,
Jean-Luc Rochat, Jon S. Stevens)
- JServUtils.parseCookieHeader(): If cookie is send just as: foo; instead of foo=; add cookie
with empty string "". Previously, the cookie name was not being added. (JSS)
- JServSession.putValue(): make call to removeValue(). (CM)
- Fixed bug where sessions would not get expired after finding the first expired one and also
fixed potential sync issues. Thanks to tom@go2net.com for final fix. (JSS)
- Fixed bug where the Apache JServ configuration files would not get auto reloaded.
Patch thanks to dfauth@access.fairfax.com.au (EK)
- JServConnection.java: Workaround known bug in SimpleDateFormat. Thanks to simonb@defacto.peace.co.nz (JSS)
- The official distribution now has the Apache-JServ.jar file compiled with -O instead of -g. (JSS)
- Fixed potential core dump in jserv_mkimg.c. Patch thanks to akuchlin@cnri.reston.va.us. (JSS)
- Added very nice Load Balancing code. Sorry, no included documentation yet. Please see mailing
list archives for now.(BB) (JLR)
- Changed trace.* to log.* (CM)
- Removed references to security.remote.administration. It is now security.selfservlet. (CM)
- Fixed the Apache JServ bug report HTML page. (JSS)
- Added some new properties in the properties file with regards to logging.
(ie: log.queue.maxage, log.queue.maxsize) Changed the thread priority of the logging thread.
This should help fix JVM OutOfMemory errors. (VT)
- Renamed sbin to bin because of changes in Apache 1.3.4. This fixes DSO installation
issues. (EK)
- Added a configure-options file which stores your configure options (VT)
Apache JServ 1.0b2 - 11 Jan 1999
(Stefano Mazzocchi, Jon S. Stevens, Tommy Reilly, Markus Mayer)
- Fixed month off by one logging bug in jserv_utils.c. Thanks to Markus Mayer
<mmayer@iname.com>. (JSS)
- Fixed some small bugs due to an internal bug of Windows VISE installer. (SM)
- Use apxs to find include dirs. (TR)
Apache JServ 1.0b1 - 25 Dec 1998
(Stefano Mazzocchi, Vincent Partington, PierPaolo Fumagalli, Radu Greab (1), Hendrik
Schreiber, Ed Korthof, Ross Golder (2), Tim Williams, Paul Phillips, James Cooper, Hans
Bergsten, Jon S. Stevens, Vadim Tkachenko, Tommy Reilly, Hasan Bramwell)
- Fixed a bug in configuration.in as pointed out by Hasan Bramwell <hasan@pi.pro.ec>
(JSS)
- Fixed a compliance bug in ServletRequest.getQueryString() returning "" instead
of null. Thanks to Dan Morrill <morrildl@nycap.rr.com> (SM)
- Changed annoying INFO stuff in DEBUG as suggested by Michael Bayne
<mdb@go2net.com> (SM)
- Fixed a bug in HttpServletRequest.getRequestURI() that returned the query string. Thanks
to Dennis Doubleday <dday@fore.com> (SM)
- linux port: DSO and compiling statically into source work (TR)
- JDK tool finding improved per discussions with Vadim (TR)
- JAR added to the above (TR)
- new options --with-apache-src and --with-apache-install replace --with-apache-dir. (TR)
- --enable-apache-conf is real nice about not squashing your apache configuration (TR)
- links are used instead of copying files for static build (TR)
- if DSO support isn't compiled in when doing --with-apache-install it bombs during
configure instead of make. (TR)
- if no apache dirs are specified and we find a candidate in /usr/local/apache the user is
queried to see if they want to use that, the reason I did this is because if you configure
with no options then you may just be interested in the jserv standalone. (TR)
- added scripts and jdepds.jar to src/java to others can use --enable-maintainer-build to
rebuild .deps when adding new files. NOTE: JDeps screws up on one rule, it puts
JServSSI.java twice on a compile line which makes JAVAC bomb out, you have to remove one
of them manually. (TR)
- Mads Volsted Pedersen, mpedersen@247media.com: We found a small bug in the code that
sets the expiration date in cookies (in JServUtils.java search for 1000). The problem is
that by multiplying the age by 1000 as integers you only allow for values smaller than (2
^ 31) / 1000 (roughly 24 days). The can easily be remidied by casting the age to long
before multiplying by 1000. (JSS)
- fixed the jserv-status bug that caused an Apache child to die (EK)
- added magic to configure so that is the JSDK is specified in your CLASSPATH then you
don't have to specify it as a configure argument. Now if we don't find the jsdk.jar
configure will stop with an error message. (TR)
- added some stuff to the CLEANFILES so that a make clean does its job (TR)
- added src/c/.deps to DISTCLEAN as per some guys recommendation on the list (TR)
- replaced Hello.java with Hello.java.in because it now picks up a configure variable so
it can include a link to the manual. (TR)
- Changed texinfo manual name to more appropriate ApacheJServ (TR)
- added texi2html to tree so we can start hacking it to our liking. (TR)
- included html in distro (result of make dist) (TR)
- --with-compressed-jar -> --enable-compressed-jar (TR)
- put apache related stuff in acinclude.m4 in configure.in, now acinclude.m4 has only
macros that are explicity related to our project (how it should be). (TR)
- removed config.h stuff, we weren't using it (TR)
- using jdeps to build, invoke configure with --enable-maintainer-build to build. (TR)
- simplified build process. see manual for how (TR)
- --with-jsdk-dir = tells configure where to find the JSDK classes. (TR)
- removed configure and all .in files (TR)
- added docs/manual start of JServ manual (TR)
- added example servlet should work off the bat (requires specification of jsdk-dir). (TR)
- Fixed a bug in jserv_wrapper_win.c that did not passed correctly the environment
settings (SM)
- Filtered direct calls to JServ as servlet since this could bypass web server security on
JServ-status and be a _huge_ security problem on sites where self-servlet execution of
JServ was left enabled (SM)
- Changed mistaken session timeout log in JServServletManager. Thanks to Jean-luc Rochat
(SM)
- Changed "exceptionTracking" to "exceptionTracing" as noted by Stuart
Ballard <sballard@netreach.net> (SM)
- Changed default mod_jserv log name from "jserv.log" to a more explaining
"mod_jserv.log", now "jserv.log" is generated by the servlet engine
(SM)
- Changed version in formation in the whole package to match updated Apache Group version
(SM)
- Added a few FAQ questions that keep on coming up on jserv-users (SM)
- Disabled authentication in sample configuration files for easier setup but allowed only
localhost to connect as suggested by Ed (SM)
- Changed jserv.properties directive "trace.*" to "log.*" for better
definition (SM)
- Removed frames from jserv-status for use in old and simple HTML browsers and updated
graphic style to match docs (SM)
- Replaced the string constant channel identifiers & keywords with the interface
members (
org.apache.jserv.JServLogChannels
, org.apache.java.io.LogWriter
);
fixed the NullPointerException
when the log was enabled, but the file not
specified; made nicer the interruption handling for the background logger thread (now it
flushes if interrupted). (VT)
- Updated docs, cleaned up distribution directory, added win32 bat scripts, fixed javadoc
bugs and few other things preparing for release (SM)
- If the servlet was called as alias, the alias name gets logged along with a class name
(provided by
javax.servlet.GenericServlet#log
). (VT)
- Log messages don't go through AJP any more, ending up in whatever log file specified as
trace.file
in jserv.properties
. Logger records the channel identifier in the trace file
(you can switch it off, too). Possible improvement because of eliminated synchronized
access point on the critical path. Fixed NullPointerException
on shutdown
with the log turned off, thanks to Miranda Robson. (VT)
- Misc improvements to the wrapper (better handling of parameters, avoiding endless
spawn/die cycles, reliable operation under Unix, etc.). (EK) Thanks to Dave Galloway ()
and John Kelly () for help with this.
- Fixed trace file creation bug: JServ failed to start if the trace file didn't exist.
(VT)
- Added logging of session creation, using 'servletManager' log channel. (RG2)
- Introduced the background logging. Now the log processing can be made arbitrarily
expensive, because happens in a separate thread with minimum priority. (VT)
- Added 'session.checkFrequency' parameter. Corrected a problem where multiple
initArgs/startup servlets were causing ClassCastExceptions. Added some debugging of the
parsing of the zone configuration file. Fixed a few minor typos. (RG2)
- Improved an error condition handling for the case of a bad port specified in
jserv.properties
:
now both wrapper and JServ will complain in the log about the bad value and it will be
correctly reset to default port. Also, eliminated the asynchronous handling: on the
wrapper side, instead of resetting the bad value the fatal error condition was raised.
(VT)
- Fixed the configuration bug and changed the default behavior. Now
configure
can properly resolve the java
binary location (there was apparently an old
leftover bug). If --with-jdk-home
option was specified, it overrides the
value of JAVA_HOME
variable (used to be the other way around) (VT).
- Fixed bug where JServ was not setting its group ID before running the Java VM. (EK) Bug Id: mod_jserv/3021
- Changed ApJServErrorLog to ApJServLogFile in jserv_utils.c. Thanks to Eric
<eric@dev.unibiz.com>) (JS)
- Fixed bug where PATH_INFO was being used as part of the servlet name. Thanks to Trung
Tran-Duc . (RG2)
- Applied patch suggested by Alan Sparks that formats the HTML table produced by
jserv_status.c (JS)
- Applied patch suggested by Per Landberg <Per.Landberg@lule.frontec.se> which
corrected a problem parsing initArgs where a value contained an equals character. (RG2)
- Fixed problem in request input handling that wasn't counting for unfinished read().
Thanks to Trung Tran-Duc <trung.tranduc@prague.ixos.cz> and Simon Levitt
<Simon.Levitt@uk.worldpay.com> for pointing out and writing a solution (SM)
- Fixed problem with Sessions, where cookies were not being parsed correctly. (RG2) Bug Id: mod_jserv/3035
- Fixed error parsing initArgs when whitespaces are present. Thanks to Carlos Amengual
<webmaster@healthnet-sl.es> (RG2) Bug
Id: mod_jserv/2963
- Fixed bug in Configurations where parameters spanning multiple lines (split with
backslash) were not parsed correctly. Thanks to Carlos Amengual
<webmaster@healthnet-sl.es> (RG2) Bug
Id: mod_jserv/2962
- Fixed illegal access to private members from inner classes of JServConnection. Thanks to
Ari Halberstadt <ari@shore.net> (RG2) Bug Id: mod_jserv/2855
- Change printing of IP address to avoid big-/little- endian assumptions, and to always
print correctly for the current architecture (using inet_ntoa). (EK, JSS)
- If file was zero length, jserv_readfile() (C code) would try to print error message with
filesize instead of filename. We already know it is zero, so the error was a bit strange.
(JSS)
- Added a small README file to src/java, cleaned up and fixed bugs in the Makefile and
Makefile.java.bat in src/java. (JSS)
- Added IfModule directive around example Apache 1.2.x configuration in httpd.conf. (JSS)
- Fixed small compile bug in jserv_compat.c to make it compile with Apache 1.2.x. (JSS)
- Added documentation for Apache 1.3.x and Apache 1.2.x in the src/c/README file. (JSS)
- Fixed a bug that prevented mod_jserv to automatically start JServ under win95. Pointed
out by SM (PF)
- Added error control on file availability in JServSSI to prevent internal server errors
when SSI file was not readable or not accessible or not existing (SM)
- Fixed bug reported by Brian Millett, bpm@ec-group.com where the last env[] was not being
set to null in jserv_wrapper_unix.c. (JSS)
- Fixed bug that prevented the use of JServ without a secret key when authentication was
disabled. Thanks to Remy Amouroux to point it out (SM)
- Forced JServSSI to close its output stream. (HB) Bug Id: mod_jserv/2594
- Fixed invalid domain in session cookie bug. (HB) Bug Id: mod_jserv/2593
- Fixed parameters enclosed in single quotes that didn't work bug. (HB) Bug Id: mod_jserv/2592
- Fixed cookie getMaxAge() overflow bug. Thanks to Ari Halberstadt <ari@shore.net>
(RG2) Bug Id: mod_jserv/2800
- Fixed session id generation. Security flaw: access could have be gained by guessing a
user's cookie. Design flaw: it could have been possible for more than one user to be given
the same cookie. Thanks to Geoff Smith <gsmith@webventures.com.au> (RG2) Bug Id: mod_jserv/2794
- Removed HTML fanciness from JServ servlet as mod_jserv/jserv_status will encapsulate
those dynamic data in a coherent manner with Apache side (SM)
- Added JServ directive security.remote.administration for control of servlet behavior
(default is disabled for security reasons) (SM)
- Fixed a NullPointerException throwing in JServConnection.sendError() where log was
disabled (SM)
- Upgraded JServ servlet behavior and made it the starting point for future work on remote
control (SM)
- Moved SGMLTag from org.apache.java.sgml into org.apache.java.util for better adhesion to
Java classpath (SM)
- Moved JServClassLoader into org.apache.java.lang.AdaptiveClassLoader and removed tracing
methods after careful profiling (SM)
- Upgraded documentation and changed "JServ" to "Apache JServ" for
legal reasons.
- Made JServ extend HttpServlet and unified servlet testing and jserv status in a single
servlet (SM)
- Added JServStatus location to mod_jserv to inspect the JServ configurations on the
Apache side (PF)
- Totally rewritten mod_jserv for easier Unix/win32 porting and added support for multiple
protocol, multiple jservs. Protocol pluggability is introduced to reduce the overhead of
future changes and permitting the coexistence of different JServ versions on a single
environment (PF)
- Changed host.properties to zone.properties (SM)
- Changed starting behavior of both JServServletManager and JServSTMStore to match servlet
zone behavior. (SM)
- Changed JServ behavior from a per-virtual host to a per-servlet zone basis. Many virtual
hosts may now share a common servlet zone. (also needed for future security enhancements)
(SM)
- Removed the need for standard in/out/err streams. JServ does its own log/trace/error
management while sending servlet logs and receiving signals on the authenticated socket.
(SM)
- Changed authentication method (using the one proposed for AJPv2.1) and changed the
protocol name to AJPv1.1 to match this change (SM)
- Added a bunch of MIME types to avoid need of callback in ServletContext.getMimeType()
method (SM)
- Added test servlet to give installation feedback to users (SM)
- Added comments on jserv.properties and host.properties file placed under ./conf (SM)
- Totally rewritten JServ.java to make it more static and used JServ thread as signal
handler after removing JServSignal (SM)
- Fixed a bug that caused not to comply with the cookie spec since it was causing cookie
to never be set for certain domain names. (JC)
- Changed Makefile (RG2)
- Added code to the log the JVM's pid to a file before exec-ing the JVM. (PP)
- Changes for SGMLTag (Removed unnecessary recursion in comment-parsing code addition of
SGMLTag, Further restored original efficiency by no longer duplicating entire page each
time a new comment was encountered, Improved case-in/sensitive handling of parameter
values to allow for both case-insensitive applications (SGML) and case sensitivity (as in
SERVLET tag initialization parameters). Further protected integrity of parameter values by
only returning enumeration, not raw data structures (hashtable) (TW)
- Fixed a bug where the 'req.getSession(true)' statement returns null, causing a
subsequent NullPointerException (RG2)
- Allow buffering to be turned off, by setting the header "Servlet-Buffer: off".
With this, when the output is flushed it's sent to the client (EK)
- Changed token separating string from ":" to
System.getProperty("path.separator") to avoid "c:" problem under Win32
systems and created a property envelope named org.apache.java.util.Configurations(SM)
- Modified JServInputStream to return EOF at the end of the header (RG1)
- Modified JServClassLoader to check if a file from ServletAlias repository is really a
zip/jar archive (RG1)
- Added a small fix to JServClassLoader to reload classes if they are modified (it worked
only for new versions) (RG1)
- Added HTTP Session timeouts (can be set in per-virtual host config with
jserv.session.timeout, defaults to 1800000 (30 minutes)) (VP)
- Changed JServ.invalidate() to send HttpSessionBindingEvent to all values that want it
(VP)
- Updated servclasses.zip to jsdk.jar, according to newer JSDK conventions and placed it
under ./lib. (SM)
- Fixed a bug where request.getSession(true) would return null (RG2)
- Very minor documentation fixes (RG2)
- Allow buffering to be turned off, by setting the header "Servlet-Buffer: off".
With this, when the output is flushed it's sent to the client (EK)
- Added "disable authentication" as default in standalone mode (EK)
- Added MODULE_MAGIC_NUMBER to mod_jserv around compat.h (EK)
- Fixed some problems into JServLock (HS, RG1)
- Added SingleThreadModel support (RG1)
- Added Win32 support for mod_jserv (PF)
- Added Known Bugs and Wanted feature list in the docs (SM) (suggested by RG2)
- Fixed JServ.c (standalone) to be compatible with name changes (VP)
- Added init timeout property in JServServletManager (jserv.init.timeout) (SM)
- Changed timeout properties in JServServletManager from jserv.timeout to
jserv.destroy.timeout (SM)
- Added timeout on servlet init() to avoid possible stall (SM)
- Changed mod_jserv.c to start org.apache.jserv.JServ class (SM)
- Changed name of main method container from JServHandler.java to more reasonable
JServ.java (SM)
- Changed license to state JServ is a product of the Java Apache Project (SM)
- Changed manual mode to standalone mode and renamed its directory (SM)
- Created a new package org.java.jserv.servlets and moved EnvDumpServlet and JServSSI into
it (SM)
- Moved SGMLTag into org.apache.java.sgml (SM)
- Created packages under org.apache.java.* to extend java.* apis (SM)
- Changed the tracing capability by removing JServDebug and unifying them with LogWriter
(SM)
- Updated protocol to version 1.1 to match new behavior(SM)
- Changed command line parameters and configuration behavior (now needs a configuration
file) (SM)
- Changed mod_jserv to allow parameters to be passed to JServ executable (not only to Java
interpreter) (SM)
- Unified documentation: merged every document into a coherent HTML structure (SM)
- Changed directory structure (SM)
Apache JServ 0.9.11a - May 19, 1998
(Ian Kluft, Ross Golder, Vincent Partington, Roger Zeng, Jon Stevens, Brian Jonnes, Ed
Korthof)
- Added INSTALL, a simple walkthrough for setting up JServ (EK)
- Moved jserv.autoreload.file, jserv.autoreload.classes, jserv.init.timeout, and
jserv.destroy.timeout to per-virtual host configuration file (EK)
- Allow turning tracing on or off in the .properties file (for automatic apache, this
directive is required for this: ServletGeneralProperties) (EK)
- Added ServletManagerHostName, an alias corresponding to the name in jserv.hosts list
(EK)
- Replaced ServletHost with ServletVMHost (ServletHost is now deprecated) (EK)
- Added doc/ModeOfOperation file (JS, BJ)
- Added simple timeout parameter to prevent 'hostile servlet' problem (RG)
- Installation instructions in README now differentiate Apache 1.2/1.3 (IK)
- Only pass TZ environment variable when it's there (VP)
- Expanded notes in README about use of servclasses.zip (IK)
- Fix null pointer in JServConnection on empty POST request (RG)
- Allow ServletEnvironment directive to make assignments (VP)
- Fixed bugs with servlet init() and destroy() methods in JServSSI (RZ)
Apache JServ 0.9.10a - February 13, 1998
(Ed Korthof, Ian Kluft, Jon Stevens, Francis J. Lacoste, Hanan Herzog, Stefano Mazzocchi,
Vincent Partington)
- Updated Apache::Servlet perl module to catch up with protocol tweaks (IK)
- Fixed Makefile to install JavaDoc files for either JDK 1.1 or 1.2 (IK)
- Added properties to control autoreload behavior
- Added a workaround for SimpleDateFormat bug (FLJ)
- Added simple timeout on write lock before destroying servlet (FLJ)
- Fixed depreciated error in JServSSI.java (JSS)
- Fixed some Javadoc compilation errors (JSS)
- Closed zip file to prevent leaking file descriptors (HH)
- Implemented session handling and jsdk 1.1 stuff (FLJ)
- Bundled JavaSoft Servlet API's 1.1
- Added missing javadoc-generated files to the Makefile (IK)
- Added sample EnvDumpServlet (IK)
- getRequestURI() uses REQUEST_URI if available (Vincent Partington)
- GATEWAY_INTERFACE now reports JServ version instead of CGI version (IK)
- Added pseudo-attribute "attribute_names" (IK, VP)
- Fixed attribute prefixes to be "org.apache.jserv" to match the classes (VP)
- Fixed strtok problem in readConfigByStdin()
- Renamed SSIServlet.java to JServSSI.java (JSS)
- Added Apache::Servlet Perl5 module so mod_perl can call Java Servlets (IK)
- Remove newlines in Servlet-Logs lines (logging data) sent to Apache (SM)
- Changed LIFO order to FIFO for logging data (SM)
- Remove newlines from headers in general
Apache JServ 0.9.9a - January 20, 1998
(Francis J. Lacoste, Martin Pool, Jon Stevens, Ed Korthof, Ian Kluft, Adam Messinger)
- Skipped 0.9.8 version because of the number of new changes as well as confusion over
0.9.8 and 0.9.8-dev naming conventions (JSS)
- Added a sample configuration to the README file (IK)
- Modified Makefile to create subdirectories as needed (IK)
- Added Javadoc comments to ServletRequest, HttpServletRequest, ServletResponse,
HttpServletResponse, ServletConfig, and ServletContext
- Tracing of several parts of JServ can be turn on or off using a bitmask configured via a
system property.
- JServServletManager now has synchronized methods, so synchronization doesn't need to be
done on the Hashtable in JServContext
- JServServletManager now restarts itself when its property file is changed
- Correct behavior in a few methods to match specification more closely : getIntHeader,
getDateHeader, getServlet.
- Add a top-level Makefile that makes and installs code and documentation
- Put back classes directory and added doc.
- Can escape = and , in init parameters.
- Misc performance improvements
- Remove creation of Integer in readHexLine(). (AM)
- Fix some documentation in JServConnection. (MP)
- Allow Java VM to reside on a separate machine from the webserver
- Changed restarts to use sockets rather than STDIN for reliability
- Fixed a bug in the automatic mode initialization (FJL)
- Turned tracing off by default in JServClassLoader.java (JSS)
- Changed from DataInputStream.readLine() to BufferedReader.readLine() with a bufsize of 1
in JServHandler.java to avoid deprecated code warning (JSS)
- Added the actual Module line to the README that should be copied into the Apache
Configuration file (JSS)
- Fixed small typo on line 397 of mod_jserv.c (changed } to ]) (JSS)
- Fixed a bug in JServConnection.java where getAttribute() had a +1 wrongly inserted.
Thanks to Svein Omdahl <sveint@link.no>. (JSS)
- Renamed TestClassLoader.java to ClassLoaderTest.java to be more clear (JSS)
- Changed javac path in Makefile to be more generic (JSS)
- Commented out the servlets.properties file examples to prevent possible accidental
misconfigurations (JSS)
- Removed duplicate examples where it made sense from the servlets.properties file (JSS)
- Fixed a typo in the servlets.properties file (JSS)
- Fixed a typo in the README file (reault->result) (JSS)
- Removed classes directory (JSS)
- Moved classes from package apache.jserv to org.apache.jserv to comply with JLS
- Fixed free() bug in manual/jserv.c
- Determine whether whether the URL scheme should be 'http' or 'https' by looking for the
Stronghold environment variable 'SSL'
- Servlets loaded from ServletAlias directive are loaded via a custom ClassLoader
- Classes loaded by the ClassLoader are reloaded whenever they are modified
- Servlets from different virtual host are loaded in different name space and cannot see
each other
- ServletProperties is now a virtual host directive
- Loading of startup servlets is done in a different thread and after binding the socket
to prevent two simultaneous JServ process to initialize servlets
- Added a ServletBinaryArgument directive to pass additional command line arguments to the
Java interpreter
- Added servlets.default.initArgs property in the servlet properties file that give init
arguments available to all servlets in the virtual host
- Init arguments for servlet invoked by class name are now specified in a file named
<servlet_classname>.initArgs
- Added sample configurations files
- Manual JServ is now configured by a property file to handle multiple virtual host
- Manual JServ write its pid to a file
- Added simple shell scripts to start/stop/restart manual JServ
- Updated doc files to reflect recent changes
- getDateHeader is now RFC2068 compliant and handles three date format
- Added <SERVLET></SERVLET> tag support in SSIServlet.java
Apache JServ 0.9.7a - September 8, 1997
(Alexei Kosut)
- Fixed some compiler warnings (AK)
- Correctly block signals when initializing, instead of ignoring them. This should prevent
another race condition on startup or restart (AK)
Apache JServ 0.9.6a - August 28, 1997
(Alexei Kosut, Orjan Reinholdsen, Rhys Jones)
- javax.servlet.ServletRequest.getAttribute("apache.jserv.<var>") returns
a String with the contents of CGI environment variable <var>. e.g.
getAttribute("apache.jserv.SERVER_SOFTWARE") (AK)
- Fixed problem with path info when using ServletAlias to point to a zip/jar file (OR)
- Added ServletEnvironment directive to pass arbitrary environment variables to Java (AK)
- The jserv manual program now passes all environment variables to Java, not just PATH,
CLASSPATH and TZ (AK)
- Correctly allow virtual servers to use ServletAlias() (RJ)
- Avoid a race condition in mod_jserv.c when receiving a signal. (AK)
- ServletRequest.getRealPath() works correctly (AK)
- manual/jserv can now take -J arguments (after the first argument), which it will pass on
to Java (AK)
Apache JServ 0.9.5a - August 13, 1997
(Alexei Kosut)
- Added "watcher" process to handle signals and allow graceful
restart/termination of servlets (AK)
- New C program for use with manual mode (see manual/README) (AK)
- Moved Java classes and source to the classes directory (AK)
- Split Java source into several files instead of one (AK)
- Added Makefile to classes/apache/jserv (AK)
- Work around bug in the Linux JDK's java.net.Socket class (AK)
Apache JServ 0.9.4a - August 7, 1997
(Alexei Kosut)
- Default properties file changed to conf/servlets.properties (AK)
- Support for servlet aliases in servlets.properties (AK)
- Can now load servlets on startup (servlets.startup property) (AK)
- New ServletErrorLog directive can log System.err output from Java (AK)
- Exceptions and Errors caught from servlets will print a stack trace to ServletErrorLog
if active (or with -t switch in manual mode)
Apache JServ 0.9.3a - July 31, 1997
(Alexei Kosut, Jordan Mendelson, Ian Kluft)
- Fixed socket code so it will work with Linux (JM)
- Added more secure auth string, ServletAuthExport directive (IK)
- getServlets() now returns the correct object (AK)
- sendError() now closes the connection directly after sending the error (AK)
Apache JServ 0.9.2a - July 30, 1997
(Alexei Kosut)
- Added ServletManual directive and "-m" flag to JServHandler, to allow for
manual starting/stopping of JServHandler (AK)
- Put additional check into JServHandler to ensure that the request comes from the local
host (127.0.0.1) (AK)
- Properly handle exceptions and errors generated by the servlet (AK)
Apache JServ 0.9.1a - July 30, 1997
(Alexei Kosut)
- Fixed so mod_jserv.c will work with Apache 1.2 (AK)
- Made sendError(int) work correctly (AK)
Apache JServ 0.9a - July 29, 1997
(Alexei Kosut)
Copyright (c) 1997-98 The
Java Apache Project.
$Id: changes.html,v 1.55 1999/02/19 20:53:13 jonbolt Exp $
All rights reserved.