History of Changes
Changes are chronologically ordered from top (most recent) to bottom
(least recent)
Please read the document
upgrading from 1.0 to 1.1.x
Apache JServ 1.1.2 - 17 June 2000
(Jon S. Stevens, Henner Zeller, Jean-Luc Rochat)
- change the allowed host for the jserv status page (/jserv/) from
'localhost' to '127.0.0.1'. localhost does not work, if HostnameLookups
isn't enabled in httpd.conf or on badly configured systems (Default
Redhat installation without hostname used to have localhost.localdomain
in its /etc/hosts which doesn't match 'localhost').
So using the IP address here will work better in many cases ..(HZ)
- fixed some issues with load balancing and uneven distribution
of servers as a result of those that are marked as down. thanks
to Christos Zoulas (JSS).
- Fixed Bug Id: mod_jserv/6108
JservSessionId is not found in Query -> Load balancing fails when cookies are not used
Thanks to Jerome Waibel. (JLR)
- allow ApJServEnvVar to work in virtual hosts (useful with SSL).
Thanks to Antonio Merighi for the fix.
(JLR)
- Fixed Bug Id: mod_jserv/6087
encoding should be ISO-8859-1 instead of ISO8859_1
Thanks to tim.landscheidt@gmx.de. (JSS)
- class reloader session serialization hack: fix bug where the hashtable
might not have been sent through serialization, but is expected. (JSS)
- Fixed Bug Id: mod_jserv/6074
JServ RPM packaging not complete
Thanks to apeac@byu.edu. (HZ)
- minor documentation fix in how.to.security.html.
An example was false when it should have been true.
Thanks to George Armhold. (JSS)
Apache JServ 1.1.1 - 18 May 2000
(Jon S. Stevens, Henner Zeller)
- various RPM related changes to improve the process. Uses the latest
version of the OSS JSDK library now.
- Prevent NPE when the classloader is not properly created as a result
of incorrect setup. Give a big list of things to check as an error
message. (JSS)
- The jserv.properties and zone.properties files can now "include="
other properties files by specifying the full path to the other
properties files. (JSS)
- The apache configuration file (Makefile.config) contains the
information OSDIR, this tells where to look for specific includes, but
jserv used a fixed path instead.
Thanks to
Jean-FrŽdŽric Clre.
(JSS)
- Fixed a problem in the INSTALL documentation for building DSO.
Thanks to Manoj for noticing this. (JSS)
- Fixed Bug Id: mod_jserv/6099
Problem with serialization of sessions on class reload
Thanks to Babak Kunze. (JSS)
- Fixed possible problem with SessionID-uniqness on servers with
heavy load (HZ)
Apache JServ 1.1.1b1 - 11 April 2000
(Stefano Mazzocchi, Jon Stevens, Craig McClanahan, Jean-Luc Rochat, Ed Korthof,
Pierpaolo Fumagalli, Bernie Bernstein, others...)
- Win32 errors fixed (added WinSock 2 and removed bug in generated jserv.conf)
Thanks to punkytse@geocities.com (PF)
- Patchs to get jserv running on an BS2000 (EBCDIC mainframe from Siemens), along with several
bug fixes. Integrated a proposed patch to solve Jserv polling interval, defunct JVM.
Thanks to Jean-Frédéric Clère (JSS)
- Added jserv_shmedit utility for modifying the shared memory file used in load balancing
Thanks to Christos Zoulas (JLR)
- extend ajpv12 : allow dynamic configuration of environment variables that
can be sent to JServ (or Tomcat). Adds a new parameter : ApJServEnvVar localvarname remotevarname
Will allow more flexible configuration (thanks to Ben Laurie and Aaron Stromas for pushing ideas).
creates a new parameter : ApJServVMInterval (JServ polling frequency) that
will be used to distinguish the VM timeout/VM test frequency.(JLR)
- Fixed issues with SSL environment variable passing (JLR)
- Fixed bug when I access the servlet via Apache the getRequestURI
returns the URI and the query strings.
Thanks to Freddie Mendoza (JSS)
- fix for remote_host lookup. you have to have HostNameLookup On in the httpd.conf file
for this to work properly.
Thanks to Tyler Morrison (JSS)
- fixed potential buffer overflow in jserv_balance. thanks to JSS for the find (JLR)
- solved (at least I think) the double initialization (Unix) due to Apache
defensive startup. We now start the JVM only in the 2nd pass.
This works well if you take care to set the :
ApJServVMTimeout value in jserv.conf big enough to start & initialize the
servlet engine + servlets loaded at startup.
This value is for me 10 seconds to start Tomcat, JServ works with 4. (JLR)
- Fixed Bug Id: mod_jserv/5889
(jar files created with a ./org/ vs. org/)
Thanks to Ian Darwin. (JSS)
- AdaptiveClassLoader, now allows access to the lastModifiedTime of the .class file and
also allows you to pass in a class loader in the constructor.
Thanks to Adam Heath. (JSS)
- Fixed issues with using a wildcard in the repositories.
Thanks to Mike Jennings. (JSS)
- fix for issues with loading resources from zip files.
Thanks to Joel Bartley. (JSS)
- fix for filtering of addresses. it actually can be null if the
security.allowedAddress=DISABLED
Thanks to dan wilks. (JSS)
- Fixed issue when bindaddress is "*", I ran into a problem where running JServ -s
do to a clean stop of the JServ process wouldn't work. The problem as
far as I can tell is that "bindTo" returns null when bindaddress is
"*."
Thanks to bill odonnell. (JSS)
- Fixed bug where backlog= setting was being used for the maxconnections. (JSS)
- It was possible to be thrown a StringIndexOutOfBoundsException from
HttpUtils.parseQueryString(), so we updated its callers to catch
it. This happened when a query string contained a '%' as one of the
last two characters. (BB)
- RH 6.2 has a default apache installation with --enable-EAPI so build with it enabled
in the .spec file (JSS)
- Added new feature to allow people to set the domain= portion of a session cookie. (JSS)
Apache JServ 1.1 - 14 January 2000
(Stefano "Tabs" Mazzocchi, Vadim Tkachenko, Jon "Plonk" Stevens, Henner Zeller,
Michal Mosiewicz, Craig McClanahan, Jean-Luc Rochat, Ed Korthof, Pierpaolo "CVS" Fumagalli,
Sean Dowd, Stephane Carrie, Damian Fauth)
- Fixed issues with JServSTMStore thanks to
Radu Greab. (JSS)
- Fixed Bug Id: mod_jserv/5126 Thanks
to mdusseault@home.com. (JSS)
- Fixed Bug Id: mod_jserv/5266 Thanks
to Peter Bryant. (JSS)
- Lots of fixes in the JServInputStream thanks to
Jon Smirl. This should fix issues with
POST data as well as file uploads.
- Fixed Bug Id: mod_jserv/5825 Thanks
to Jon Smirl. (JSS)
- Fixed Bug Id: mod_jserv/5498 Thanks
to Jon Smirl. (JSS)
- FEATURE: Since jserv assumes that resources could only reside in
directories, my servlets can't load files or images from jar files. With
the following patch (against jserv-1.0, but should apply cleanly against
1.1b1 except for some line number fuzz), the AdaptiveClassLoader looks
jar files, too.
Hakan Tandogan
- FEATURE:
I have made a modification to the Apache JServ source and I have added my
own class "org.apache.java.io.SimpleFileFilter"
What my modifications do is allow using wildcards when specifying
repositories for a servlet zone.
Example:
repositories=/usr/local/servletzone1/*.jar,/usr/local/servletzone1
adds all of the files with a .jar extension in the /usr/local/servletzone1
directory as well as the /usr/local/servletzone1 directory to the given
repository.
This way, if a given user using a particular servlet zone has a complex
enough servlet, they can simply package their servlet up into a .jar file.
If the same user updates their servlet, they can create another .jar file
and upload it without having to restart the servlet engine.
Mike Jennings
- FEATURE: A little patch to allow for using "jserv-servlet" handler with
apache's SetHandler command. So, now you can use following:
ApJServMount * whatever
#This sets a default engine configuration that is used
by jserv-servlet handler, when it is called as a result
of SetHandler
SetHandler jserv-servlet
I would call it a quick hack only, but hopefully some will find it
very practicall. You are now free to decide what URL's are passed to
servlet engine, and what are kept served by apache.
Note that you may configure your tomcat to share a default context with
apache, so apache will serve static files, while tomcat will do more
inteligent jobs. (MM)
- Fixed Bug Id: mod_jserv/5569 Thanks
to josh larios. (JSS)
- removed confusing watchdog messages for people not usinng load-balaciing.
was : [16/10/1999 22:01:42:011] (EMERGENCY) jserv_mmap: cant open (null) errno=14
(Jean-Luc)
- jserv_utils.c: avoid memory leak by making sure not to create a pool and then
fail to free it. if logging is off, the pool won't be created at all,
which is preferable.(EK)
-
- Finally correct problems with requestURI.
It seems like the meaning of r->uri, r->unparsed_uri and things like
ap_unparse_uri_components is different in different versions of apache.
(MM)
- Fixed Bug Id: mod_jserv/5270 Thanks
to Jonathan.Budar-Danoff. (JSS)
- Fixed Bug Id: mod_jserv/5534 Thanks
to john chandy. (JSS)
- Fixed Bug Id: mod_jserv/5577 Thanks
to jan koktan. (JSS)
- Fixed lots of issues with gcc -Wall turned on. (JSS)
- Fixed Bug Id: mod_jserv/5268 Thanks
to Steve Drach. (JSS)
- Better HPUX support in the Makefiles for DSO. (JSS)
- Better FreeBSD support in the Makefiles for DSO. Thanks to
Ryan Morgan (JSS)
- Fixed Bug Id: mod_jserv/5295 Thanks
to Dave Peterson. (JSS)
- Relative paths to the Apache src directory should now work properly. (JSS)
- Fixed Bug Id: mod_jserv/5320 Thanks
to ypsilon@mindless.com. (JSS)
- Fixed Bug Id: mod_jserv/5436 Thanks
to Jon Christiansen. (JSS)
- Fixed Bug Id: mod_jserv/5197 Thanks
to erick rudeyak. (JSS)
- Added ability to specify -DEAPI in the configure script. This is needed for compiling
Apache JServ with servers that are using EAPI, such as SSL servers. (JSS)
- We require Apache 1.3.9 or higher (JSS)
- add security.allowedAddresses=DISABLED option. (use with care: allows all Apache
(not only yours) servers to connect to this JServ). (DF)
- Allow signal() to bind to the same IP @ than JServ. (SD)
- added 2 new fields in the ajpv12 protocol.: SSL_CLIENT_DN and SSL_CLIENT_IDN.
These changes are not compatible with previous versions of JServ. Thes fields are here
for ajpv11 compatibility, and may be not used in future versions. (JLR)
- Set ApJServMountCopy to "on" by default as described in the doc.(JLR)
- Fixed SEGV (load-balancing & Virtualhost). Thanks to S.Carrie.(JLR)
- Fixed Bug Id: mod_jserv/5216
added (back) the bindaddress=* option : allows JServ to listen to all IP addresses, still allowing it
to listen to only one. The default is still to bind to "localhost". Thanks to Skip Carter. (JLR)
- Fixed Bug Id: mod_jserv/5267
Thanks to Steve Drach (JLR)
Apache JServ 1.1b3 - 25 October 1999
(Stefano "Tabs" Mazzocchi, Vadim Tkachenko, Jon "Plonk" Stevens, Henner Zeller,
Michal Mosiewicz, Craig McClanahan, Jean-Luc Rochat, Bernie Bernstein,
Ed Korthof, Pierpaolo "CVS" Fumagalli)
- Added new make/install scripts for the Win32 distributions (PF)
- Fixed some bugs with make install not creating the directories
for the documentation properly (JSS)
- Added javadoc generation to the top level make file. You can re-build
the javadoc by typing "make javadoc" (JSS)
- Eliminated the need to have
test(1) -nt
(newer than)
option supported by the default shell. Instead, find(1)
now
has to support the -newer
option, which seems to be there
for all the platforms. (VT)
- Load balancing code cleanup. (JLR)
- Fixes for Win32 compiler errors. Thanks to
Ian Holsman for the help.
(JLR) (PF) (JSS)
- Added JServInputStream.available() because JDK 1.2 InputStream
says that we should implement it ourselves. This should also be fixed in
ServletInputStream in the JSDK someday. Thanks to
mdusseault@home.com. (JSS)
- Really fixed the issue with requestUri behaviour. It should now work as
it did in 1.0. (MM)
- Fixed issue with the AdaptiveClassLoader and file URL's (SM)
- Fixed a bug where save-install.sh was not executable. (JSS)
- Fixed issue with ./conf/save-install.sh failing because it moved
files instead of copying files. (JSS)
Apache JServ 1.1b2 - 8 October 1999
(Stefano "Duke" Mazzocchi, Vadim Tkachenko, Jon S. Stevens, Henner Zeller,
Michal Mosiewicz, Craig McClanahan, Jean-Luc Rochat, Bernie Bernstein,
Ed Korthof, Pierpaolo "Flux" Fumagalli)
- Added new feature to the builtin status screens that allows you to view and modify the
the state of the shared memory file when using load balancing. (JLR)
- Fixed Bug Id: mod_jserv/5113 Thanks
to Kazuhiro Kazama for the find and
fix. (SM)
- Fixed Bug Id: mod_jserv/5093 Thanks
to Aart de Vries for the find and
fix. (JSS)
- Fixed Bug Id: mod_jserv/5092 Thanks
to Aart de Vries for the find and
fix. (JSS)
- Added checks to make GNU make a required tool for installation. (JSS)
- Changes to make it easier for people to do RPM's (HZ)
- Updated load balancing documentation for 1.1 (JLR)
- Bug fixes for Win32 compilation. (PF) (MM)
- requestUri behaviour as in 1.0, i.e. returns req->unparsedUri. This should
fix issues with some servlets like Cocoon that depend on old behavior. (MM)
- Fixed Bug Id: mod_jserv/5098 Thanks
to Lars Pedersen for the find and
fix. (JSS)
- Finally closed the issue with the classloader and zones. See below
for more information. Now, ANY objects in your session that are
serializable are restored after the class loader is re-instantiated due to
class reloading. Many many thanks to stuart d. gathman
- fix a bug which may lead to lost sessions when switching off cookie
usage for sessions but the browser still sends the old cookie: it is read,
isRequestedSessionIdFromCookie() is true and encodeUrl() does not rewrite
URLs - bad.So do not read cookies in the first place if session-cookie
support is switched off. (HZ)
- Misc configuration and documentation file changes to help make things easier for
new users.(JSS)
Apache JServ 1.1b1 - 29 September 1999
(Stefano "Camelot" Mazzocchi, Vadim Tkachenko, Jon S. Stevens, Henner Zeller,
Michal Mosiewicz, Craig McClanahan, Jean-Luc Rochat, Bernie Bernstein,
Ed Korthof, Pierpaolo "Quartz" Fumagalli)
- Apache 1.2.x support removed. Please see the
upgrade document for more details. (JSS)
- Fixed potential DoS bug when load balancing is used. Thanks to Cott Lang
for helping troubleshoot the issue. (JLR)
- Fixed potential file descriptor leaks bug when load balancing is used. (BB)
- Fixed Bug Id: mod_jserv/4601 Thanks
to ronald@trustpoint.com for the find and
fix. (JSS)
- Added thread pool code and recycle technology The pool behavior is off by
default since it needs more testing, but I consider it finished. (SM)
- Explicitly check if the "class" to be loaded ends with initArgs and load
it as a standard file in.
Dr. Andreas Wittek (JSS)
- Fixed Bug Id: mod_jserv/4652 Thanks
to Cott Lang for the find and fix. (JSS)
- Replaced the ifdefs _POSIX_MAPPED_FILES by ifdef HAVE_MMAP Apache
standard value. Now freeBSD can use shared memory. This functionnality
was only working on linux & solaris. (JLR)
- Removed bug: ExtendedProperties required to have a space before the
line-continuation backslash (HZ)
- Real limit on maxConnections (previous setting renamed to
security.backlog) (MM)
- Modified the encodeCookie() method of org.apache.jserv.JServUtils.java
to use new Date(1000) instead of new Date(0) when expiring the cookie.
This fixes a bug with some browsers where it would not expire the cookie
properly given a new Date(0). Thanks to
Damian Fauth for tracking
this one down. (JSS)
- Create ApJServVMTimeout : this controls the time given to the VM to
start up and shut down. (EK)
- Put support for ApJServRetryAttempts into AJP version 1.2. (EK)
- Make IsItWorking a bit more dynamic to show that the servlet is indeed
executed (and not cached). Generate a local timestamp. (HZ)
- C code: fix some bogus sleeps
which I'd put in -- thanks to Michal for pointing these out. also,
fix the wait in jserv_shutdown_core to use the configurable
timeout, and implement the SIGTERM / SIGKILL signals so that we
check each second (for up to three seconds), rather than waiting
three seconds (all the time) before checking.(EK)
- C code: better if-modified-since
handling; still needs work on the java side. also, better comments
re: return codes for handlers. (EK)
- By default, the system comes with two zones configured in jserv.conf,
/servlets and /servlet. This should help newbies avoid confusion. (JSS)
- Fixed Bug Id: mod_jserv/4828 Thanks
to Ian Holsman for the find and fix. (JSS)
- Fixed Bug Id: mod_jserv/4790 Thanks
to Ben Kelly for the find and fix. (JSS)
- Fixed Bug Id: mod_jserv/4382 Thanks
to Justin Ashworth for the find and fix. (JSS)
- Corrected a bug of mine on win32 only : the load-balancing algo was always
sending requests to the first JServ. Thanks to Justin Call for pointing this
out, and validating my patch before putting it in CVS. (JLR)
- Removed the decoding of the name/value of the cookies. the spec doesn't say
anything about this being needed and a user complained about it decoding his
data improperly. (JSS)
- Fixed typo in function name...only shows up if JSERV_DEBUG is compiled on.
thanks to Oliphant, Erich
- The status page now takes care of load-balancing configurations.(JLR)
- Support for 1 sessionId/zone in the load-balancing (C side) + adding a
new parameter (JSERV_ROUTE) in ajpv12 for session handling in case of
load-balancing. NB: as the ajpv12 protocol was changed, you need a synch
version of both C & java side. This is maybe not the way to go, but at
least a quick bug fix.(JLR)(BB)
- Make the session string much shorter - it shrinked to 10 character.
This is very helpful for pages which contain many links which are URL-rewritten.
It doesn't contain the full time and the session count anymor, just the
number of bits making it unique enough. Plus a random part with 2.1 G-possibities
to make it immune to attacks. Usses Long.toString(long number, int radix) to
do the base 36 encoding. (HZ)
- Allow for setting whether or not the system uses cookies or not for
handling session state. Default is to use cookies if they can be
used. This is set via the zone.properties:session.useCookies value.
Thanks to Antonio Cotroneo for
initial patch and idea. (JSS)
- Fixed Bug Id: mod_jserv/4901 Thanks
to zingelman@fnal.gov for the find and fix. (JSS)
- Fixed a condition in the case that when
HttpSessionBindingEvent.valueUnbound() is called, the reference to the
session has already been removed and thus, the (this) reference is kinda
useless since the session doesn't exist anymore so, this fix makes it so
that the reference to (this) actually contains the sessiondata and the
sessiondata is then removed at the end of the removeValue() call. (JSS)
- Fixed Bug Id: mod_jserv/4964 Thanks
to Brian Slesinsky for the find and fix. (CM)
- When the instance of the AdaptiveClassLoader is dumped because classes
are reloaded, we used to also dump the sessions that servlets had stored
in memory without care. Now, we attempt to keep those sessions and their data.
Note that only objects which can be found in the system or bootstrap classpath will
be kept. Also, make sure that all of your objects which implement
HttpSessionBindingListener that are stored in the session do not also
implement Serializable or you will have problems. Custom objects (which are only
accessable via repositories= that implement HSBL will now have valueUnbound called
when they are removed after the reload of the ACL.(JSS)
- New protocol version: ajpv12 thanks to (MM). If you are upgrading, make sure to
change the ApJServDefaultProtocol in jserv.conf to ajpv12 and also change wrapper.protocol
in jserv.properties to ajpv12. This new protocol has many speed improvements.
- Fixed: if the session was invalidated the isNew() will throw an InvalidStateException
and the thread will terminate. thx to diego besprosvan
for the fix.
- Fixed Bug Id: mod_jserv/3604 Thanks
to jlilly@ptc.com for the comments. (JSS)
- Logging by severity. Not by the place. (MM)
- If the zone.properties file cannot be read, catch the potential NPE
thanks to florian.kieling@fh-stralsund.de
for catching this. (JSS)
- If log.file cannot be written to, Apache JServ keeps running instead of failing.
In the JServ servlet, a big red notice is shown if logging has been disabled for this
reason (HZ)
- ApacheJServ.spec RPM installer has been updated and works properly now (HZ)
- New Feature: added bindaddress property to jserv.properties. This allows
one to bind Apache JServ to a specific IP address. By default, it is 127.0.0.1.
This feature allows one to have multiple copies of Apache JServ running on the
same machine and same port, but different IP addresses. (JSS)
- Updated the INSTALL document to reflect configure changes (JSS)
- Tons of changes and bug fixes to configure scripts, including updating to use libtool 1.3.3.
Please read the document upgrading from 1.0 to 1.0.1 for
more details on changes with the configure scripts.(VT)(JSS)(HZ)
- Documented jserv.properties: log.channel=[true][false] (VT)
Apache JServ 1.0 - 14 June 1999
(Everybody!!!)
- Thanks to everybody who helped make Apache JServ 1.0 a reality!
Apache JServ 1.0fc1 - 10 June 1999
(Ed Korthof, Bernie Bernstein, Jon S. Stevens, Henner Zeller)
- Fixed bug reported by Paul Gibson <paul@virtualvin.com> regarding
JServConnection.getSession() not checking whether or not the session that it is returning
is valid or not. It will now only return valid sessions. (JSS)
- Fixed Bug Id: mod_jserv/4599 Thanks
to <andreas@ljunggren.net> for the fix and patch. (JSS)
- Fixed Bug Id: mod_jserv/4473 Thanks
to <bakgerman@checkfree.com> for the fix. (JSS)
- Fixed bug in the jserv_watchdog: Set PID in child process rather than parent since there
is no synchronization. (BB)
- Re-wrote JServServletManager.encodeUrl() to handle # in the URI's as well as fix a bug
regarding & usage instead of &. (HZ)
- jserv_wrapper_unix.c: fix use of autoincrement in function argument list -- order of
evaluation is undefined, and the results may not be as intended. reported by Sebastian
Bazley <Sebastian.Bazley@sema.co.uk> (EK)
Apache JServ 1.0b5 - 17 May 1999
(Ed Korthof, Jean-Luc Rochat, Jon S. Stevens)
- Empty lines in configuration files like 'wrapper.classpath=', which the configure
scripts can sometimes produce, are now just ignored. (EK)
- Fixed .initArgs file handling to work with aliased servlets. (EK)
- Fixed lots of issues with the Unix build system. It should now be more robust, report
more information to be more friendly to the users and actually work now. (JSS)
- Fixed win32 port w/o watchdog + small bugfix in ApJServMountCopy with load-balancing.
Thanks to Stephane Carrie <scarrie@maginfo.fr> for finding this bug and giving a fix
at the same time. (JLR)
- Fixed function prototype (for when there is no mmap support) (EK)
Apache JServ 1.0b4 - 30 April 1999
(Jon S. Stevens, Vadim Tkachenko, Stefano Mazzocchi, Craig McClanahan, Jean-Luc Rochat)
- Added Load Balancing documentation and various load balancing bug fixes (JLR)
- Fixed the badly broken GET/POST parsing to be implemented according to the rules defined
in the Servlet API 2.1 spec. (CM)
- Added ApJServLogLevel directive to provide configurable log levels within the C portion
of Apache JServ. Thanks to Philip Guenther <guenther@gac.edu> for the code and
patch. (JSS)
- Fixed Bug Id: mod_jserv/3674 Thanks
to Pawel Pesz <Pawel.Pesz@insert.com.pl> for the fix and patch. (JSS)
- Fixed Bug Id: mod_jserv/4298 Thanks
to Philip Guenther <guenther@gac.edu> for the fix and patch. (JSS)
- Moved JServConnection creation before connection is accepted and cleaned up
initialization parameters. Thanks to Michal Mosiewicz for the suggestion. (SM)
- Added TURBO and PROFILE mode. Turbo mode performance-tuned compilation and profile mode
turns on the method tracing capabilities of instrumented JVM (such as IBM JInsight) in the
JServConnection.run() method. (SM)
- Added better command line interface for standalone mode operation. Now you can shutdown
and restart your servlet engine using the exact same class that is already running. Thanks
to Donald Ball for the idea. (SM)
- Fixed Bug Id: mod_jserv/4169 Thanks
to <erik@adaptations.com> for the fix and patch. (JSS)
- Fixed Bug Id: mod_jserv/4073 Thanks
to Cott Lang <cott@internetstaff.com> for the fix and patch. (JSS)
- Fixed Bug Id: mod_jserv/4104 Thanks
to <akuchlin@cnri.reston.va.us> for the fix. (JSS)
- Changed .jar name again. It is now ApacheJServ.jar. This is a consistency change
so that Win32 and Unix have the same name for this file. (VT)
- Fixed Bug Id: mod_jserv/3976 Thanks
to <eb@softstar.it> for patch. (JSS)
- Fixed Apache 1.2.6 compatibility issue and made it so that future distributions will
include jserv_compat.c which is missing from 1.0b3. Thanks to Matt Feiszli
<matt@weborder.com> for tracking this down. (JSS)
Apache JServ 1.0b3 - 19 Feb 1999
(Ed Korthof, Stefano Mazzocchi, Vadim Tkachenko, Craig McClanahan, Bernie Bernstein,
Jean-Luc Rochat, Jon S. Stevens)
- Fixed bugs in the c/Makefile.am that prevented all of the .c files from being included
in the distribution. (JSS)
- Added ApJServRetryAttempts. Setting this to a positive integer (say between 2 and 5)
means that mod_jserv will attempt to connect to the JVM up to that many times before
returning a server error. It does a 1 second wait between each attempt. This allows you to
avoid server errors during a restart. (EK)
- 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-99 The
Java Apache Project.
$Id: changes.html,v 1.97 2000/06/17 18:57:37 jonbolt Exp $
All rights reserved.