JRun 2.3 Release notes build 135 -------------- - Updated connector wizard to support Apache 1.3.6 on Windows NT build 134 -------------- - Fixed bug in thread handling which could leave no threads listening for new proxy connections, under old JDK versions. - Fixed bug where Session.invalidate() could cause JRun to deadlock - Added new connector allowing SSI-style servlets in Cold Fusion. - Added support for Apache 1.3.6 build 133 -------------- - JRun will not consume the POST data before the servlet has a chance to read it, even for form encoded data - Set default minpoolsize=0 for connectors, allowing NSAPI connector to function properly with multiple daemon processes in NES 3.6. - Installer for windows now sets Registry correctly and prevents respawing - Restart button works properly for JRun taskbar ICON JSP Specific fixes: - Changed Error definition to Exception for JSP pages - Fixed JSP #include to include files at parse time, and now allows inclusion of jsp pages - Fixed newline problem in multiple client side SCRIPT tags - Fixed extraneous newlines for text between a DynamicTaglet body - Fixed NullPointerException for JSPDBResult.getName() build 132 -------------- - Fixed bug in setup wizard build 131 -------------- - Multiple Cookie headers are now handled properly by Apache connector - New sessions are no longer randomly invalidated - Fixed OutOfMemorError when claling request.getRealPath("/") - Fixed RequestDispatcher.include() bug from within a JSP - Templates can now be used as a default document with the builtin web server - JRun Administrator now sets the Session Cookie Max Age and Session Cookie Path parameters correctly in the sessions.properties file. - License key is now updated correctly during installation - req.getScheme() now returns "https" when running under Apache with SSLeay build 129 -------------- - Since JWS and JCP now each use a separate servlet engine, JSP pages invoked with the same URI but through different servers each are loaded, cached, and compiled independently. build 127 --------------- - Headers set with the ServletResponse.setDateHeader() method are now properly formatted UTC dates. If a servlet sets the "Date" or "Server" response headers, these values will be ignored by the ISAPI, NSAPI, and Apache native connectors. Native web servers automatically generate these two headers. - File servlet now reads its properties file location from the jrun attributes in the ServletContext. - Stderr is now redirected before servlets are preloaded. Stdout is redirected after servlets are preloaded. - JRun now allows dynamic class loading outside the servlet directory by specifying a list of servlet directories rather than just one. In /services/jse/jrun.properties, these are given as a comma separated list. - The JRun Web Server now supports HTTP/1.0 style Keep-alive. There is a corresponding checkbox in the JRun Admin page, and property "keepalive.active=[true/false]" in /services/jws/properties/web.properties. Keep alive will generally be used by JWS only if the following conditions are true: - The browser asked for it with a "Connection: Keep-alive" header - The servlet set the "Content-length" header prior to flushing any output - The servlet did not set the "Connection: close" header - The "keepalive.active=true" property exists in JWS's web.properties file - The JRun NSAPI plugin now supports software virtual hosts as defined by NES, with one caveat: virtual path mappings (the "nametrans" directive) will not be processed if they are specific to a virtual host. To give each virtual host its own servlets directory in JRun, use the Multi-home tab for JSE in the JRun Administrator. - The initpoolsize and maxpoolsize parameters are no longer set by default in the native connectors. JRun automatically limits concurrency to the limits established in the jrun property files. For Apache on UNIX, initpoolsize and maxpoolsize must be either 0 or 1, since each httpd process only needs up to one connection to JRun. The other connectors can be tuned in the range: [0..10,000] at the user's peril. - The JRun Windows NT Service manager now includes a restart button. - If JRun encounters an incorrectly formatted Cookie, the resulting IllegalArgumentException is caught and logged, and the request continues. Previously the request was aborted wih no log entry. This situation usually happens if a cookie was set not using the servlet api. - Netscape Enterprise Server access logs now reflect status codes returned by JRun. - Stderr is now redirected before services are started. Stdout is redirected after services are started. - JRun now displays the version, build and JCP/JWS service port numbers when it starts. - JRun now lets you enter a Bind address for the JSM control port, to limit the hosts that can stop and administer the JSM remotely. - The JRun native connectors for Apache, Netscape, and IIS now use the web server's API to set headers. This allows other filters that come before the JRun plug-in to also set response headers. Any headers that JRun sets will override previous values set by other filters, with the following exceptions: - Set-Cookie: This header can appear multiple times in the response. JRun will not override previous values of this header. - Date: The date header is automatically sent by the native server. If a servlet sets this header, the value will be ignored. - Server: The server identifier header is automatically sent. Servlets cannot override this header. - JRun now fully supports draft 0.92 of the Java Server Pages spec. - Depricated the get...Url() methods and replaced them with get...URL() according to the 2.1 Servlet API. - JRun now logs the full Request URL and error code to the IIS log file. - The file servlet now returns 404 File not found when a file is not found, instead of 400 Bad request. - Fixed a bug in the JRun native connectors that could cause the native web server to hang with 100% cpu utilization on bootup. Platforms affected include Redhat Linux 5.1, IRIX, and Novell. - A bug has been fixed where the JSM control scripts would sometimes stop the wrong JVM, or no JVM at all. stopjsm, and the new jsmctl script, now work properly. - The JRun Proxy Connector for Apache now passes the HTTP "Authorization" header to JRun.