Caucho Technology
documentation
examples
changes

release notes
change logs

resin changes
resin-2.1 changes
resin-ee changes
old changes

resin change log


Resin Change Log

Resin 2.1 changes

3.1.6 snapshot

  • quercus: class static field syncronization issues
  • quercus: initialization syncronization issues
  • ioc: data-source not properly using JNDI lookup (rep by Stargazer)
  • (2008-05-02) quercus: eval must return null for missing return (rep by Matthew Schmidt)
  • quercus: $SERVER['REQUEST_URI'] calculation with forward [clean_urls on drupal] (rep by Matthew Schmidt)
  • rewrite: forwards with query improperly cached (rep by Matthew Schmidt)
  • (2008-04-30) quercus: SimpleXMLElement getField could throw NPE (rep by Matthew Schmidt)
  • jsp: permission issues with WEB-INF/work could cause 404 instead of servlet exception (#2635, rep by mauricev)
  • boot: updates for missing configuration attributes
  • boot: update startup log message for better VM version logging (#2633, rep by stbu)
  • multipart form not properly handling multiple uploads (#2578, rep by waiwong)
  • admin: web-app added statistics-enable to enable web-app statistics (#2625, rep by Marty Messer)
  • (2008-04-26) jsp: JspPrecompileListener not properly handling <fileset> (#2615, rep by stbu)
  • boot: WatchdogClient.launchManager needs -Xrs for windows (#2566, rep by mledom)
  • boot: watchdog restart requires delay between stop and start (#2564)
  • LruCache issue with nullpointer key (#2621, rep by zhaoxingyun)
  • ssl: config error message needs to be logged at cluster level (#2602)
  • boot: jvm-arg inside resin:if was throwing config exceptions (#2617, rep by Mattias Jiderhamn)
  • jca: add max-connections and max-active-time to connection-factory (#2618, rep by wesley)
  • jms: add com.caucho.jms.queue.JmsBlockingQueue for 3rd party jms (#2619, rep by wesley)
  • servlet: update cache clearing/timing to avoid servlet-mapping race condition (#2611, rep by Charles Lyons)
  • configure: add $JAVA_HOME/../Headers/jvmti.h check for MacOS-X (#2612, rep by markus)
  • ejb: add class dependency checking for generated beans (#2600, rep by Carljohan Carlsson)
  • jsf: JSF simple example not working (#2388, rep by pthl)
  • quercus: support for (?i) subexpressions (#2614, rep by Paul Fischer)
  • servlet: GzipFilter fix for allow-content-type (#2608, rep by azenkov)
  • resin-ioc: add resin:param to allow custom constructors (#2414)
  • (2008-04-17) quercus: fsockopen allows host:port as the host string (#2603, rep by billybigpotatoes)
  • quercus: use getRealPath for php-ini in QuercusServlet (#2605, rep by sgraf)
  • quercus: var_dump takes multiple args (#2508, rep by etzel)
  • quercus: mysql_fetch_field updates to handle table aliasing
  • quercus: xml_parse needs to allow unassigned character values for Mediawiki import/export (#2592)
  • quercus: DOM constants needed for Mediawiki 1.12
  • watchdog: add <jvm-classpath>
  • (2008-04-16) quercus: json was not working with SimpleXmlElement (#2569, rep by Matthew Schmidt)
  • quercus: xml_get_current_column_number (#2574, #2604, rep by P Fischer)
  • amber: @OneToOne persist cascade issues (#2599, rep by tsv)
  • amber: startup timing issues. the codegen must occur before the database is selected
  • jsp: body tag interaction with jsp:include and i18n (#2581, rep by T Fukuda)
  • (2008-04-11) response.sendRedirect should encode in utf-8 (#2580, rep by Sanjeev)
  • admin: added .war manifest as a JMX value (#2462)
  • jms: polling issues with jdbc store (#2570, rep by J Deffenbaugh)
  • rewrite: add exists condition (#2328, rep by Arthur Naylor)
  • amber: update classloader order (#2588, rep by Riccardo Cohen)
  • quercus: xml_set_element_handler with empty string callback was causing UnsupportedOperationException (#2591, rep by P Fisher)
  • host: allow host-alias-regexp in host.xml (#2582, rep by kenjrwalker)
  • amber: multiple @OneToMany annotations were ignored (#2586, rep by Charles Lyons)
  • amber: mysql shouldn't use RETURN_GENERATED_KEYS when no @GeneratedId (#2579, rep by Charles Lyon)
  • admin: update log_ reloading for remove/restart (#2568, rep by wesley)
  • boot: jmx defines must be set by boot process (#2567)
  • ejb: stateless calls to self do not invoke interceptors (#2529, rep by Daniel D'Alessandro)
  • win32 service: nullpointer due to PATH changes to support win64 (#2470, rep by Sharad Kelkar)
  • versioning: nullpointer in WebApp.stop() with versioning (#2565, rep by stbu)
  • amber: class changes not picked up for reevaluation (#2562, rep by tsv)
  • loader: restricted synchronized block on DynamicClassLoader to reduce blocking (rep by Knut Forkalsrud)
  • (2008-03-31) config: connection-max and keepalive-select-max should default to infinite (#2555, rep by paulberto)
  • config: connection-max belongs in <server> (#2555, rep by paulberto)
  • admin: add thresholds for stat-service
  • jmx: jmx operations need to occur in classloader context of the mbean (#2556, rep by Karl Goldstein)
  • admin: add thread dumps for cpu load and ping failure (#2428)
  • cache: update miss rate to better reflect total caching (#2505)
  • openssl: ssl_write updates for SSL_ERROR_WANT_READ and SSL_ERROR_WANT_WRITE (#2465, rep by D Ngo)
  • resin.conf: ejb-server in ear-default should not have data-source (#2472, rep by stbu)
  • jsp: disable caching of "static" jsp pages (#2548, rep by david-peterson)
  • hessian: resource counting for SqlDateDeserializer (#2494, rep by gtong)
  • hessian: add content-type for servlet (#2500, rep by mccloud35)
  • jni: write on linux was not properly retrying on EINTR/EAGAIN (#2521, rep by cytown)
  • versioning: issues with cookies managing the versioning (#2519, rep by stbu)
  • install: add resin.conf.orig to build (#2533, rep by norlab)
  • server: add url-length-max configuration (#2431, rep by A C De Baca)
  • boot: add watchdog-address (#2717, rep by Eric Kreiser)
  • cache: check web-app startup when adding new cache entry (#2474, rep by Martin Thompson)
  • amber: serialization of beans with hessian (#2515, rep by Riccardo Cohen)
  • hessian: handing of InputStream.read with Hessian2 encoding (#2535, rep by Ray Erdelyan)
  • session: handle ClusterObject.isDead() state when object is loaded (#2477, rep by Matt Hansen)
  • session: distributed session synchronization needs to occur after the appliction has started (#2447, rep by Cameron Stokes)
  • (2008-03-21) quercus: cleanup list can't use SoftReference (#2542, rep by Matt Johnston)
  • jsp: dependency generation could mistakenly add classpath: for root-based JSP files (#2486, rep by L Geller)
  • rewrite-dispatch: query string resulted in added getParameterValues value (#2464, rep by zdavis)
  • quercus: regexp a <= Integer.MAX_VALUE test is unstable for some JIT/OS, so use a <= Integer.MAX_VALUE - 1 (#2526, rep by Chris Chen)
  • jsp: application, session, and request are not EL implicit objects (#2499, rep by B Whitehead)
  • config: redeploy-mode needs to be allowed in <host-default> (#2538, rep by G Perales)
  • (2008-03-20) admin: profiling issue with MacOSX (#2480, rep by Javier Vegas)
  • boot: 64-bit windows does not use -d64 flag (#2501, rep by fesse)
  • amber: native query needs to use column names (#1716)
  • amber: @OneToMany was ignoring fetch annotation (#2423, rep by Daniel Spangler)
  • amber: @PersistenceUnit was not initialized before binding @Component (#2498, rep by wesley)
  • config: updated resource-ref schema to match JavaEE 5 (#2143, rep by Gary Zhu)
  • ssl: add cipher-suites to jsse-ssl (#2360, rep by Jay Ballinger)
  • webapp/jmx: add Version attribute to WebAppMXBean (#2463)
  • ioc: add WebBeansContainer.getBeansOfType (#2413)
  • jsp: pageContext ELResolver wasn't handling getType properly (#2451, rep by anloci)
  • install: with --prefix, copy php, plugins and ext-webapp-lib (#2473, rep by stbu)
  • hessian: hessian method overloading cost needs to be long (#2466, rep by zipeg)
  • boot: add chroot as watchdog capability (#2426)
  • boot: increase fd max when possible (#2467)
  • shutdown-wait-max had incorrect rnc schema (#2492)
  • ejb: conflict between ejb-jar.xml and ejb-stateless-bean (#2479, rep by Gary Zhu)
  • ioc: jar order should not affect injection (#2490, rep by Andreas Fischer)
  • boot: remove watchdog requirement that server's resin.conf must match (#2484, rep by Chris Chen)
  • (2008-03-04) jsf: Bean classes must have a zero-argument with com.sun.rave.faces.data.ResultSetPropertyResolver (#2364)
  • added scheduled-task to improve cron scheduling (#2311, #2475, rep by netsql3)
  • xa: Synchronization exception in beforeCompletion() could prevent rollback (#2454, rep by ddalessa)
  • ioc: interceptors not properly handling thrown exceptions (#2483, rep by wesley)
  • amber: @PersistenceContext fixes with third-party JPA providers (#2435, #2482, rep by Matt Johnson)

3.1.5 - 2008-02-27

  • (2008-02-26) config: whitespace-only element config with resin:import (rep by Jan Kriesten)
  • win32: rewrite-real-path replacement issues with windows backslashes (#2444, rep by stbu)
  • (2008-02-20) build aclocal.m4 missing from .gz
  • classloader: system classloader changes to support Terracotta
  • log: resin:log compatibility - (should use resin:message instead) (#2443, rep by stbu)
  • database: UserStatement.clearWarnings missing null check (#2439, rep by ckchris)
  • watchdog: logs created in pwd instead of root-directory (#2437, rep by ckchris)
  • admin: cluster.php syntax errors (#2441, rep by stbu)
  • admin: ManagementAuthenticator was not checking user for null before copy (#2248, rep by stbu)
  • (2008-02-15) clustering: updated logging for btree insert exceptions (#2403, rep by gjvc)
  • build: distribution missing aclocal.m4 (#2421, rep by norlab)
  • webbeans: ScopeAdapter beans need to throw a config-time error if zero-arg constructor is missing (#2332, rep by wesley)
  • access-log: add logging for bad requests, e.g. 400s (#2266, rep by jornsvendsen)
  • rewrite: rewrite rules at the server level need to log to the default webapp's access logger (#2395, rep by D Peterson)
  • logging: contained <logger> needs to act like top-level loggers (#2327, rep by John Franey)
  • database: vary pool round-robin by cluster index (#2358, rep by M Stacks)
  • jstl: c:redirect was not properly handling context="/" (#2379, rep by wimsie)
  • servlet: validation of servlet-class needs to be lazy because of .war libraries with missing classes (#2391, rep by ckchris)
  • hessian/burlap: when unable to find classes, log warning before returning HashMap (#2387, rep by pagedn)
  • database: jdbc connection should not be returned to pool if exception occurs (#2313)
  • jmx: ServerConnector for the self-server is now registered in JMX (#2354)
  • win64: added build for isapi_srun, resin_os, resin, resinssl (#2331, #2330, rep by K. Puaa)
  • watchdog: refactor to handle frozen OS process/kill -9 (#2410, rep by Daniel Lopez)
  • watchdog: add "kill" to force a process kill (#2411, rep by Daniel Lopez)
  • admin: admin host needs to skip default configuration (#2405, rep by ckchris)
  • gzip filter not properly handling reset() (#2389, rep by T Truong)
  • jmx: unregisterMBean was not working properly (#2390, rep by J Smyth)
  • custom access-log was not having destroy() called (#2373, rep by M Thomson)
  • add <mail> config for javamail (#2329, rep by Ron Pitts) [mail configuration]
  • jmx: add AccessLogMXBean with flush() operation (#2342, rep by Michael O'Dea)
  • jmx: classloader updates to support JDK 1.6 jconsole
  • jmx: use only GlobalMBeanServer for all Resin mbean server instances (#2380, rep by J Smyth)
  • (2008-02-11) config: init-param was not stripping spaces for param-value (#2384, rep by hifish)
  • deploy: versioning deploy wasn't handling '-foo' for non-numeric (#2365, rep by gjvc) [webapp deploy]
  • ejb: method-level security (#1845, rep by Kevin Wimmer)
  • thirdparty: Hudson integration with security (#2320, rep by netsql2) [wiki: Hudson and Resin
  • (2008-02-08) jsf: fast-jsf automatically disabled when not using Resin's JSF (#2351)
  • resin.conf: change default to use <prologue> and put resin:import after the web-app-default (#2402)
  • watchdog: <watchdog-port>${port}</watchdog-port> was not supported (#2401, rep by friedeks)
  • regression: ${resinHome} variable was missing (#2374, rep by stargazer)
  • wicket: EnhancerManager needs to handle proxies named "Foo$" (#2382, rep by Jan Kriesten)
  • filters must be initialized before servlets (@386, rep by killnine)
  • jsp: taglib analysis issue with doEndTag (#2378, rep by wimsie)
  • jms/db: sql limit was ignored for backing store (#2337, rep by Erlende Akre)
  • jsp: dependency checking of fmt.tld updated to use classpath (#2363, rep by M Gleeson)
  • configure: update ACLOCAL and AUTOMAKE to avoid version dependencies (#2396, rep by norlab)
  • support: added ResinWebApplication, and ResinComponentInjector for wicket [Wicket with Resin]
  • (2008-02-05) jms: basic BlockingQueue support [Resin Messaging] (#2310)
  • (2008-02-02) embed: classpath config file lookup depended on Resin
  • (2008-02-01) regression cleanup
  • (2008-01-30) support: Wicket support for Resin/WebBeans for WebApplication object [wiki: Resin and Wicket]
  • jca: AssociationResourceAdapter fixes for Jackrabbit [wiki: Resin and Jackrabbit] (#2346, rep by pegli)
  • load-balance: update timeout counting from app-tier (#2639, rep by Anthony Balandran)
  • configure: libtool fixes on build machine
  • ejb: message driven bean support for NOT_SUPPORTED XA (#2308, rep by ddalessa)
  • ioc/config: system properties like 'foo.bar' were not properly resolved (#2361, rep by Curtis Taylor)
  • webbeans/ejb @Interceptor refactor (#2344, rep by wesley)
  • httpd.sh: update JAVA_HOME handling (#2343, rep by tusker)
  • admin: admin password is now configured through the <management> user (#2316, #2315)
  • ejb: webbeans and session bean merge for security, xa, and interception [resin-ioc
  • access-log: add auto-flush-time as a configuration parameter (rep by Michael O'Dea)
  • (2008-01-14) added com.caucho.resin.ResinEmbed embedding [Resin Embedding]
  • plugins: add spring/webbeans bridge [wiki: Spring and Resin/WebBeans]
  • plugins: add ant Jspc task [wiki: Ant and Resin] (#97, rep by D Becker)
  • plugins: add struts2 ObjectFactory support [wiki: Struts2 and Resin]
  • plugins: add maven2 resin:run and resin:jspc [wiki: Maven2 and Resin] (#2231, rep by Daniel Glenn)
  • cache: add clearExpires to clear the expire time, but not the cache (#2300)
  • add com.caucho.filters.MD5Filter (#1668, rep by E Bowman)
  • security: authenticator needs to work with webbeans/jpa (#2304, rep by Andreas Fischer)
  • rewrite-dispath proxy now has target field (#2171)
  • burlap: use getDeserializer pattern matching Hessian (#2298, rep by M Vandamme)
  • configure: build updates for solaris (#2050, #2294, #2295, rep by ksvee, np23dcx, norlab)
  • flash: SocketPolicyProtocol now falls back to HTTP, allowing port 80 (#2291, rep by Vic Cekvenich)
  • access-log: add <exclude>\.gif$</exclude> to access-log (#2157, rep by B Cleave)
  • hessian: improve error message with non-hessian response (#2200, rep by pelikt1)
  • openssl: cleanup of SSL_free code to ensure no link to old connection (#2188, rep by J Kaur)
  • isapi: send 503 on timeout to Resin (#2264, rep by T Fukuda)
  • update jdbc wrappers for jdk 6 (#2189, rep by koreth)
  • xa: issues with PoolItem handling XA_RDONLY (#2227, rep by mackd2)
  • jsf: faces-config.xml needs to allow multiple render-kit (#2278, rep by Andreas Fischer)
  • jsf: faces-config.xml needs to allow multiple el-resolver tags (#2287, rep by Andreas Fischer)
  • boot: boot issues with IBM JDK and java.class.path (#2284, rep by Surekha Bhartiya)
  • xml: update DOMBuilder to handle null prefixes (#2286, fixed! by atifmk)
  • admin: missing resin_admin_insecure needs to redirect to https only on port 80 or with host-secure (#2244, rep by B Cleave)
  • jsp: fragment generation with scripting elements must support request (#2261, rep by extremia)
  • watchdog: NPE check for missing server
  • resin-admin: login failure needs to report error message (#2263)
  • load-balance: start warmup timeout immediately (#2241, rep by A Balandran)
  • security-manager: disable custom PolicyImpl (#2281, rep by norlab)
  • load-balance: support load-balance-recover-time=0s (#2279, rep by A Balandran)
  • classloader updates to help support Terracotta (#1970, rep by S Sozonoff)
  • windows security was not allowing directory servlet (#2228, rep by drsskelkar)
  • add startup-priority to web-app to force startup order (#2204, rep by S Patronis)
  • hessian: issues with deserializing StackTraceElement (#2273, rep by kitepad)
  • hessian: change default setChunkedPost to true (#2225, #2260, rep by L Geller, ckchris)
  • soap/jaxrpc: removed javax.xml.ws from jaxrpc.jar (#2270, rep by plsoft)
  • (2007-12-31) admin: update tables for log storage to improve startup time (#2161, rep by koreth)
  • WebBeans add xwork2 support as com.caucho.xwork2.ResinObjectFactory
  • WebBeans: add createTransient to support framework object factories
  • mod_caucho: not properly grabbing backup server from session (#2268, rep by D Wigenfors)
  • EJB initialization order vs Amber (rep by Bill Au)
  • mod_caucho config reload of servers could leak memory (#2247, rep by vladdy)
  • (2007-12-18) Quercus: compiled-mode generation of array(&$foo) (#2258, rep by koreth)
  • Quercus: clear definition cache on page reload (#2252, rep by koreth)
  • Quercus: regexp fix for Drupal 6
  • Quercus: .smap files larger than 64k cannot be merged (#2146, rep by koreth)
  • JAX replacement issue with FactoryLoader and win32 (#2187, fixed! by dibo)
  • JNI gave misleading error message when license was not available (#2235)
  • Keepalive must only use a single check when preparing response to avoid confusing the load balancer (#2262)
  • JNI/std.c: on some servers an EAGAIN on send is like EINTR (#2239, rep by B Cleave)
  • thread-idle-min and thread-idle-max defaults need lazy init (#2229, rep by mate)
  • LoadBalance: load-balance-warmup-time=0 not properly skipping warmup (#2240, rep by A Balandran)
  • LoadBalance: client disconnect from browser was causing failover (#2236, rep by A Balandran)
  • Quercus: improve exception reporting in interpreted mode
  • Quercus: handle A::$f() calls (#2257, rep by jredden)
  • Quercus: handle IllegalStateException thrown by JDBC on close (#2184, rep by koreth)
  • Quercus: "15" & 3 not properly converted (#2251, rep by koreth)
  • Quercus: class static fields need to be stored in Env (#2253, rep by koreth)
  • Quercus: array_key_exists (#2254, fixed! by koreth)
  • XmlDocumentFactory needs setSchema (#2174, rep by sgudiboina)
  • JCA: updated <connector> syntax (#2209, rep by Serge Sozonoff)
  • Quercus: added spring_bean("...")
  • Quercus: htmlentities handled incorrecty between mod_php and quercus (#2348, rep by rvt)
  • Quercus: strcmp function fails with comparing comparing empty strings with numbers (#2356, rep by rvt)
  • Quercus: Cannot create a BigDecimal, seems to call wrong constructor (#2345, rep by gorck)
  • Quercus: xml_parse_into_struct exceptions (#2353, rep by rvt)
  • Quercus: append string operation cannot be doen with a string is retreived from file_get_contents (#2350, rep by rvt)
  • Quercus: oracle module reporting incorrect extension name (#2338, rep by buckyball)
  • Quercus: drupal - table temp_search_sids already exists (CREATE TEMPORARY TABLE) (#2293, rep by Dan)

3.1.4 - Dec 5, 2007

  • isapi plugin needs to set fKeepConn=0 for non-200 responses (#2150, rep by Ove Halset)
  • load-balance issues with short cookies (#2221, rep by B Cleave)
  • watchdog issues with multiple servers and configuration files (#2212, rep by Bill Au)
  • watchdog-password (#2201, rep by Chris Chen)
  • jndi-appconfig sanitization (#2215, rep by Coolflame Wu and Alan Lee)
  • viewfile sanitization of file attribute (#2214)
  • response.getCharacterEncoding must return iso-8859-1 as a default (#2180, rep by Takahiro Fukuda)
  • keepalive/chunking: chunking error when exact buffer match reported by Confluence (#2131, rep by Chris Chen)
  • added backup attribute to server, with meaning the same as load-balance-weight='1' (#2178)
  • jsp: tag-file pageEncoding not properly picked up (#2170, rep by Takahiro Fukuda)
  • database: update error message when driver does not have URL (#2173, rep by B Au)
  • comet: API cleanup, isClosed() replaces isActive()
  • (2007-11-25) quercus: Dependency printing not properly handling static paths (#2185, rep by koreth)
  • jsp: allow EL expression for non-rtexprvalue String for old-style JSTL (#2112, rep by T Harris)
  • jms: add JmsQueueMXBean and JmsTopicMXBean (#2049, rep by P Tripathy)
  • hessian: HessianProxy updates to simplify subclassing (#2155, fixed! by mate)
  • hessian: sendCollectionType now affects Maps (#2149, rep by mate)
  • session - always-load-session would load for static pages (#2154, rep by copart)
  • amber: misc @EmbeddedId issues (#2037, rep by Sergey Plehov)
  • amber: @NamedQuery and inheritance were conflicting (#2053, rep by Sergey Plehov)
  • admin: snapshot resin.conf changed to resin_admin_insecure (#2145)
  • amber: inheritance auto-gen columns generated improper inserts (#2054, rep by Sergey Plehov)
  • amber: allow JPA with other providers (#2041, rep by Sergey Plehov)
  • quercus: required expr missing from function not properly generated (#2139, rep by koreth)
  • hessian: object definition ('O') should use string for type (#2142, rep by Charlie Groves)
  • rewrite-dispatch forward and redirect should use query-string (#1997, rep by Jan Kriesten)
  • Add DatabaseManager.findDatabase(url) (#1932, rep by Geoff Hendry)
  • form encoding needs to default to character-encoding, not url-character-encoding (#2140, rep by refactor)
  • hessian: use Integer.valueOf instead of new Integer (#2138, rep by regor)
  • resource-ref validation schema incorrect (#2143, rep by Gary Zhu)
  • (2007-11-04) admin: add root-directory and uptime for web-app (#2043, rep by stbu)
  • amber: hessian serialization for @OneToMany was incorrect (#2118, rep by Daniel Spangler)
  • ProxyCacheMXBean.clearCacheByPattern (#2115, rep by B Youngblood)
  • cache: change from uncacheable to cacheable was not properly detected (#2113, rep by paulberto)
  • ssl: added crypto-device to openssl (#2046, rep by V Vyas)
  • JCA .rar wasn't loading native libraries (#1846, rep by Ray Cromwell)
  • config should defer jsse-ssl for <http> until server-specific startup (#2020, rep by Mike Wynholds)
  • rewrite-dispatch secure='true' should affect sendRedirect (#1996, rep by Michael Wang)
  • configure: updated config.guess to support ppc64 (#2114, rep by Tamas Perlaky)
  • session: unserializable login principal should not be serialized (#2011, rep by K Fetterman)
  • build: class cleanup (#2051, rep by koreth)
  • build: split version from resin compilation (#2088, rep by koreth)
  • resin-admin: added resin_admin_insecure, defaulting to true to require SSL (#2007)
  • hessian: Java calendars not properly serialized (#2106, rep by rhodepc)
  • Config schema validation could not handle spaces in path (#2117, rep by taylorc)
  • (2007-10-30) quercus: mysql_query error detection was not detecting connection close (#2138, rep by koreth)
  • LruCache removeTail synchronization issue (#2130, rep by Matthew Schmidt)
  • quercus: fwrite for socket automatically flushes (#2120, rep by koreth)
  • quercus: HashMap adapter wasn't properly implementing copy() for APC (#2121, rep by koreth)
  • quercus: mysql_fetch should append LONGVARCHAR as binary instead of letting mysql convert it (rep by koreth)
  • quercus: StringBuilderValue.append(byte[]) wasn't converting to char properly (rep by koreth, #2119)
  • quercus: regexp fixes (#2124, rep by koreth)
  • jms: ListenerResource needs listener-max (#2047, rep by D McAndrew)
  • (2007-10-25) load-balance failover logging was showing incorrect target server info (#2098, rep by stbu)
  • add secure="true" to cluster-port (#2104, rep by Takahiro Fukuda)
  • <http> and <cluster-port> socket-timeout were not using <server-default> values (#2110, rep by B Choate)
  • jsf: attribute-extension wasn't properly ignored (#2111, rep by borisk)
  • <load-balance> add <strategy> tag (#2100, rep by stbu)
  • Added remote-enable-cookie to <management> to replace remote-enable (#2085, rep by stbu)
  • Windows file URL with Java uses file:/c:/foo, not file:///c:/foo (#2086, rep by Matt Ledom)
  • Verify that proxy-cache file was properly removed on startup (#2065, rep by Mike Waldman)
  • resin-admin needs to use Server->CurrentTime to avoid clock skew (#2099, rep by stbu)
  • Quercus: forbid include of non-file.
  • Quercus: updated support for large binary data (php5) (#2101, rep by koreth)
  • Quercus: stubs for getrusage, memory_get_usage, memory_get_peak_usage (#2102, rep by koreth)
  • Quercus: mysql_close was automatically allocating connections (#2103, rep by koreth)
  • logging now allows %{thread} and %{env}
  • Quercus: output buffering with callback not properly handling false (#2091, rep by koreth)
  • Quercus: NPE in Env connection close updates (#2093, rep by koreth)
  • Quercus: mysql_fetch_assoc should use metaData.getColumnLabel if available (#2080, rep by koreth)
  • Quercus: $this->x does not trigger __get and __set (#1965, rep by rjc)
  • Quercus: mysql_connect flags were not getting passed to driver (#2075, rep by koreth)
  • httpd.sh had wrong path to resin.jar (rep by koyama)
  • Quercus: StringStream not return proper utf-8 length for read() (#1903, rep by S Sozonoff)
  • Quercus: http_build_query requires arg_separator (#1906, rep by ssozonoff)
  • Quercus: basename nullpointer check (#1837, rep by dizzle)
  • (2007-10-16) Add <database-default> (#1108, rep by koreth)
  • Quercus: regexp "/u" flag with Drupal install issues (#2069, rep by jims)
  • Quercus: regexp rewrite for performance and PHP extensions

3.1.3 - October 7, 2007

  • SSIServlet needs to return text/html (#2000, rep by K Fetterman)
  • SSIServlet needs to return 404 for file not found (#1999, rep by K Fetterman)
  • cache changes to avoid threading issues (#1992, rep by David Peterson)
  • hessian: added debug="true" flag to HessianServlet, to log at level="fine"
  • hessian: added HessianDebugInputStream and HessianDebugOutputStream
  • hessian: field list deserialization with non-matching classes (#2026, rep by mfsiddiq)
  • hessian: field object deserialization with non-matching classes (#2015, rep by Mark Church)
  • hessian: Collection deserializer not properly handling 'v' (#2028, rep by Jerome Landreau)
  • session saving was still attemped after invalidation (#2031, rep by jkriesten)
  • jar caching method was slower than previous method (rep by Sean Patronis)
  • jsf: handle NPE thrown by facelets ELContext in EL evaluation (#2013, rep by Matt Raible)
  • jsf: older faces-config.xml used xmlns="http://java.sun.com/JSF/Configuration" (#2010, rep by Matt Raible)
  • (2007-09-20) quercus: file parsed data with unicode.semantics='0' need to be php5 strings, not php6 binary strings (#1938, #1975, rep by chillout, kim)
  • (2007-09-17) initial comet implementation (#1945, rep by M Thompson)
  • quercus: mysql varbinary data with unicode.semantics=false (#1898, rep by rjc)
  • quercus: i18n unicode.semantics updates
  • added web-app-deploy versioning for session hot-deploy improvements (#1058)
  • (2007-09-10) isapi: pass client-read-timeout to isapi_srun.dll (#1862, rep by Takahiro Fukuda)
  • multiple access-logs were causing rollover issues (#1947, rep by brianb08)
  • db-pool: add max-idle-count to connection pool (#1891, rep by Matthew Schmidt)
  • db-pool: idle cleanup and additional ConnectionPoolMXBean atributes (#1891, rep by Matthew Schmidt)
  • load-balance: update retry and failover logic (#1939, rep by Bradley Van Cleave)
  • session: cleanup TempStream for session serialization (#1764, rep by Jan Kriesten)
  • hessian: hessianlib.py update (#1880, rep by jboulon)
  • mod_caucho: add backup costs to the round robin selection (rep by Katrin Koppert)
  • HttpProxyServlet now checks failRecoverTime and connection count (#1158, rep by S Nagar)
  • jdbc-pool: add JdbcDriver with start()/stop() to allow database backup rollover (#1604, rep by Rich Dredge)
  • jsp: getSpecificationVersion() needs to return 2.1 (#1990, rep by stbu)
  • added keepalive-connection-time-max to limit keepalives (#1830, rep by sf)
  • timing issues with session invalidation (#1897, rep by Bradley Van Cleave)
  • Path.getURL() on windows needs to convert "/:/" to "//" (#1982, rep by debae)
  • session: update invalidation to ensure invalidation drops session (#1951)
  • session: cluster session load on startup needs to detect invalidations (#1544, rep by Jacky)
  • access-log missing rollover-count setter (#1985, rep by stbu)
  • change build.xml to -Xmx512m (#1986, rep by chris_se)
  • jstl: add filter to x:parse (#1944, rep by M Thompson)
  • session: add request attribute caucho.session-server-id as a distributed session owner hint (#1912, rep by Mike Wynholds)
  • write error content even if output is flushed, i.e. suppress forward() not allowed error (#1954)
  • ssl: cipher string not properly cleared on close (#1927, rep by directi)
  • security-manager config was missing @PostConstruct (#1934, rep by norlab)
  • admin: resin_admin_localhost changed to resin_admin_external (#1976)
  • amber: pstmt.setNull(..., Types.NULL) is not supports by MSSql (#1926, rep by Matt Ledom)
  • jsp: rtexprvalue allowed in fragments (#1893, rep by Matthew Schmidt)
  • session: cluster store was not updated for new TempBuffer size (#1911, rep by Ethan Larson)
  • boot: update init.resin script for ubuntu (#1549)
  • jni: ./configure PROXY_LIBS needs -lc for debian (#1806, #1924, rep by engberg, F Caso)
  • NamedDispatcherImpl.include needs to call res.init instead of res.setRequest (#1971, rep by karl)
  • windows issue with webapps (rep by Ed Hollingsworth)
  • (2007-08-27) xpath: compatibility issues with Xerces in comparison exprs (#1943, rep by M Thompson)
  • jsp: PageContextWrapper needs to clear the ELContext on reuse (#1908, rep by timur)
  • win32: httpd.exe adds -user, -password, -name, -full-name (#1162, rep by mattp)
  • win32: httpd.exe fixes as windows service (#1913, #1804, rep by briandeng, EUgene Kovnatsky)
  • jsf: sessionScope EL wasn't working properly with RI (#1928, rep by mypda)
  • persistent session load should not trigger valeUnbound (#1820, rep by calmman)
  • bind-ports-after-start now enables listen (#1925, rep by M Schmidt)
  • hessian: allow InputStream as final argument and as result for file upload/download (#1948, rep by Compl Yue Still)
  • xpath: compatibility issues with Xerces in comparison exprs (#1858, #1943, rep by M Thompson, B Au)
  • jsp: deferred EL handling did not properly detect .tld JSP version (#1909, rep by timur)
  • jsp: validation needs to generate page="%= ... %" for page="<%= ... %"> (#1917, rep by Michael Sengbusch)
  • jsp: EL toBoolean() was inverting result (#1931, rep by dheggie)
  • install: Makefile.in needs to change to $(LIBEXEC) to handle 64-bit installs (#1929, rep by copart)
  • Change Content-Length size for POST to 64 bits (rep by Aaron Freeman)
  • boot: LD_LIBRARY_PATH needs to be updated from environment (#1928, rep by ekreiser)
  • boot: update httpd.sh to support chkconfig (#1863, rep by Eddie Anzalone)
  • xml: QDeepNodeList.item needs to check for null (#1916, rep by ccwf)
  • FileServlet needs to use crc64 as etag (rep by Rafael Munoz)
  • Added full-url-regexp to rewrite-dispatch for url+query-string matching (#1833, rep by sf)
  • welcome-file-list should not affect getRequestURL (#1848, rep by Yaroslav Sokolov)
  • jsp: add support for import="static qa.Foo.*" (#1892, rep by Matthew Schmidt)
  • ResinBoot now looks for -D arguments to command-line and propagates them to children
  • Request.getInputStream should not check the encoding (#1874, rep by Leos)
  • createXMLStreamReader needs to deal with null charsetName (#1823, rep by jkriesten)
  • JspCompiler now has -compiler flag to choose compiler (#1877, rep by A Deshpande)
  • JspCompiler should default to compiling the app dir (#1870, rep by A Deshpande)
  • EJBCompiler wasn't properly initializing the environment (#1878, rep by S Croco)
  • hessian: BigDecimal wasn't properly updating reference (#1817, rep by Peter Henderson)
  • cookie-length now includes the cluster characters (#1825)
  • rewrite-dispatch now supports resin:import with dynamic updates (#1834, rep by sf)
  • jsp: prelude and coda were not setting taglib prefixes (#1840, rep by sergek)
  • resin.root needs to be set by Watchdog (#1869, rep by Brian Burke)
  • update development.conf and ORB initialization (#1883, rep by guduri)
  • hessian: issue with float args vs Serializable[] (#1894, rep by Rick Bray)
  • quercus: fgets newline recognition fixes including use of auto_detect_line_endings
  • quercus: abstract __construct was creating invalid compiled code
  • quercus: interface_exists() implemented, class_exists() fixed
  • quercus: precedence with ! and instanceof
  • quercus: database access fixed for JSR223 (#1859, rep by toomasr)

3.1.2 - July 18, 2007

  • JNI: solaris does not understand setsocketopt socket timeout (#1855, rep by T Corning)
  • HttpProxyServlet needs to use matchesIgnoreCase for Connection header check (#1856, rep by H Shih)
  • Hessian: issue with deserialization with replicated types (#1854, rep by remilon)
  • added serialization-type to session-config allowing for "hessian" and "java" (rep by Jan Kriesten, #1868)
  • (2007-07-02) Add TransactionManager compatibility for UserTransaction (not intended for application use) (#1814, rep by Takahiro Fukuda)
  • setHeader("Connection", "close") will close the keepalive (#1829, rep by sf)
  • multipart form needs to override query string values (#1831, rep by sf)
  • quercus: array sort() with floats
  • quercus: new self::$foo() (#1811, rep by Kibo)
  • quercus: preg_match backreferences (#1562, rep by obaltz)
  • quercus: /u option for preg functions
  • quercus: pligg php application (#1800, rep by C Whalley)
  • quercus: added php functions to query info on Quercus environment
  • quercus: will not append an empty string to a non-empty one (#1712)
  • quercus: Java exceptions can now be caught (#1455)
  • quercus: implemented idate() (#1721)
  • quercus: implemented get_included_files (#1262)
  • quercus: implemented headers_list() (#1797)
  • quercus: date() day of the week format ('w') was off by 1 (#1809)
  • quercus: cases where an error did not print out location of error
  • quercus: exec() and similar functions for *nix and Windows (#1812)
  • quercus: cases where database connections were not being closed (#1749)
  • quercus: characters being quoted for Drupal (#1790)
  • quercus: int overflow in unserialize() (#1638)
  • quercus: to allow '<?' to open php code (#1729)
  • quercus: allow object comparisons (#1459)
  • quercus: ob module outputing garbage(#1755, #1763)
  • quercus: SimpleXML (#1752)
  • quercus: gallery 2.1 Warning: Assertion "!empty($key)" failed (#1744)
  • quercus: unescaped backslash in character literals (#1738)
  • quercus: Quercus producing invalid Java code (#1731)
  • quercus: MediaWiki file upload parent directory does not exist (#1745)
  • quercus: isset() (#1728)
  • quercus: $_POST being overwrited by query string (#1732)
  • setSecurityProvider added to ResinConfig (#1815)
  • amber: caching issues with SoftReferences (#1816, rep by frankhung)
  • quercus: QDate change for week of year (#1810)
  • error-page could operate on wrapped request (#1325, rep by slonopatamus)
  • sessions now persist using Hessian2 (#1764, rep by Jan Kriesten)
  • admin: basic support for clustered administration (#1165, rep by Serge Knystautas)
  • Update load balancing to take slow/frozen servers into account (#1766, rep by Kevin MacClay)
  • hessian: overload should add param types (#1621, rep by hixxxxx)
  • sendRedirect needs to set Content-Type header for some firewalls (#1805, rep by M Hanson)
  • amber: change auto-gen sequence initialization order (#1718)
  • ssi: add SSIFilter (#1760, rp by sergek)
  • ssi: add support config errmsg (#1768, rep by Bill Au)
  • ssi: add support for SSIServlet as included servlet (#1768, rep by Bill Au)
  • add <machine> configuration to better distribute session backups (#1294, rep by R Dredge)
  • (2007-06-17) hessian: add X509Encryption and X509Signature for WS-Security capabilities (#1793, rep by Serge Merzliakov)
  • amber: add support for OFFSET and LIMIT for CMP backward compat (#1794, rep by frankhung)
  • database idle pool is now lifo to better handle load-balancing drivers (#1672)
  • isapi_srun: enable keepalive (#1802, rep by M Weinig)
  • isapi_srun: update uri decoding for utf-8 characters (#1629, rep by P. Sankar)
  • httpd.exe issues on win32 with spaces in RESIN_HOME directory (#1554)
  • quercus: MediaWiki was escaping html that should be allowed
  • jsp: fragment issues with ValueExpression code generation (#1785, rep by timur)
  • hessian: allow disabling of Serializable check with setAllowNonSerializable (#1796, rep by Jean-Francois Poilpret)
  • hessian: classloader fixes in HessianProxyFactory (#1795, rep by vladi5)
  • Added <secure> override for <http> to handle load-balancers/proxies (#1792)
  • boot: WatchdogManager stop needs to use server-id only to handle multiple conf files (#1781, rep by M Schmidt)
  • Add thread-executor-task-max to <server> to configure ExecutorService (#1762, rep by D Berry and G Zhu)
  • quercus: parsing of "<foo();>" (#1729, rep by obaltz)
  • HmuxLoadBalanceServlet should not call sendError when response is committed (#1789, rep by Bradley Van Cleave)
  • jsp: EL functions not properly initialized on reload (#1788, rep by Matthew Schmidt)
  • hessian: updates for new Hessian 2.0 draft
  • ResinWatchdog should not configure environment, e.g. <log> (#1778, rep by Alex Lorberg)
  • XMLStreamWriterImpl.writeDTD added implementation (#1757, rep by anotherbug)
  • hessian: MicroHessian updates for Java ME libraries (#1742, rep by Jazz Mack Smith)
  • reduce default watchdog footprint (#1782, rep by Rick Ross)
  • requestDestroyed needs to be able to get session (#1775, rep by A Deshpande)
  • mod_caucho: updates to handle '%25' url encoding (#1661, rep by resinossi)
  • nullpointer check for null servlet name in FilterMapping (#1783, rep by everflux)
  • configure.in updates for ibm jdk (#1370, rep by Lucien)
  • configure.in updates for jrockit-64 and solaris-64 (#1117, #1640, rep by cms, David Sourcy)
  • admin: change login to use forms to work with Apache/IIS (#1611, #1636, rep by dennislewis18, pat75007)
  • ssl: openssl password can be omitted (#1736, rep by Brian Woods)
  • hessian: fixed HessianServlet init() recursive loop (#1779, rep by Vic Cekvenich)
  • Change BTree uniqueness error message (#1690)
  • mod_caucho: add ssl support for hmux protocol (#1496, rep by J Edwards)
  • jstl: x:forEach with default namespace (#1646, rep by urutora90)
  • jsp: sendError() issue with flush="true" and interaction with cached subpages (#1740, rep by johnhughbowen)
  • hessian: add support for streaming, i.e. resetReferences() (#1626, rep by Ben Hood)
  • hessian: add support for Collections.singletonMap (#1657, rep by dbrakhane)
  • ProfilerServlet memory issues (#1623, rep by Bill Au)
  • add web-app disable-cross-context (#1577, rep by Yidong Fang)
  • rewrite: add 192.168 syntax support for remote-addr (#1735, rep by koyama)
  • hessian: array deserialization with Calendar (#1743, rep by Stefan Fleiter)
  • hessian: array deserialization with interface arrays, e.g. Serializable[] (#1614, rep by ldesegur)
  • boot: JNI/Pro classloader must be used for JniFilePath (#1758, rep by Steven Garrett)
  • Add dependency checking for MergePath (#1488, rep by Kimberly Nicholls)
  • GzipFilter now disables itself when servlet sets Content-Encoding to avoid double compression (#1761, rep by jkriesten)
  • jndi-link updates to properly set hashtable properties (#1739, rep by hazurek)
  • hessian: HessianSkeleton.invoke needs to skip 'c' header for backwards compat (#1458, rep by Alon Salant)
  • boot: propagate -d64 for 64-bit systems (#1759, rep by Alex Lorberg)
  • boot: added <java-exe> to select java executable (#1769, #1767 rep by C Ward)
  • jndi: alias java:/comp to java:comp for Spring (#1603, rep by aadi deshpande)
  • session: allow custom session in AbstractHttpResponse.writeHeaders (#1580, rep by Takahiro Fukuda)
  • jsp: TagData.getAttributeString not properly returning nulls (#1557, rep by Simona Borello)
  • servlet: getParameter encoding of query string char-encoding default (#1596, rep by Yonik Seeley)
  • select-manager now uses epoll on Linux (#1518, rep by Greg Schroeder)
  • jsp: response.getBufferSize() reporting (#1539, rep by Andrew Marcuse)
  • rewrite-dispatch add <proxy> option (#1445, rep by Daniel Lopez)
  • amber: missing Java string escapes in SQL generation (#1438, rep by spoty)
  • mod_caucho: Added CauchoStickySessions (#1423, rep by M Marich)
  • multiple security-constraint/http-method issues (#1419, rep by Keith Fetterman)
  • add strict-mapping to servlet-mapping (#1377, rep by Jonah Benton)
  • Jar modification was not properly clearning dependency (#1296, rep by ngiudici)
  • hessian: update protected methods to allow application extensions (#1627, rep by Ben Hood)
  • session: add <distribution-id> configuration to session-config (#1593, rep by hypefiend)
  • server: add PortMXBean.stop() and start() (#1259, rep by Bryan Choate)
  • (2007-05-24) security: update form-login with session timeout issue (#1674, rep by bthakkar)
  • <dependency> tag was not getting initialized (#1632, rep by Clint Harris
  • jstl: sql tags with EL and old-style web.xml issues (#1589, rep by Josh Rehman)
  • watchdog: copy environment from parent to child (#1733, fixed! by gjvc)
  • cluster: lower logging level to info for socket failure (#1750, rep by Kippert)
  • jsp: jspx encoding defaults need to be UTF-8 (#1708, rep by ccwf)
  • jsp: JSTL issue with EL and old-style web-app (rep by Victor, #1348)
  • ejb: cmr-many-to-one column calculation error message cleaned up (#1540, rep by chesspoker)
  • virtual-host: virtual host regexp issues with windows (#1689, rep by S. Avogadro)
  • server: add socket listen() capability so ports only listen after init (#1676, rep by S Pannell)
  • server: isIgnoreClientDisconnect needs null check (#1737, rep by lmgelberg)
  • server: thread-idle-min error message was incorrect (#1724, rep by copart)
  • jsp: tag file and JSP EL function issues (#1730, rep by webvir)

3.1.1 - May 7, 2007

  • FileServlet: windows security validation for bad URLs
  • DB pool: add close-dangling-connections (#1707)
  • Cache: add rewrite-vary-as-private for IE caching bug (#1581, rep by sergek)
  • Amber: @GeneratedValue with MS SQLServer was not working #1702 (rep by Michael Sengbusch)
  • Quercus: file uploads (#1434, #1435, #1615, rep by D Berry, M Bopp, snb)
  • Amber: createNativeQuery(String sql) i.e. missing mapping was throwing NPE (#1687, rep by Michael Sengbusch)
  • Amber: native queries with parameters (#1691, rep by Michael Sengbusch)
  • (2007-04-24) SSL: add OpenSSL_add_all_algorithms() during initialization (#1670, rep by thintz)
  • Servlet listener needs to handle description tag (#1635, rep by dpasek)
  • JSP: issues with tag class validation with generics (#1677, rep by L Kaminsky)
  • Session: verify session-max is valid (#1678)
  • JSP: i18n issue with filters (#1686, fixed! by gzhu)
  • Amber: @OneToMany in subclass (#1576, rep by bregnvig)
  • Amber: with multiple data-sources (#1680, rep by Michael Sengbusch)
  • Update ping mailer for mail-subject (#1564, rep by Abdul Karim)
  • Hessian: add missing synchronization for HashMaps (#1588, rep by bjornm)
  • DBPool: pooled connections with passwords could have race condition (rep by Sean Patronis)
  • JMX: EnvironmentMBeanServer vs MBeanView deadlock (#1543, rep by lschumacher)
  • mod_caucho/caucho-status updates
  • database ping-query added (#1641, rep by Andrew Jacobs)
  • ClassLoader getResources fix (#1643)
  • Filter mapping with getNamedDispatcher (#1634, rep by dpasek)
  • jsp multiple taglib definition issue (#1595, rep by Murthy Ch)
  • jsp tag/scriptlet parse issue (#1653, rep by webvir)
  • (2007-04-02) Servlet listener needs to handle description tag (#1635, rep by dpasek)
  • Amber: enhanced classes with <resource> (#1622, rep by jarnbjo)
  • JSP: restore velocity syntax (#1612, rep by T. Weihs)
  • JSP: resin-c:out namespace wasn't created for validation. (#1631, rep by Steve Ferguson)
  • OpenSSL: Add call to OpenSSL_add_all_algorithms (fixed! by Tom Hintz)
  • Expect: 100-continue handling with Resin's load balancer (rep by A Balandran, #1648)
  • JSP: $\{...} wasn't generating proper namespace for validation (rep by Matthew Schmidt, #1647)
  • (2007-03-07) ConnectionPool timeout defaults incorrect (#1586, rep by gschemmel)
  • web-app description/display-name order is arbitrary (#1599, rep by kamleshjkl)
  • character-encoding now controls default encoding for writers (#1563, rep by asklxf)
  • Add header conditions for rewrite-dispatch (#1547)
  • Add throttle-concurrent-max to <http>
  • ping was missing @PostConstruct
  • logging: formatted exception logs must keep the thrown exception (#1361, rep by rydenius)
  • Quercus: updates to locking (#1504, rep by at4u)
  • Amber: entities may have protected constructors (#1447, rep by KnisterPeter)
  • Quercus: toLong and toDouble need implementation for Java objects (#1397, rep by dberry)
  • session activate/passivate should call HttpSessionActivationListener for attribute values, not valueBound (#1402, rep by slonopatamus)
  • boot: add --log-directory as command-line argument (#1537, rep by Rick Mann)
  • Quercus: QuercusServlet needs init-param for database (#1535, rep by Markus Wolf)
  • fixed extra error messages generated on resin.conf restart (#1405, rep by M Marich)
  • mod_caucho: add windows read timeout for dead sockets (#1490, rep by T Fukuda)
  • Quercus: add __CLASS__ support (#1443, rep by KnisterPeter)
  • Servlet: getContext should normalize url (#1450, rep by lina)
  • JSP jsp:forward wasn't picking up EL (#1453, rep by Katrin Kippert)
  • getServerPort not properly calculated with virtual-host (#1509, rep by justinwcs)
  • Amber: mapped-superclass/metadata-complete is optional (rep by Costin Leau)
  • server-header needs to be used for error pages (#1491, rep by Larry Gelberg)
  • tree-loader getResources() needs to return all matching jars (#1516, rep by KnisterPeter)
  • Resin's JSTL needs to use the http://java.sun.com/jsp/jstl/core namespace (#1487, rep by John Rehman)
  • Log rollover thread spawn needs to be at priority level.

3.1.0 - Dec 21, 2006

  • server-header should be used for error messages when specified (#1491, rep by Larry Gelberg)
  • rewrite-dispatch was not properly applying top-level filters (#1392, rep by M Marich)
  • <database> <driver> needs to validate <init-param> with driver type (#1520, rep by Shane Cruz)
  • JPA: bytecode enhancement needs to handle LocalVariableTable (#1512, rep by jarnbjo)
  • JMS: resin_jms_message should not use 'connection' as column name for MySQL 5 (#1511, rep by jarnbjo)
  • continuous errors with dangling connections in amber when using cmp relations (#1495, rep by plehov)
  • ./configure changes for 64bit detection (#1465, rep by K Paulson)
  • (2006-12-03) Quercus: marshaling of null for Java objects: Byte, Integer, etc (#1444, rep by KnisterPeter)
  • OpenSSL: nullpointer when loading ssl fails (#1442, rep by Anoop Achuthan)
  • expand-directory in web-app-deploy generated confusing error message (#1452, rep by gjvc)
  • Make transaction manager visible for Spring (#1425, rep by buzzterrier)
  • Quercus: count("asdf") should return 1. (#1483, rep by Salz)
  • Quercus: null checking on file_exists (#1430, rep by Anoop Achuthan)
  • Amber: inheritance fixes (#1454, rep by KnisterPeter)
  • work-dir wasn't configuring properly (#1409, rep by ckchris)
  • Amber/EJB: ejb-server was overriding persistent-manager's data-source (#1456, rep by spoty)
  • Amber: 99 fields were overflowing the generated code (#1440, rep by spoty)
  • Quercus: mysqli_connection should return false with a connection error (#1401, rep by dberry)
  • access log: getNewline() adds check for windows is line.separator is null isntead of defaulting to \n (#1449, rep by Chris Head)
  • Cache: max-entry-size was being ignored (#1474, rep by Kalev Sullakatko)
  • Quercus: marshal String[] properly (#1463, rep by KnisterPeter)
  • JSP: .tag attribute with inner classes were not working (#1479, rep by stevejf7)
  • Quercus: rework for final javax.script API (#1473, rep by George Moschovitis)
  • Quercus: set_exception_handler (#1400, rep by awatt)
  • isapi_srun must turn off chunking for non-200 responses (#1460, ve6eei)
  • filter needs to allow id field (#1468, rep by mogsie)
  • EJB/CMP: ejbSelect needs to close result set in finally block (#1303)
  • EJB: change hessian stub generation location to work/ejb (#1301 rep by Steve Baugus)
  • mod_caucho: avoid premature error validation on non-blocking connect() failure for Solaris (#1415, rep by L Kaminsky)
  • Changed Jar.create synchronization so the remoteEvent will occur outside the sync (#1428, rep by mabbott)
  • JMX: getter/setter swapped for Introspector when no getter (#1390, rep by maltem)
  • JSP: EL issues with .jspx files (#1433, rep by ccwf)
  • Add resin.version and resin.versionDate to EL variables (rep by Bill Au)
  • mod_caucho updates to avoid extra dispatch requests (rep by Steve Baugus)
  • Amber now throws correct exceptions for non-entity arguments (#1380)
  • JSP: BeanELResolver needs to check for null getter (rep by Matthew Schmidt)
  • Log rotation now buffers during archiving
  • Add DBPool.closeIdleConnections() (#1394, rep by M Young)
  • Apache: added ResinSessionCookie and ResinSessionUrlPrefix (#1376, rep by Steve Baugus)
  • Validation for save-mode and always-save-session. (#1386, rep by justinwcs)
  • Hessian: specialized serializers were not adding references (#1417, rep by jjviana)
  • JSP 2.1
  • Servlet 2.5
  • (2006-10-06) Quercus: realpath must strip trailing slash (#1261, rep by koreth)
  • Quercus: highlight_file (#720)
  • Quercus: fsockopen must return BinaryInput/BinaryOutput (#1383, rep by David Berry)
  • Quercus: JavaValue.toString() was stripping '@' (#1388, rep by David Berry)
  • jsp:useBean in tag file was using unavailable objects (#1389, rep by Matthew Schmidt)
  • JSP tag file adds attributes as java variables (#1389, rep by Matthew Schmidt)
  • session persistence requires original request (rep by Takahiro Fukuda)
  • cookie-append-server-index should append exact index (rep by Serge Knystautas, #1346)
  • (2006-09-20) mod_caucho issues with config server (rep by Steve Baugus)
  • session write at finish was clearing useCount too early, causing spurious session failures (rep by Ed Hollingsworth)
  • Disable select-manager for win32 because of socket limits (#1344, rep by Olaf Fentsch)
  • IntMap wasn't handling deletes properly for ThrottleFilter (#1356, rep by sksamuel)
  • Change to addByteCodeEnhancer (#1157, rep by Costin Leau)
  • Add DynamicClassLoader.getNewTempClassLoader() (#1157, rep by Costin Leau)
  • Additional CodeSource fixes for JSPWiki (#1333, fixed! by ajaquith2)
  • ClassEntry for hot reloading needs to reset the dependency (#1345, rep by WIll Jaynes)
  • QDate needs to look up "GMT" not "UTC" to handle French locales (#1340, rebp by jiib75)
  • JSP validation of tag variables needs to handle inner classes (rep by Bill Au)
  • (2006-09-13) mod_caucho needs to update cached file for large dependency-check-interval (rep by Steve Baugus)
  • EJB/Amber create/getter/setter issues (#1265, rep by gzhu)
  • EJB: ejb-entry was not properly applied for EJB entity beans (#1322, rep by gzhu)
  • javax.el behavior incorrect for b.bogus (#1327, rep by slonopatamus)
  • Add ConnectionPoolMXBean.clear() to clear idle connections in the pool (#1314, rep by Sergiy Proskuryakov)
  • Update resin.conf change logic to avoid restart race condition (#1269, rep by Nick Berry)
  • servlet-mapping url-regexp wasn't working with welcome-file-list (#1298, rep by marcelloh)
  • <jvm-args> defines boot parameters (#1218)
  • SessionManager was created for closed web-app (#1295, rep by sks)
  • Connection pool needs to rollback after resetting the connection isolation for Oracle (#1208, rep by Will Jaynes)
  • Amber: added named parameters to JPA-QL (#1063, rep by Keith Fetterman)
  • Removed unnecessary #include "jvmdi.h" for resin-pro (#1313, rep by bdoperations)
  • ./configure heuristics to catch IBM JDK 64-bit (#1311, rep by bdoperations)
  • Amber query with named parameters was not implemented (#1063, rep by keith)
  • Amber NEW was not implemented in the SELECT clause (#1215, rep by fbertra)
  • Amber JOIN was not implemented in the FROM clause (#1214, rep by fbertra, Francois Bertrand)
  • <database> prepared statement caching shouldn't cache with resultType (#1310, rep by gzhu)
  • JNDI now throws NameNotFoundException instead of returning null (#1134, rep by Jan Heise)
  • Get certificates for code signing from jar files (#1008, solved by Andrew)
  • Hessian null float constructor was using Double instead (#1306, rep by Rick Mann)
  • Hessian constructor cost could overflow with too many args (#1305, rep by Rick Mann)
  • <log level="finer"> should also set the logger level (#1290, rep by brantd95)
  • JSP EL function returning void was generating junk for output (#1281, rep by slonopatamus)
  • mod_caucho reading cached localhost_6800 with headers
  • mod_caucho and 100-continue
  • mod_caucho and session-cookie value (#1279)
  • mod_caucho stripping of ;jsessionid= wasn't working
  • (2006-08-07) ejb-server jndi-name for local name wasn't handled properly (#1276, rep by Andrew Barson and Matt Pangaro)
  • isapi_srun.dll changed to default 6802 (#1274, rep by mindlink)
  • license signature fixes (rep by Matt Pangaro)

3.0.20 - Aug 1, 2006

  • removeAttribute(PAGE_SCOPE) was removing all attributes (#1271, rep by planetpratt)
  • redeploy-mode is allowed in web.xml
  • HotDeploy was forcing restart when multiple files changed simultaneously (rep by Bill Au)
  • JNI compilation issues on win32
  • JSP: PageContext may remove *.class on Error when recompile-on-error is false (#1258, rep by Jay Ballinger, vc)
  • (2006-07-20) Change close/restart logic to test for closing instead of closed (rep by Nicholas Berry)
  • Quercus: comparison with '.' wasn't converting properly (#1257, rep by koreth)
  • Quercus: isModified pwd needs to be static Quercus to avoid chdir issues (#655)
  • Quercus: basic Java Map support (#1109, #1228, rep by koreth, akdeivanaathan)
  • Quercus: add smtp_user and smtp_password
  • Quercus: dbpool generation for wasn't creating unique name (#1241, rep by koreth)
  • Quercus: each after end of array (#1233, rep by koreth)
  • Quercus: crypt salt issue with mantis
  • Hessian: add HessianProxyFactory.create method with classloader (rep by Eike Stepper)
  • rewrite-dispatch needs to handle http vs https (#1251, rep by Jill Wetzler)
  • Quercus: token module needs to expose "tokenizer" extension (#1232, rep by koreth)
  • Quercus: preg_split with null group (#1240, rep by George Cox)
  • Quercus: get_resource_type (#1156, rep by demian)
  • Quercus: update set_file_buffer to BinaryStream (#1242, rep by koreth)
  • Amber: resolve nullpointer in map lookup (#1149, rep by plehov)
  • Amber: introspection wasn't looking at parent classes (#1090, rep by Alex Cruise)
  • File.mkdirs needs to be synchronized (rep by Dave Winterbourne)
  • OpenSSL client cert not properly populating javax.servlet (#1185, rep by mattp)
  • Fixes for JDK 1.4 compatibility (#1201, rep by vbavin)
  • (2006-07-05) Quercus: performance work for includes (rep by koreth)
  • EL: "1.0" was not properly interpreted as double (#1225, rep by Jill Wetzler)
  • Quercus: token_name and token_get_all (#746, #1182, rep by koreth)
  • Quercus: improve error message when database driver missing (#1113, rep by koreth)
  • Quercus: shell_exec (#1205)
  • transactions with db-pool and max-idle-time (#1136, rep by Takahiro Fukuda)
  • c:set issue with jstl (rep by Nicholas Berry)
  • hmux issues with forward and response not skipping final bytes (#1190, mpavel)
  • GzipFilter wasn't handling late changes of status properly (#1087, rep by Frank Nestel)
  • Quercus: _GET/_POST needs to handle i18n (#1193, rep by artem)
  • Quercus: handle while(false) (#1176, rep by koreth)
  • Quercus: fetch with SQLException should return null (#1221, rep by artem)
  • OneToMany fetchType had incorrect default (rep by Christopher Stach)
  • mod_caucho.c should return the actual status code in caucho_request (#1075, fixed! by Rudy D'Hauwe)
  • BundleManager must not add '/' prefix (#1110)
  • wrapper.pl enhancements to clean up shutdown (#1194, rep by slamb)
  • HttpProxyServlet not properly handling 100 Continue (#1171)
  • mod_caucho should always obey dead-time even in config updates (#1174, rep by jdane)
  • Hessian: add setChunkedPost option to HessianProxyFactory (#1149, rep by Alon Salant)
  • Quercus: register_long_arrays (#992, rep by tyson)
  • Quercus: mail (#617)
  • Quercus: openlog, syslog (#699, #700)
  • Quercus: fopen can use include path (#631)
  • Quercus: add strict option (#621)
  • JSP: preliminary trim-directive-whitespaces (#1204, rep by Bill Au)
  • Hessian: added enum support for both Hessian 1 and 2 (#1209, rep by Thomas Wang)
  • Catch exceptions thrown by compileBatch so following classes can be compiled (rep by Bill Au)
  • Improved error message for <database> max-active-time close and attempted use (#1137, rep by Neil Fradkin)
  • JSP: Allow tablespace as JDBC JMS parameter (#1077, rep by Tom Gennaro)
  • resin:import was not establishing proper environment context (#1060, rep by Bill Au)
  • Check for invalid j_uri for j-security-check (#1206, rep by De Leeuw Thierry)
  • Avoid javax. and java. differences from changing ClassDependency (#1044, rep by Serge Knystautas)
  • ErrorPageManager should log servlet errors as log level="warning" (#1184, rep by Bill Au)
  • Hessian: string chunk can't end in high surrogate (#1203, rep by Thomas Wang)
  • JSP: x:parse needs to use Reader instead of input stream (#1083, rep by jrg745)
  • Added -javaagent, etc to wrapper.pl (#1211)
  • Missing synchronized on _mbeans in MBeanView (#1183, rep by lschumacher)
  • wrapper.pl should have pro.jar before resin.jar (#1202, rep by Bill Au)
  • Quercus: global $$foo (#1216)
  • EJB: Check for null in EjbSessionBean.deployServer (#1138, rep by Andrew Barton)
  • (2005-06-23) Hessian 2.0 draft implementation (#2006, rep by Mattias Arbin)
  • Added session-manager save-mode='before-flush' (#936, rep by Michael Harper)
  • Added client-connect-timeout as a load balancing configuration (#1168, #1195, rep by jornsvendsen, Serge Knystautas)
  • JMX/Admin: expand/complete ClusterClientMBean
  • JMX/Admin: removed Server as a context
  • (2005-06-14) Added jaf to distribution
  • java.util.logging.Logger getLevel() should return null if unassigned (#1085, rep by Bill Au)
  • java.util.logging Logger add <logger> (#1186, rep by Michael Earl)
  • java.util.logging Logger defaults to INFO (#1186, rep by Michael Earl)
  • java.util.logging significant fixes to logger vs handler level (#1186, rep by Michael Earl)
  • Quercus: is_subclass_of (#1180, rep by koreth)
  • Quercus: parent::foo(1,2,3,4,5,6) generated code (#1177, rep by koreth)
  • Quercus: dirname/__FILE__ issue (#1135, rep by Alex Sharaz)
  • Quercus: set_time_limit(0) should be treated as infinite (#1178, rep by koreth)
  • Quercus: adding double + long incorrect (#1179, rep by koreth)
  • Add load-balance-weight, client-slow-start-time, client-max-idle-time, client-fail-recover-time (#1168, rep by Serge Knystautas)
  • Jdk15Compat was missing astore_0 for _resin_compat_class (#1159, rep by L Plaetinck)
  • Added session support for triplicate, i.e. two backups (#1088, rep by wet745)
  • JMS: changed blobs for oracle to use RETENTION
  • (2006-06-02) isapi plugin issue waiting for non-post (#1150, rep by Matt Pangaro)
  • (2006-05-31) HttpProxyServlet needs to clear attributes on reading response (#1143, rep by Anoop Achuthan)
  • Quercus: mysql_query regression with UPDATE (#1131, rep by koreth)
  • TransactionManagerImpl._transactionList was not properly synchronized (#1151, rep by Matt Pangaro)
  • Added implementation for java.util.logging.LogManager.getLoggerNames() (#1124, rep by eahollin)
  • Quercus: self::foo from static method not properly handling q_this (#1145, rep by koreth)
  • Quercus: add str_ireplace (#1152, rep by koreth)
  • Quercus: multidimensional array unset wasn't copy-on-write (#1155, rep by koreth)
  • max-close-statements was not in the .rnc (rep by Takahir Fukuda)
  • (2006-05-22) Quercus: while (1) must handle java "statement not reached" (#1139, rep by koreth)
  • Quercus: mktime timezone issues (#1132, rep by koreth)
  • Quercus: Exception.getMessage() support (#1142, rep by koreth)
  • Quercus: __get, __set, __call (#638, #645)
  • Quercus: define(FOO, 1) was defining FOO as "FOO" (#1140, rep by koreth)
  • Quercus: basic abstract, interface implementation
  • (2006-05-22) Quercus: crc32 returns unsigned (#1133, rep by koreth)
  • Quercus: pack/unpack (#1102, rep by koreth)
  • Quercus: microtime fixes (#1119, fixed! by koreth)
  • Quercus: basic try .. catch support (#1120, 1121, 1062, rep by koreth)
  • (2006-05-19) Quercus: string comparison issues (#1125, rep by koreth)
  • Quercus: return ref evaluation for Java calls weren't calling methods (#1123, rep by koreth)
  • Quercus: complete module exception refactoring (#1122, rep by koreth)
  • Quercus: gregoriantojd (#1116)
  • Quercus: ServerArrayValue lazy fill was filling each time (rep by koreth)
  • (2006-05-16) Quercus: resources should be usable as keys (#1114, rep by koreth)
  • Quercus: fsockopen and fgets needs to return cr-lf (#1115, rep by koreth)
  • Quercus: fsockopen (#1104, rep by koreth)
  • (2006-05-15) Quercus: add server-name to <init> to populate $_SERVER (#1105, rep by koreth)
  • Quercus: debug_backtrace for interpreted mode (#1124, rep by koreth)
  • Quercus: compilation problems in basic throw statement (#1098, rep by koreth)
  • Quercus: static function called from static function (#1099, rep by koreth)
  • Quercus: <?PHP is case-insensitive (#1107, rep by koreth)
  • Quercus: '-' and '+' sometimes converted double to long (#1093, rep by koreth)
  • Quercus: double array references should be converted to integer (#1100, rep by koreth)
  • Quercus: '%' always returns an integer (#1106, rep by koreth)
  • Quercus: array_merge should return null on null argument (#1103, rep by koreth)
  • Quercus: null.toArray should return empty array (#1103, rep by koreth)

3.0.19 - May 15, 2006

  • (2006-05-11) getResources for library-loader and tree-loader weren't picking up directories like META-INF/ (#1052, #1095)
  • Cache: vary crc64 regression
  • resin.conf changes need to restart entire server
  • Quercus: Gallery2 running
  • Quercus: Java() regression failures (rep by Vic Cekvenich)
  • (2006-05-10) Amber: EntityManager.find should return null if no object (#1080, rep by fbertra)
  • Amber: CMP 2.1 loading was improperly casting (#1071, rep by Christian Amott)
  • el-ignored with tagx and el-ignored check in attribute vs body (rep by Gary Doughty)
  • Static JSP taglib was generating incorrect fragment code (rep by Bryan Davis)
  • ServletException should implement getCause() in terms of getRootCause() (#1076, rep by J Dane)
  • (2006-05-02) AbstractRotateLog uses truncate instead of remove for old file
  • stdout.log rotation file name for size overflow uses incorrect time (rep by Bill Au, #1054)
  • Important security issue on windows involving web-app-deploy (affects 3.0.17 and 3.0.18)
  • Quercus: eval() needs access to the symbol table and "this" (rep by Jack Zhang)
  • (2006-04-14) ToCharResponseAdapter should not close the underlying writer on close (#989, rep by Tony Field)
  • CGI was sending output through PrintWriter instead of OutputStream (#1035, rep by mineral)
  • Added aliases and java type for ISO-8859-10 (rep by Michael Young)
  • AbstractHttpResponse.finish was not ignoring client disconnect (#1045, rep by Mattias Jiderhamn)
  • LdapAuthenticator (#666, rep by Rudy D'Hauwe);
  • Basic SSI support with SSIServlet (#205)
  • JSP/tag file compilation issue (#1037, rep by Serge Knystautas)
  • ISAPI handling of 100-continue and flushing not properly reading 'f' response (#982, rep by assurone)
  • Added connection-error-page for IIS (#911, rep by mitch)
  • Add build rule to convert .rnc to .xsd for Resin schema (#410)
  • JMS: postgres issue in creating ephemeral tables (#1034, #1041, rep by peden, Bryan Davis)
  • ./configure changes for x86_64 (#915, rep by teemupo)
  • Redeploy of Host was not clearing caches (#979, rep by sks)
  • Added database/wrap-statements (#957, rep by Shawn Laubach)
  • Profilers supports ?sort=count (#829, rep by T Moorer)
  • Quercus: "public static" wasn't getting parsed (rep by Patrick)
  • JSTL: changes to support Xalan/Xerces with fast-jstl (#889)
  • SSL: added support for ca-revocation (#935, rep by YouchunChen)
  • Open transactions now closed on shutdown (#934, rep by Thomas Gennaro)
  • JSP: EL wasn't promoting "3.9" to double properly (#919, rep by m5)
  • Quercus: add APC API
  • Quercus: auto_prepend_file, auto_append_file (#616)
  • Quercus: JavaClass::foo, i.e. Java static functions (#584)
  • Quercus: print not properly parsed as expr (#1039, rep by THomas Moorer)
  • XML: external DTD not reading encoding (#916, rep by GreenEyed)
  • XML: DOMBuilder improperly adding DOCTYPE (#945, rep by Jim Spring)
  • incorrect initialization of allocation table for session (#999, rep by doughty)
  • win32 httpd.exe not properly clearing bind sockaddr_in (#1038, rep by wet745)
  • ProfileServlet now allows format=xml (#539, rep by Bill Au)
  • file-store with redeploy was sending warning message (#1020, rep by Mattias Jiderhamn)
  • <host> with id="" and hostName treats id as host-alias (#1017, rep by tderouin)
  • add <prologue> to <web-app> for classloaders (#1027, rep by gwagenknect)
  • add resource-default for .rar files (#416, #662, #663 rep by George Cox)
  • Add basic session MBean information (#314, rep by Serge Knystautas)
  • MergePath was returning incorrect path for missing file (#281, rep by david)
  • Add redeploy-check-interval (#242, rep by pburleson)
  • Amber/CMP: get collection needs to reinitialize the AmberConnection (#997, rep by nquery)
  • Amber/CMP: CacheConnection cannot be reused. (#998, rep by nquery)
  • Hessian: Calendar needs special serialization (#1023, rep by R Mann)
  • CMP: cached entity beans were not rechecking the database on findByPrimaryKey (#1003, #1012, rep by Christian Amott)
  • Amber: create/update was not in XA properly (#971, #1013 rep by gzhu, P Budzik)
  • (2006-04-03) JSP: add print-null-as-blank (#899, rep by koreth)
  • Hessian: Improve error reporting for 401 (#988, rep by igor)
  • possible sync issue on session shutdown (#974 rep by CHanan Bruanstein)
  • /WEB-INF needs to return 404 NOT FOUND (#1032)
  • CronResource did not properly handle DST (#1033)
  • roles support for JaasAuthenticator with getRoles and isUserInRole (#995)
  • log with path="stdout:" cannot be rotated, so should give error messages (#958, rep by Gary Doughty)
  • logout of one session in a SSO should log out all (#599, rep by Vinny)
  • added log message when initialization complete (#902, rep by rudy)
  • rollover-count is allowed in <log> (#833, rep by T Moorer)
  • path-format with *.gz can write directly to gzip (#345)
  • Servlet close events (session and listener) must be called before resources are closed (#987, rep by volga)
  • For JSP, config.getServletName() should return the JSP name (#1006, rep by briandeng)
  • JMS: setNull incorrect type in send (#1028, rep by peden)
  • welcome-file-list was not applied to forward/include (#463, rep by mw46)
  • HEAD with 404 (#1026, rep by mattryall)
  • Burlap deserializer wasn't deserializing "Object a;" fields properly (#1015, rep by Jerry Tian)
  • Support for @com.caucho.loader.RequireReload (#194, rep by Serge Knystautas)
  • Apache 2.2 configure needs to use APR_BINDIR and $\{apr_bin}/apr-config (#1024, rep by lilmatt)
  • chunked encoding for isapi (#1007, #1018, #968 rep by Warren Bailey)
  • rewrite-redirect is now allowed for the <server> block (#85, rep by tzaperas)
  • using unitialized variable for iis install-as (#1006, rep by Sergiy Proskuryakov)
  • (2006-03-28) ./configure changes for Apache 2.2 (#869, rep by Leonid Kaminsky)
  • ./configure needs to set apache_exe from apxs when available (#996, rep by pomo)
  • Add basic IGNORE support for XML (#962)
  • @EJB and @Inject need to work with inheritance (#952)
  • EJB 2.1 synchronization with the database is via java:comp/env/persistence/PersistenceContext/resin-ejb (#904, rep by koreth)
  • synchronization issues with access.log (#927, rep by Han)
  • jspx namespace with http: URI was causing exception while looking for tag (#993, rep by jrg745)
  • JSTL wasn't handling {0,number,currency} properly (#931, rep by Keith Fetterman)
  • use select-manager instead of enable-select-manager (#973)
  • rewrite-dispatch at <host> level wasn't grabbing the application (#1010, rep by Bill Au)
  • JMX: ArrayType.getElementOpenType was not properly defined (#994, rep by duchene)
  • jvmti code needs to release jvmti instance
  • welcome-file-list with unknown servlet causes nullpointer (#976, rep by marcelloh)
  • Refactored Amber to use javax.persistence (#943, rep by koreth)
  • JSP files can be injected with J2EE annotations
  • setTextContent needed on DOM Node (#985, rep by Bill Au)
  • Update thread pool to use stack instead of ring to improve spike handling (#905, rep by Christopher Stach)
  • Add environment-system-properties flag for jinfo issues (#151, #411 rep by Kirk Rasmussen)
  • XPath cache was holding objects from old classloaders (#951, rep by Mattias Jiderhamn)
  • web-app merging for webapps/ROOT was improperly handling id="/" (rep by Keith Fetterman)
  • enable-select-manager had incorrect order in ServletServer (#967, rep by Rudy D'hauwe)
  • Amber: refactor for javax.persistence draft update
  • Hessian: use setChunkedStreamingMode when available (#955, rep by Alon Salant)
  • Use SoftReference to handle JSP memory issues with many pages (#600, rep by Uwe Schaefer)
  • Allow EL expression with missing web.xml (#941, rep by tinyspace)
  • Add missing synchronized in ServletManager.addServlet (#946, rep by Fiaz Hossain)
  • httpd.exe wasn't allocating enough space for the -J args count (#947, #948, #959, rep by Ed Hollingsworth)
  • <database> should support ManagedConnectionFactory (#221, #224, rep by D Rice)

3.0.18 - Feb 23, 2006

  • ConnectionPool needs to be a lifo to avoid accumulating too many pool items (rep b Kaminsky Leonid)
  • max-create-connections wasn't included in DBPool (rep by Kaminsky Leonid)
  • (2006-02-15) mod_caucho was not properly handling check-interval larger than 32-bits (#926, rep by Mutsubu Inayama)
  • Changes in ./configure and Makefile for MacOSX EGREP libtool issue (#432, rep by jdane)
  • (2006-02-09) class-loader can now appear anywhere, not just first element (#924, rep by dlcr)
  • Amber inheritance needs to work with CMR (#301, rep by Francois Bertrand)
  • JMX Notifications on restart (#195, #237, rep by Erik Hartenian, Glenn Rush)
  • fmt:param wasn't printing children for validation (#893, rep by Ed Hollingsworth)
  • Apache2 mod_caucho needs to grab REDIRECT_URL and REDIRECT_QUERY_STRING (#87, rep by A Jacklin)
  • change escaping of command line argument for WIN32 service installation (#141, rep by Steve Arbour)
  • Hessian: improved cost calculation for constructors (#134, rep by Marc Ewert)
  • Hessian: swallow exceptions when calling getters (#57, rep by Alon Salant)
  • HttpProxyServlet needs to rewrite redirects (#51, rep by J Banister)
  • added allow-content-type and deny-content-type to GzipFilter (#119, #826, rep by Anupam Bagchi)
  • JSP tag try-catch-finally not generating safe variable (#908, rep by koreth)
  • Added threading library detection code for freebsd (#485, rep by spatula1)
  • java.util.Map as field wasn't properly introspected and error reported for CMP (#544, rep by p0p0lam)
  • Amber delete in transaction was ignoring recreation of same object (#462, rep by nquery)
  • ejbSelect was not properly converting return types (#860, rep by Andrew Barton)
  • byteCodeClassScanner not properly extending byte arrays (#837, fixed! by koreth)
  • Amber setNull for binary arrays wasn't using proper java.sql.Types (#871, fixed! by koreth)
  • EJB was not allowing get/setServer as fields (#865, rep by dlcr)
  • Added load-tld-on-init parameter to JspServlet
  • ServletContext.getURL should use exists() instead of canRead() to test for validity (#906, rep by jmhong)
  • jsp:include withing SimpleTag wasn't picking up encoding (#864, rep by Andrey Grebnev)
  • JspCompiler should ignore errors in initalizing the Application object (#587, rep by bb)
  • session data must be persisted before sendRedirect (#503)
  • Response.flushBuffer must flush response to client (#497)
  • sort session attributes on serialization for CRC issues (#821, fixed! by Mark Adams)
  • persistent store forced extra access_time updates (#821, fixed! by Mark Adams)
  • config parser needs to ignore DocumentType (#588, rep by bb)
  • added expand-suffix to web-app-deploy (#664, rep by George Cox)
  • add session-config/cookie-append-server-index (#706, rep by Serge Knystautas)
  • add min/max to profiler (#540, rep by Bill Au)
  • added system information to log file (#488)
  • added war-deploy as alias for web-app-deploy (#661, rep by George Cox)
  • Python implementation of Hessian bug fixes (#413, rep by Tim Peoples)
  • Handling UTF-8 characters over 0x10000 (#507)
  • Filters need the init() called at startup time (#494)
  • JSTL x:transform needs to handle body content flushing properly (#456, rep by urutora90)
  • HttpSession.setExpireInterval wasn't updating persistent session interval (#457, rep by Serge Knystautas)
  • forward must merge both old and new query string (#898, #876 rep by Sunil Racherla)
  • .tld loading required for JSF (#146, rep by prakashhegde)
  • XmlAuthenticator issue with passwords.xml changes (#475)
  • XmlAuthenticator wasn't handling empty userName (#494, rep by Shane Cruz)
  • ListenerResource must only spawn one listener for topics (#427, rep by martin)
  • body tag output flushes were disabling internal proxy cache (#279, rep by quotemedia)
  • tag-file issues with circular dynamic-attributes (#268, rep by Caleb Richardson)
  • Improve error message for failing connect-to-socket call (#225, rep by david)
  • multiple filter wrappers and forward were not handled properly (#243, rep by T Fukada)
  • Change error message for missing .tld file (#239)
  • ServletServer wasn't getting the ClusterContainer from its own classloader (#231, rep by K MacClay)
  • -server-root wasn't setting server.root properly on windows (#389, #495, rpe by martin, Keith Fetterman)
  • Fixed getResourceAsStream issue with spaces in classpath (#64, #598, rep by E Bowman, Kai Virkki Efecte)
  • wrapper.pl kill enhancment (#52, fixed! by B Bernstein)
  • JSTL XPath wasn't properly handling namespaces (#23, rep by jjongsma)
  • c:forEach wasn't properly restoring var with variables in request (#373, rep by bregnvig)
  • BundleManager wasn't finding properties in .jar files (fixed! by drice)
  • conn.isClosed() was throwing IllegalStateException (#564)
  • ExpiresFilter was not accepting IoC configuration (#890, rep by Serge Knystautas)
  • includes of .jspx files were not keeping namespaces (#872, rep by Bill Au)
  • JspCompiler wasn't properly setting isXml for jspx (#872, rep by Bill Au)
  • MysqlXAConnector cannot handle local transaction optimization (#894, rep by Brandon Cruz)
  • (2006-01-24) tag attribute of String[] wasn't set properly (#885, rep by tipiirai)
  • use-persistent-store error message needing Resin Professional (#558, rep by K Fetterman)
  • Add log message when searching classpath for .tld files (#888)
  • failed setuid now gives warning message
  • refactored fragment allocation for cache backing store to avoid timing issues
  • changed shutdown/restart code to use timed socket connections
  • Added warning message when srun index does not match expected value (#484)
  • backing store locking/timing issues causing trouble with cluster store (#848, rep by C Amott)
  • lifecycle/ResinServer was not distinguishing between destroying and destroyed (#878, found! by Mark Lai)
  • Add auto-flush attribute to access-log (#820, rep by Rick Ross)
  • duplicate <log> were outputting duplicate results (#877, rep by Mark Lai)
  • (2006-01-10) Added enable-select-manager
  • virtual hosts not handled by resin were not properly left to Apache (#846, #576 rep by borisk, Roberto Pesenato)
  • exceptions in resources should show stack trace (#445)
  • Check for null getParameterValues in DispatchRequest (#493)
  • AbstractRolloverLog had JDK 1.5 dependency (#498)
  • Added UserPreparedStatement.toString() (#523)
  • Add -pid-dir to wrapper.pl (#384)
  • wrapper.pl fixes for stdin being closed (#400, rep by ptuckey)
  • WIN32 doesn't support SNDTIMEO/RCVTIMEO (rep by Michael Quigley)
  • Configuration needs to ignore protected setters (#863, rep by Bill Au)
  • Quercus: version_compare fixes (#610, rep by Stefano Bagnara)
  • XML parser needs to detect missing whitespace between attributes (#472, rep by M Duchovny)
  • 64-bit detection for JNI needs to be distinguished from 64-bit for plugins (rep by Leonid Kaminsky)
  • Added <moved-permanently> to <rewrite-dispatch> (#403, rep by A Achuthan)
  • java.util.logging now uses the System property "file.encoding" to encode strings (#322, rep by Han)
  • Host with id="*" wasn't automatically started (#849, rep by Jean-Francois Lamy)
  • ./configure not properly detecting Apache 2 vs Apache 1 (#429)
  • ParseTagManager methods need to be synchronized for JSP compilation on server startup (#704, rep by Bryan Davis)
  • FileServlet needs to get character-encoding from init-param (#583, rep by Anoop Achuthan)
  • BigDecimal.ZERO is a JDK 1.5 constant (#858, rep by Vinny)
  • AbstractLogRollover should not use java.util.logging for messages to avoid deadlock (#851, rep by Thomas Moorer)
  • plugins should not dispatch automatically if no ResinConfigServer (#3, rep by M Muenke)
  • ./configure script wasn't adding resinssl on solaris (#665, rep by Mark Demma)
  • jsp:include/jsp:forward not properly handling runtime expressions (#852, rep by Rudy D'hauwe)
  • PageContext.removeAttribute must handle invalid session (#703, rep by Bryan Davis)
  • Amber entities not properly detached at end of context (#824, rep by C Amott)
  • (2006-01- 10) chdir/pwd fixes
  • Added Remote-IP to HTTP debugging (rep by Michael O'Dea)
  • Quercus: sprintf reworked to handle format incompatibilies (#553, rep by Stefano Bagnara)
  • Quercus: var_export (#647)
  • (2006-01-06) Quercus: get_defined_functions (#556, rep by Stefano Bagnara)
  • Quercus: func_get_args copy/ref issues (#607, rep by Stefano Bagnara)
  • Quercus: $_FILES, is_uploaded_file, move_uploaded_file (#652,
  • Persistent session block reference count not properly updated (#596, rep by Keith Fetterman)
  • Quercus: added mcrypt (#606)
  • Quercus: round has optional argument (#612, rep by Stefano Bagnara)
  • Quercus: table/column metadata encapsulated for mysql
  • Quercus: get_declared_classes (#605)
  • Quercus: extra arguments should be logged, not PHP warning (#512, rep by Stefano Bagnara)
  • Quercus: strtr and with longer strings (#534, rep by Stefano Bagnara)
  • Quercus: HTTP_COOKIE_VARS (#569)
  • Quercus: regexp support for :alnum: (#597)
  • Quercus: added alternate syntax (#536, rep by Stefano Bagnara)
  • Quercus: objects extend ArrayValue
  • Quercus: session_set_save_handler (#511, rep by Stefano Bagnara)
  • Quercus: setlocale, array_merge_recursive (#529, #533 rep by Stefano Bagnara)
  • Quercus: generating line numbers for compiled PHP code
  • Quercus: $_SERVER is writeable (#563, rep by Stefano Bagnara)
  • Quercus: const values in interpolated associative arrays parsed wrong (#586)
  • Quercus: register_shutdown_function (#551, #573, rep by Stefano Bagnara)
  • Quercus: === for arrays was implemented improperly (#560, rep by Stefano Bagnara)
  • Quercus: recognize $\{$foo} (#562, rep by Anoop K Achuthan)
  • Quercus: method_exists, exec, parse_str (#568, #574, #552)
  • Quercus: mysql_fetch_field shouldn't switch catalog when null (#554, rep by Stefano Bagnara)
  • Quercus: parse priority with ?: and += (#524)
  • Quercus: reserved words: $echo, $require, $or, $and, $xor (#537, #531, #530 rep by Stefano Bagnara)
  • Quercus: date issues with 'st', 'nd', 'rd' (#548)
  • Quercus: serialization of array added extra ';' (#555, fixed! by Stefano Bagnara)
  • Quercus: _SERVER['REQUEST_URI'] needs query string (#550, rep by Stefano Bagnara)

3.0.17 - Dec 22, 2005

  • (2005-12-22) Quercus: add parse_url (#508, rep by Stefano Bagnara)
  • (2005-12-20) Multiple hosts combine by host-name, not root-directory (#489)
  • .tld parsing should not evaluate EL expressions (#499)
  • Added file/cluster store logging for length of serialized object (#522)
  • Quercus: unset allows multiple arguments (#509, rep by Stefano Bagnara)
  • Quercus: stdClass wasn't found from script (#513, rep by Stefano Bagnara)
  • Quercus: $return is not a reserved name (#514, rep by Stefano Bagnara)
  • Quercus Apache module: apache_note, apache_request_headers, virtual, getallheaders (#516, rep by Stefano Bagnara)
  • Added check for JDK 1.5 ($\{java.isJjava15()}) for Quercus

3.0.16 - Dec 10, 2005

  • (2005-12-10) Caching no longer automatically adds Expires and Cache-Control
  • merge hosts based on host-name, not root-directory
  • (2005-12-07) conn.isClosed() should not throw an exceptiono (#453)
  • Offset bug in session/cache fragment store (#460, #480, #4, rep by K Fetterman, C Amott, A Balandran)
  • jmx validation needs to check vs 1.5
  • cache-mapping adds max-age and s-max-age
  • cache-mapping adds url-regexp (#440, rep by B Yang)
  • _collections in jms.ConnectionFactoryImpl needs to be synchronized (#401, rep by T Gennaro)
  • pageContext.findAttribute was throwing IllegalArgumentException for invalidated session (rep by B Davis)
  • welcome-file mapping was caching query parameters (#486, rep by Joshua Manton)
  • httpd.exe buffers sizes need increasing (#435)
  • when detect error while writing cache, disable keepalive and close
  • sockets and SSL changed to use blocking instead of non-blocking (#476)
  • Hosts with unset root-directory were getting merged without warning (#474, rep by L Geller)
  • Digest auth was requiring quoted string at end of client response (#420, Dustin Stallings)
  • DOM needs to add the DocumentType as the first value for a parsed XML (#284, rep by foolfish)
  • (2005-11-15) QEntity and QNotation were returning bad values for getNodeType (#424)
  • Added mime-type for xsl files (#444, rep by rdhauwe)
  • always-load-session now forces a load, ignoring clustering information (#439)
  • fmt:param wasn't accepting RT expressions (#464, rep by zgia)
  • EL expressions should be enabled if there is no web.xml (RSN-503, rep by Bin Sun)
  • JSTL fast was requiring <jsp/> tag (RSN-492)
  • AmberManager was requiring JDK 1.5 (RSN-504, rep by Kaven Lin and Takahiro Fukuda)
  • Change order of ssl and crypt in ./configure (rep by Mattias Jiderhamn)

3.0.15 - Nov 15, 2005

  • (2005-11-14) -stdout/-stderr need to initialize the stream (rep by Keith Fettermann)
  • Sessions should be closed before servlets (rep by Michael Fortin)
  • Caching fixes for s-maxage and Vary cookies
  • Keepalive bookkeeping cleanup
  • Caching backend fixes for fragment allocation
  • (2005-10-10) Added Connection.sendBroadcast for broadcast events (rep by Kirk Rasmussen, RSN-429)
  • Added protocolCloseEvent to ServerRequest (rep by Kirk Rasmussen, RSN-429)
  • HttpStream needs a wrapper to avoid closing twice and allowing pooling (rep by Esahu Morales)
  • Amber IN(foo.next.bar) wasn't properly supported (rep by Christian Amott, RSN-439)
  • HttpPath lookup recursive loop (rep by Ajit Puthiyavettle)
  • (05-09-30) Apache1 mod_caucho needs REQUEST_CHUNKED_DECHUNK (rep by Darren Chapman, RSN-453)
  • sendRedirect wasn't closing the output (RSN-325)
  • isapi_srun was producing inaccurate error message when unable to connect backend (rep by Jean-Francois Lamy, RSN-408)
  • Add getPreparedStatement to UserPreparedStatement (rep by James Kucharski, RSN-402)
  • getResource wasn't properly looking up resources in classloader parent (rep by masayuki takahashi, RSN-395)
  • Hessian/Burlap now requires java.io.Serializable of serialized classes (rep by Thaddeus Dombrowski, RSN-443)
  • If client disconnects in mod_caucho, clean up server stream properly (rep by yBranko Gracnar, RSN-420)
  • @OneToOne bidirectional is now allowed (rep by Francois Bertrand, RSN-406)
  • Added _FILE_OFFSET_BITS=64 to Linux JNI compilation (rep by Bill Au, RSN-388)
  • HostRegexp wasn't properly matching secondary regexps (rep by Shane Cruz, RSN-417)
  • ByteCodeParser wasn't grabbing method exceptions properly (rep by Marcus Richardson, RSN-437)
  • JSP 2.0 .tag file wasn't assigning properly for 'value' attribute (rep by William Wallis, RSN-424)
  • XML CDATA wasn't supporting xfffd (rep by Tom Davies, RSN-418)
  • Adding an index.jsp was not properly detected. (rep by P Barry, RSN-415)
  • JSP 2.0 .tag file was not allowing Java reserved names as attributes (rep by Jeroen van Vianen, RSN-433)
  • JSP files need to add .tld dependency (rep by Ajit Puthiyavettle, RSN-423)
  • Missing JSP adapter declaration for 1.2/2.0 tag files (rep by Andrey Grebnev, RSN-436)
  • Single-signon timeout was affecting other sessions (rep by K Wimmer, RSN-404)
  • Allow EL expression \${foo.bar} to refer to system property "foo.bar"
  • 100-continue response needs to be flushed (rep by T Fukuda, RSN-414)
  • Caching updated to obey disk-size attribute (rep by Craig Lurey, RSN-412)
  • bug in LruCache.removeTail preventing true LRU removal
  • use mail.smtp.host and mail.smtp.port for mailto: (rep by A Sharaz, RSN-409);
  • jsp tld-dir wasn't picked up properly (rep by J Benton, RSN-425)
  • Implicit cluster selection is now available (rep by Bill Au, RSN-416)
  • JSP tag file issue with dynamic properties and scriptlets (rep by D Rice, RSN-419)
  • Changed meaning of <xa> to mean the connection should participate in a transaction (default true)
  • Added xa-forbid-same-rm to avoid Oracle join issues (rep by Patrick Burleson, RSN-426)
  • (2005-09-12) Remove deadlock in AccessLogWriter (rep by studdugie, RSN-421)
  • sendError after flush is an illegal state
  • Set-Cookie for version 1 needs to set max-age and path
  • Host ETag needs to be set even on initial call (rep by Keith Fetterman)
  • Update issues with mod_caucho (rep by Keith Fetterman)
  • XmlAuthenticator.addRole must be public (rep by A Puthiyavettle, RSN-405)
  • Allow AbstractAccessLog overriding (rep by Serge Knystautas, RSN-400)
  • Cleaned up FastCGIServlet for socket reuse (rep by A Achuthan, RSN-363)
  • Added character-encoding init value to FileServlet (rep by E Bowman, RSN-387)
  • LoopTagSupport should use getLoopStatus() in implementation (rep by Erik Boye, RSN-401)
  • Added <restart-mode> to <server> (RSN-396)
  • dependency tag was using wrong implementation class (rep by Will Jaynes, RSN-403)
  • MessageDrivenBeans not properly freeing received messages (rep by T Gennaro, RSN-380)
  • Enhanced mod_caucho debugging (rep by Branko Granar, RSN-381)
  • Call setURL on java.sql.Driver when available (rep by Kirk Rasmussen, RSN-293)
  • The default .pid file now uses the value from the -server argument (RSN-50)
  • path-format issues with stdout-log and stderr-log (RSN-334)
  • mod_caucho configuration updates need to recycle sockets (rep by Michael McDonald, RSN-378)
  • Configuration errors now send severe errors instead of warnings (rep by Bill Au, RSN-336)
  • Add warning if a web-app's directory is the same as resin.home (RSN-393)
  • $\{server.root} and $\{host.root} are now prefered variable names
  • c:if wasn't handling var parameter properly (rep by Ralph Schaer, RSN-392)
  • PageContext wasn't properly restoring stream from SimpleTag (rep by Sergey Zubtcovskii, RSN-375)
  • EL expressions weren't marshalling to String properly (rep by Alex Grief, RSN-370)
  • EJB/Amber ManyToMany wasn't properly supporting order-by (rep by Christian Amott, RSN-311)
  • EnvAmberManager needs to be separate per ejb-server (rep by Christian Amott, RSN-308)
  • (Aug 11, 2005) Significant changes to session and cache persistence store
  • Improved error message in wrapper.pl.in when JAVA_HOME isn't set and PATH doesn't contain java (rep by Ryan Fields, RSN-367)
  • Use Lifecycle in ResinServer
  • <host> and <host-deploy> are properly merged (rep by Ivan Jouikov, RSN-360)
  • Explicit <web-app> can override the webapps context-path (rep by Abhijit Naiksatam, RSN-364)
  • FastCGIServer must parse "200 OK" as setStatus(200) (rep by Jason Foreman, RSN-366)
  • JNI memory allocation was using incorrect size on 64-bit servers (rep by Tom Hintz and Stephen Henrie, RSN-250, RSN-374)
  • JniServerSocketImpl _fd must be assigned inside a synchronization (rep by Tom Hintz, RSN-250)
  • DynamicClassLoader.loadClass must be synchronized (rep by Joseph Toth, RSN-373)
  • RunnerRequest was not properly clearing the isSecure flag on each request (rep by David Rice, RSN-137)
  • Use dependency-check-interval for webapps update checking (rep by Vincent Massol, RSN-186)
  • xsi:schemaLocation should be optional (rep by Vojtech Habarta, RSN-358)
  • xsl:template needs to allow override (rep by C Yttesen, RSN-310)
  • setuid order changed to appear after ports (rep by Mark Abbott, RSN-306)
  • Amber-managed entity beans weren't properly cache timing out (rep by christian amott, RSN-313)
  • RotateStream default period and size must be infinite (rep by Bill Au, RSN-315)
  • Period of "-1" turns into infinite (rep by Bill Au, RSN-315)
  • Amber query cache should not be limited to first 25 items (rep by christian amott, RSN-328)
  • read-only Entity beans should not be reloaded in a transaction (rep by christian amott, RSN-330)
  • JavacErrorParser now uses the javac enconding instead of file.encoding (rep by T Fukuda, RSN-332)
  • jsp:directive.include wasn't working with jspx (rep by Dmitry Savenko)
  • Updated default log rollover size to 2G (rep by Bill Au)
  • Fixed race condition in ResinServer.close (fixed! by Fiaz Hossain)
  • Added setRestartOnClose to ResinServer (rep by Fiaz Hossain, RSN-350)
  • Added EnvironmentLogger.removeHandler (rep by Fiaz Hossain, RSN-351)
  • Need to change MDB and session shutdown order to properly close response (rep by Guenther Wieser, RSN-365)
  • Added %D to access-log format to allow for millisecond timing (rep by Bert Ano)
  • Added override of resolveProxyClass in ContextLoaderObjectInputStream (rep by Gunther Wieser, RSN-345)
  • Fixed pthread_mutex_lock define in Solaris to mutex_lock (Joe Dane, RSN-343)
  • JNI calls require JNICALL and JNIEXPORT (rep by Chanan J Braunstein, RSN-341)
  • pro Makefile.in was missing resin_os (rep by Bill Au)
  • Added IOExceptionWrapper to catch Hessian errors (rep by Patrick Lightbody)
  • Added support for Amber ORDER BY with many-to-one relations (rep by A Barton, RSN-86)
  • Added compiler="eclipse" to <javac>

3.0.14 - July 5, 2005

  • (2005-05-30) package version check needs to allow more recent versions (rep by Jan Kriesten, RSN-327)
  • Fixed EntityManager compatibility issue with JDK 1.4 (rep by Christian Amott, RSN-321)
  • mod_caucho host->etag must only be set when configuration is properly updated
  • expand-cleanup-fileset needs to merge with explicit <web-app> (rep by Bill Au)
  • Updated AccessLog flushing to avoid threading/locking hotspot
  • RemoteFilesystem needs to validate .war digest at end of transmission to avoid sending data partial .war files (rep by Patrick Burleson, RSN-290)
  • QDocument importFragment of DocumentFragment wasn't looking at proper node to copy (rep by James Howe, RSN-259)
  • Updated AccessLog flushing to avoid buffer corruption (rep by studdugie)
  • mod_caucho.c needs to check for null headers[i].val (fixed! by Klas Lindfors)
  • Updated configure script to properly create and remove temp file (rep by Mark Abbott)
  • Update ClassDependency to use getDeclaredXXX and to recursively check parent classes
  • (2005-06-15) resin:include wasn't properly enabled (rep by Greg Schroeder)
  • run.cpp set_jdk_args was missing resin_home parameter (fixed! by Patrick Burleson)
  • <servlet> needs to allow both <init> and <init-param> (rep by Kirk Rasmussen)
  • Update JDKReader to support java.io encodings if Charset doesn't support (rep by T Fukuda)
  • (2005-06-10) Added numeric support to internal database
  • backed out Context.lookup exception changes to minimize 3.0.14 disruption
  • Changed x-anonymous caching so the external headers are always no-cache (rep by Kirk Rasmussen)
  • session timeout was using incorrect access-window from persistent-store instead of session-config (rep by B Davis)
  • jni_vfs.c pthread_lock #define needs to change to pthread_mutex_lock (rep by Tom Hintz)
  • session store not properly configured in SessionManager
  • reversed stdout: change, continues to work as before (rep by Keith Fetterman)
  • keepalive timing issue keeping track of keepalive threads (rep by Malte Muenke)
  • (2005-05-26) EJBCompiler should be able to work even through transactions aren't available (rep by Kirk Rasmussen)
  • sendError from inside error page must not go through ErrorManager (rep by Massimo Mirabito)
  • Amber DoubleType.setParameter wasn't handling the double type property (rep by Mieke Mocke)
  • --with-openssl wasn't properly setting SSL_INCLUDE and SSL_LIB (rep by Forrest Girouard)
  • Jar wasn't properly catching and retrying for changed .jar files (rep by Shane Cruz)
  • EjbConfig.BeanComparator.compareTo needs to be a total order for sort() to work (rep by Kirk Rasmussen)
  • Context.lookup needs to throw NameNotFoundException (rep by Kapil)
  • error page with sendError or rethrow causes error page trouble (rep by Amit Jain)
  • JspCompiler needs to check for valid -app-dir and report a message (rep by Kapil)
  • Encoding needs to return KOI8-R instead of KOI8_R for CharSet.forName (rep by Boris Kovalenko)
  • rewrite-dispatch was missing from web-app schema (rep by Anoop Achuthan)
  • Node.getBaseURI() isn't available in JDK 1.4 (rep by Bin Sun)
  • (2005-05-25) JMS null pointers for empty bodies (rep by Thomas Gennaro)
  • JMS null pointer when headers null (fixed! by Thomas Gennaro)
  • HessianServlet wasn't calling in.setSerializerFactory (rep by John Didion)
  • host-name can now accept EL values (rep by David Becker)
  • JMS mysql had invalid column type (rep by Kapil)
  • Cache expansion issue in LongKeyLruCache not observing powers of 2
  • mod_caucho fixes for 404 issues reading backend map
  • mod_caucho wasn't reading length properly from the no-change response
  • Avoid SetByteArrayRegion entirely (rep by J Tullett)
  • JMS MemoryQueue issues with QueueBrowser (rep by Thomas Gennaro)
  • Table row allocation clock not properly reset
  • BTree methods not properly synchronized
  • BTree remove wasn't properly creating WriteBlocks and saving changes
  • BTree remove logic wasn't merging blocks
  • (2005-05-18) cache, range, and chunked bug - pdf issues (rep by Chanan Braunstein)
  • Updated wrapper.pl and httpd.exe to set -Dresin.home and -Dserver.home to RESIN_HOME and SERVER_HOME (rep by Suresh Sastry)
  • ./configure script was using libcrypt instead of libcrypto (rep by Forrest Girouard)
  • transport-guarantee redirect wasn't adding query string properly (fixed! by David Becker)
  • JSP EL sessionScope NPE when session="false" (rep by Bin Sun)
  • Added cookie-module-cluster to session-config defaulting to false (rep by Anupam Bagchi)
  • session timeout must match persistent timeout (rep by Forrest Girouard)
  • filter-class validation was using old BeanUtil instead of Config (rep by Zhenlei Cai)
  • isapi_srun.dll issues with flushing (rep by Jason Fotinatos and Clark Archer)
  • GzipFilter now accepts deflate as well as gzip (rep by Anupam Bagchi)
  • Added TaskResource
  • __FILE__ is available in the config file for the current file (rep by Glen)
  • stdout: and stderr: use the original system.out. They are no longer affected by <stdout> and <stderr> (rep by David Becker)
  • (2006-05-16) UserPoolItem used IllegalStateException(Throwable) which isn't available on JDK 1.4 (rep by Patrick Burleson)
  • Added read-data-source and xa-data-source to ejb-server
  • refactor amber to handle multiple ejb-server blocks (rep by Francois Bertrand)
  • mod_caucho.c compilation problems with solaris
  • ByteCodeClassScanner needs to swallow .class parse exceptions and log the error
  • Amber boolean fields now allowed as booleans in queries
  • PingMailer wasn't allowed as resin:type to ping (rep by T Moorer)
  • resin:type must override createXXX method
  • Add LIKE support to internal database
  • persist() should ignores duplicate entities
  • Allow reverse ordering of CMP 2.1 map (rep by H Grace)
  • @ManyToOne JoinColumn was ignoring nullable and unique (rep by Igor A Tarasov)
  • Check for nullpointer in Jmx.copyContextProperties (rep by D Becker)
  • JSP not properly handling backslash in rtexprvalue (rep by Klaus Friedel)
  • Changed default keepalive timeout to 60s

3.0.13 - May 6, 2005

  • (2005-05-04) missing lock on mod_caucho configuration read
  • Response flushing could occur early on echo
  • (2005-05-03) IP logging for hmux wasn't setting proper IP (rep by Allen Firstenberg)
  • (2005-05-02) EJB initialization wasn't properly setting parent class loaders for servers (rep by Patrick Burleson)
  • ELParser wasn't consistent in the copy order (rep by Caleb Richardson)
  • Improve EJB error message with missing setter
  • Added setReadTimeout to HessianProxyFactory (rep by John Didion)
  • EL functions weren't converting char parameters properly (rep by Thorbjorn Anderson)
  • continuous redeploy on .war/.ear failure has changed with the deploy refactoring (rep by Patrick Burleson)
  • ROOT.war handling was not handling case-insensitive properly (rep by J Rogers)
  • JaasAuthenticator has misleading error message for missing login-module (rep by Jan Heise)
  • c:forEach issues with step != 0 (rep by T Palmer)
  • cleaned up StoreManager.getServerList() for startup (rep by Mirko Herzog)
  • EnvironmentProperties.put needs to allow for non-string values (rep by Zhenlei Cai)
  • Hessian ref writing wasn't creating proper integers (fixed! by Andy Nahapetian)
  • resin:message needs attribute for name in .rnc (rep by D Becker)
  • .ear module needs to allow id (rep by Patrick Burleson)
  • JdbcMessage needs to set autoincrement data before testing for table (fixed! by Mircea Crisan)
  • Hessian deserializers were not properly cached (fixed! by John Didion)
  • session timeouts must match persistent session timeout
  • DynamicClassLoader should ignore .class files which cannot be parsed (rep by Bryan Davis)
  • active-wait-time is now configurable (rep by Michael O'Dea)
  • JSP fragments weren't properly assigning the tag's context (rep by Bear Bibeault)
  • FileServlet wasn't handling If-Modified-Since sent by IE (rep by Anupam Bagchi)x
  • (2005-04-26) On Win32, use GetPrimitiveArrayCritical for get_byte_array_region (rep by Brian Deng and Joel Firehammer)
  • Hessian/EJB now supports forwarded transactions
  • _toByte not properly initialized in ToByteResponseStream
  • JSP issues with c:forEach and proper tag parent initialization (rep by Serge Knystautas)
  • description was missing from relation-role (rep by Igor Tarasov)
  • HmuxLoadBalanceServlet needs to retry timed out (rep by Scott Nelson)
  • (2005-04-10) Fixes to backup index calculation for '-' and '_'
  • JMX toString() and hashCode() need to allow invocation (rep by Jason Chaffee)
  • Refactored file and cluster persistent store to share common persistent backing
  • Moved common JMX/Environment handling code to EnvironmentDeployController
  • Changed default access log rollover size to 1G.
  • Reordered ObjectName so type is always first
  • Added MBeanHandle to allow proxies as return values of MBeans
  • (2005-04-04) ClusterStream wasn't tracking connections accurately (rep by Scott Nelson)
  • Add HmuxLoadBalanceServlet logging (rep by Scott Nelson)
  • Reworked DeployController to make JMX common
  • (2005-04-02) Add round-robin strategy to HmuxLoadBalanceServlet (rep by Dan Schwalbe)
  • clustered store wasn't properly invalidating remote
  • clustered session id problem with overflow of 64 (rep by Dan Schwalbe)
  • Added config: scheme and RemoteFilesystemServlet
  • ClassDependency needs to sort Exception
  • Allow resin:type in openssl password (rep by John Didion)
  • Added multipart form upload check for full disk (rep by Paul Nakada)
  • JMX wasn't registering the JMX delegate properly (rep by Jason Chaffee)
  • JDK 1.4 compat must remove LocalVariableTypeTable and fix LocalVariableTable for jikes 1.22 (rep by Joel Firehammer)
  • Caching db.Store needs to close RandomAccessFile, since RandomAccessFile doesn't seem to have a finalizer
  • Added static com.caucho.server.resin.Resin.shutdown() (rep by
  • Hessian readResolve/writeReplace were requiring public (rep by Josh Helmer)
  • (2005-03-21) AccessLog for hmux was printing remote IP for local machine, not client (rep by Markus Ken Moriyama)
  • Cluster communication issues with keepalive
  • removed DynamicClassLoader finalizer to help GC
  • Thread threads on web-app restart to avoid ThreadLocal issues (rep by Bill Au)
  • Adding missing jaxrpc API methods (rep by Fiaz Hossain)
  • Adding missing saaj API methods
  • added <connection> config to <database>
  • relaxng performance cleanup
  • ./configure compilation with broken openssl (rep by Mark Abbott)
  • i18n virtual issue with dots (rep by Itera Denmark)
  • Attributes.getValue(uri,localName) and null namespace issues (rep by Scott Lamb)
  • EJB/CMP was creating sequences even when create-database-tables='false' (rep by Christian Amott)
  • Fixed mapping of "/*" for plugins. (rep by Olaf Jentsch)
  • Added cluster client management to disable particular backends (rep by T Stray and Gary Doughty)
  • Added sample iptables in contrib
  • Cleaned up 503 failover for HmuxLoadBalanceServlet (rep by A Sade and J Robinson)
  • ResinConfigServer was losing host and timeout information
  • Added driver-type to database driver configuration
  • persistent-store now included as default resin.conf
  • i18n was using javaName instead of the encoding which was failing for KOI8-R
  • HmuxRequest needs the header capacity increased to 256
  • ignore-client-disconnect was ignored
  • added path-format to access-log (rep by Matthew Schmidt)
  • Added archive-path to web-app (rep by D Rice)
  • Amber extended to handle more than 64 fields (rep by christian)
  • detect illegal "xmlns:" attribute (rep by Jeroen van Vianen)
  • log non-serializable values put into sessions
  • EJB server start() changed to an environment callback for timing (rep by Andrea Mari)
  • ExpressionEvaluator was ignoring FunctionMapper
  • Add host-alias-regexp
  • make LinkProxy serializable
  • in .ear files, the manifest classpath entry is added to the ent-app environment
  • XSLT handling of default namespace (rep by James Howe)
  • Removed poll_read from accept
  • Added com.caucho.jms.resource.ListenerResource and com.caucho.jms.resource.MessageSenderResource.
  • Added var to <resource>
  • Added $\{root.*} EL variables
  • Refactor of server.config
  • Hello, world tutorial order of servlet-name and url-pattern
  • PageContextImpl must call responseAdapter.finish(), not close() (rep by Bryan Davis)
  • "ru" was using cp1251 instead of ISO-8859-5 (rep by Dmitry Tsigelnik)
  • (2005-02-28) mod_caucho issues with keepalive (rep by Gary Doughty)
  • Refactor of server.deploy

3.0.12 - Feb 15, 2005

  • JspCompiler needs to understand environment values like javac (rep by Hong Wu)
  • OpenSSL issue: QJniServerSocket was using JDK 1.5-only method (rep by Gary Doughty)
  • removed Page finalize method

3.0.11 - Feb 15, 2005

  • isapi keepalive backed out due to issues with chunked encoding
  • (2005-02-14) JSP char buffer issues with large buffers (rep by Markus Ken Moriyama and Bryan Davis)
  • setup.exe changes for Windows 2003 (rep by Jonathan Cavadini)
  • (2005-02-08) set content-length: 0 on 304 responses (rep by Takahiro Fukuda)
  • taglib-location needs to handle "file:/..." values (rep by Bill Au)
  • isapi_srun.dll issues with g_config initialization (rep by Amos Shapira)
  • Multiple changes in .smap/line numbering
  • JSP .tag files weren't validating properly (rep by Alon Salant)
  • logging in HmuxRequest wasn't handling offset correctly (rep by Oscar Sumano)
  • isapi_srun.cpp wasn't allowing keepalive (rep by Frank Nestel and Jens Gerhard)
  • (2005-01-27) synchronization issue with class loader and entry cache (rep by Thorkild Stray and Charles Reid)
  • (2005-01-26) CGIServlet error status wasn't reported correctly (fixed! by Nancy Deschenes and G Homicki)
  • CGIServlet needs to handle Location like sendRedirect (fixed! by Nancy Deschenes and G Homicki)
  • CGIServlet needs to throw exception for non-zero exit status (fixed! by Nancy Deschenes and G Homicki)
  • CGIServlet needs to search to handle path_info (fixed! by Nancy Deschenes and G Homicki)
  • CGIServlet needs to change the directory (fixed! by Nancy Deschenes and G Homicki)
  • include request.getHeaderNames wasn't handling if-modified-since properly (rep by Stephen Henrie)
  • mod_caucho updates to handle manual hosts (rep by A Jacklin)
  • HttpProxyServlet was not handling reset connections properly (rep by J Banister)
  • Issues with JDK 1.4 compatibility conversion (rep by Bryan Davis)
  • Config exceptions now logged with stack trac. (rep by Patrick Burleson)
  • MessageServer.Consumer.destroy() must check for session null before closing (rep by Patrick Burleson)
  • byte[] values for CMP were not properly handled (rep by Alvin Lau)
  • allow directory webapps/foo.war/ to represent /foo (rep by Patrick Burleson)
  • (2005-01-21) Improve Hessian error message when sending overloaded arguments (rep by Christian Campo)
  • IIOP marshall was using write_abstract_interface instead of write_object for Session objects (rep by Andrea Mari)
  • Added logging to print restart information on halt (rep by Ann Marie Gunther).
  • CGIServlet has new "executable" attribute (rep by Greg Brondo)
  • Added unclean-shutdown to openssl configuration
  • Added Amber load, create, update logging
  • Improved thread naming
  • AbstractParser needs to distinguish between top-stream and substream (rep by S Aiken)
  • Forbid user-name on all Linux, since it's not properly implemented. (rep by Allon Bendavid)
  • JSP namespace declarations weren't generated for %@ taglib (rep by Ari Savolainen)
  • Updated ResinStatusServlet to handle global JMX values (rep by Neil Fradkin)
  • HmuxRequest needs to break large responses into chunks (rep by Bryan Davis)
  • Last-Modified check should allow +0000 as synonym of GMT (rep by Scott Yancey)
  • Changed validation messages to include namespace when necessary (rep by Jared Cook)
  • ResinConfigServer of "current" uses gethostname
  • ContextImpl.list needs to pass "" instead of null for null list (rep by Andrea Mari)
  • Added forbidden, gone, and not-found to rewrite-invocation
  • FastCGIServlet needs more than one keepalive socket (rep by Chem)
  • CacheEntry wasn't removed when replaced
  • encodeURL shouldn't alter ?a=b (rep by Alexk)
  • JspCompiler was assuming JMX environment which was unavailable for a standalone call (rep by Hong Wu)
  • (2005-01-18) Add logging of Hessian server-side errors (rep by Christian Campo)
  • Burlap/Hessian deserialization with Object.class wasn't picking up types (fixed! by Mat McGowan)
  • Added error reporting when Hessian setting of a field fails (rep by ramk5101)
  • HessianRuntimeException needs to implement getCause() (fixed! by Christian Campo)
  • Hessian ArrayDeserializer needs to return the actual array type (fixed! by Christian Campo)
  • Hessian throwables should use the actual throwable class (rep by Christian Campo)
  • JspPrecompileInstance with -conf wasn't creating application properly (rep by Hong Wu)
  • HessianProxy needs conn.disconnect (rep by Steen Jansdal)
  • ServletServer was starting ClusterDef ports
  • Added enable to DirectoryServlet
  • Added default to resin:set
  • Added XsltFilter getResult to improve customization
  • Check for httpd2 for Apache2 on SuSE (rep by Don Coleman)
  • getWriter needs to set the checkError() value (rep by Dorel Vaida)
  • EJB message beans need separate JNDI environment for each bean (rep by Patrick Burleson and Ilker Egilmez)
  • web-app-deploy now allows for expand-cleanup-fileset (rep by Benoit Lubek)
  • eliminated plugin recursive loop with host_name="" (rep by Bryan Davis)
  • (2005-01-14) ExpandEntry wasn't handling null digest values (rep by Dmitri Rakitine)
  • ./configure test for openssl on solaris needs proxy libs (rep by Mark Abbott)
  • compilation cleanup for saaj (rep by Jeroen van Vianen)
  • broken ejb in .ear file should display errors in the webapps
  • .war and ejb .jar files in .ear need to recognize the Class-Path (rep by Patrick Burleson)
  • eliminated need to retroweaver, fixing .class for jdk14, jikes, and jrockit
  • (2005-01-11) HostContainer.getErrorApplication needs to set servlet-name
  • changed "ru" locale to default to ISO-8859-5 (rep by Dmitry Tsigelnik)
  • host/web-app regexp need to add mbeans properly
  • web-app tld specification must override default .jar/.tld definition (rep by Jeff Turner)
  • Hessian char serialization changed to use String consistently (rep by Dimitri Minich)
  • Amber should not pick up Hibernate files (rep by Jan Heise)
  • Compilation changes for JDK 1.5.0_01 (rep by Jeroen van Vianen)
  • FastCGIServlet should handle "status" as special return code
  • Fix EL equality checking for objects
  • JSP 404 checking could forwarding twice, resulting in incorrect access log
  • Connections not properly checking for port closure on request
  • Multiple ClusterStore synchronization issues
  • Error in validation of MDB: activation-config-property (rep by Andreas Mueller)
  • (2005-01-05) persistent store needs to respect the session timeout, not have a longer one
  • added cmp-field auto-generate="false" to disable autogen (rep by Richard Yee)
  • (2005-01-03) change database validation
  • cluster-store database threading fixes for index
  • JSP buffer cleanup
  • host regexp was instantiating too many JMX values (rep by Shane Cruz)
  • Combined keepaliveBegin/keepalive in Port for reliability (rep by Dave Mollenhoff)
  • Added connection-max to http/srun ports (rep by Dave Mollenhoff)

3.0.10 - Dec 20, 2004

  • Amber @OneToMany must handle parameterized types. (rep by Carlos Pita)
  • EnvironmentProperties.put needed to implement Object-argument methods (rep by Chris Pratt)
  • Add javac max-batch to configure the number of .java compiled (rep by Yaakov Chaikin)
  • ContextImpl.composeName reversed prefix and suffix (rep by N Yurchenko)
  • HmuxLoadBalanceServlet was not detecting closed clients properly (rep by Leonid Geller)
  • resin:type and resin:import need their namespaces (rep by Robert Koberg)
  • (2004-12-06) licenses should be allowed in the -server-root (rep by chem)
  • Amber fields were initialized before properly sorting, causing potential field swapping
  • Jar reload requires the jar files be closed (rep by Chris Chen)
  • getMethod in EjbBean needs to check concrete superclasses before interfaces (rep by Jan Gregor)
  • rotate-log with period and size need to work together (rep by S. Higgins)
  • DynamicClassLoader should cache resource URLs
  • Application buildInvocation needs to cache the filter chain
  • BundleManager needs TimedCache
  • ClassDependency digest sorting must distinguish overriding methods
  • ClassDependency and Depend should use CRC64
  • filters calling JSP including HTML were using getOutputStream (rep by Matt Raible)
  • resource-ref must validate JNDI at Application init (rep by Matt Raible)
  • flush() in WrapperResponseStream should not automatically allocate an OutputStream (rep by Matt Raible)
  • jstl was still picking up Resin's JSTL implementation (rep by John Hyun)
  • transaction timeout must only mark the transaction as rollback-only (rep by Po Cheung)
  • Listeners in web.xml should override .tld listeners (rep by Matt Raible)
  • If connections aren't closed, save the allocating source automatically
  • application listener destroy must be called after session listener destroy
  • xsl:decimal-format wasn't escaping &apos; properly (rep by Rick Meyer)
  • request.getServerName() must return the Host value, not the canonical name
  • c:param should work as grandchild of c:import (rep by Steve Swing)
  • c:param in c:import wasn't encoding '%' as '%25' (rep by Dean H)
  • EJB wasn't generating code for inner classes properly (rep by Jan Gregor)
  • Added cookie-http-only (rep by Knut Forkalsrud)
  • jsp-directive-page wasn't setting the default page-encoding (rep by Chris Chen)
  • LocaleSupport wasn't handling fmt:bundle prefix (rep by Steve Swing)
  • Avoid potential timing problem with AbstractHttpRequest.getSessionManager (rep by Neil Fradkin)
  • fmt:bundle not working properly with fallback locale (rep by Charles Fu)
  • Add lazy-servlet-validate for ISPs (rep by J Robinson)
  • auto-consraint with no roles is equivalent to forbidden (rep by Hiroaki Kawai)
  • transport-guarantee was not enforced in combination with form-login
  • Added <ssl-session-cookie>
  • JSTL fmt:setLocale wasn't handling variant (rep by Paul Egli)
  • Accept Foo$Bar as <tag-class>
  • portlet-10.jar needs to be compiled with JDK 1.4
  • JspCompiler now compiles batches of JSP files (fixed! by Bin)
  • Added require-file to ear-deploy and war-deploy (rep by Patrick Burleson)
  • Added expand-prefix to ear-deploy and war-deploy (rep by Patrick Burleson)
  • Amber query with trailing tokens were not printed as early as possible
  • abstract-schema-name needs to check for conflicts
  • Added <server-header> to override Server: Resin/foo (rep by Adam Ratica)
  • %T option wasn't properly counting the expired time for keepalives (rep by Jan)
  • XmlAuthenticator setPassword wasn't properly setting principal (rep by Dave Brosius)
  • XmlApplicationPath setRoot wasn't setting root (rep by Dave Brosius)
  • JMX TimerJob wasn't setting nbOccurrences properly (rep by Dave Brosius)
  • PasswordCredential wasn't properly assigning mcf (rep by Dave Brosius)
  • amber UnaryExpr isBoolean had improper test (rep by Dave Brosius)
  • Application.addSecurityRole was missing (rep by Joe Bissen)
  • HotSwap should work with -jdwp - only available with JDK 1.5
  • mod_caucho wasn't properly handling 503 for virtual hosts when Resin down (rep by K Fetterman)
  • (2004-11-26) Added keepalive-max to <host> (rep by Dane Foster)
  • UserConnection.addStatement NPE (rep by Dimitri Rakitine)
  • gzip filter and include were not interacting properly with caching (rep by Scott Yancey)
  • Added "merge:" schema (rep by Takahiro Fukuda)
  • JMS/JCA wasn't reusing pooled items properly (rep by Bryan Davis)
  • Changes for JMS Oracle compatibility with Topics (rep by Bryan Davis)
  • Added message-consumer-max to ejb-server for message queue parallelism (rep by C Cao)
  • (2004-11-18) JMS compatibility with Oracle (rep by Bryan Davis)
  • Connection UserPoolItem must store original transaction for delisting (rep by Dimitri Rakitine)
  • Store fragment locking on wrong object
  • Statement overflow for pooled connection (rep by Dimitri Rakitine)
  • UserPoolItem/PoolItem issues with multiple transaction enlisting (rep by Dimitri Rakitine)
  • OneToMany for fields wasn't generating proper code
  • Burlap Base64 was incorrect (fixed! by kellegous)
  • hashCode in CachedQueryKey has potential NPE (fixed! by Dave Brosius)
  • XML parsing of ATTLIST wasn't checking "ID" properly (fixed! by Dave Brosius)
  • EJB-QL BETWEEN wasn't handling NOT correctly (fixed! by Dave Brosius)
  • Need to allow description in <web-app> (rep by Keith Fetterman)
  • Added mbean-name to <log>
  • com.caucho.security.PolicyImpl needs to handle null ProtectionDomain from RMI (rep by Damien Mascord)
  • ThreadPool startConnection was returning false when it should wait for connection (rep by Dave Moellenhoff)
  • Cleaned log message for JSSE socket with no client certificate (rep by javatester)
  • Context parent classloader not properly set for host regexp (rep by R Clifton)
  • 304 was adding Expires for non-cached configuration (rep by javatester)
  • Improved error reporting on JniFilePathImpl (rep by E Ceccarelli)
  • JMS ObjectMessage deserialization requires context loader (rep by A Nyhren)
  • Added META-INF/resin-ejb-jar.xml (rep by P FitzPatrick)
  • shutdown-wait-max was not properly catching interruptions to wait for web-app timeout (rep by D Turakhi)
  • (2004-11-08) fixes to the new proxy caching code
  • (2004-11-07) lazy web-app now has idle-time for undeploy
  • lazy web-app with startup errors are not automatically restarted by alarm
  • Increased default characters for session cookie-length to 16
  • Updated session cookie generation to enhance randomness
  • .class dynamic reload was not correctly releasing class definition (rep by Gary Doughty)
  • License init order needed changing to handle IBM JDK (rep by Gary Doughty)
  • HmuxRequest needs to handle keepalives properly by ignoring Connection: close (rep by Chip Yamasaki)
  • ThreadPool needs to call interrupted() before wait (rep by Javier Ordonez)
  • added resin.jar startup to Resin-Pro with resin.conf parsing (rep by F Garcia)
  • Added bind-ports-after-start (rep by Bryan Barkeley)
  • Explicit web-app in resin.conf must override the webapps/ROOT
  • Multipart form now returns caucho.multipart.form.error.size (rep by Ryan Choi)
  • Multipart form now accepts caucho.multipart.form.upload-max (rep by Ryan Choi)
  • Updated i18n to handle java.nio.charset.Charset (rep by Koichi Takehara)
  • cluster-store updated to avoid massive dump on startup (rep by Felipe Garcia)
  • Added <error-page> at server level for busy messages (rep by Craig Lurey)
  • Added rewrite-dispatch (rep by Trieu Truong)
  • Added rewrite-real-path (rep by Trieu Truong)
  • Added capability for DBPool to create runtime pools (rep by Craig Lurey)
  • JSP SMAP problems with included files (rep by Louis Calisi)
  • JSP error-page with filters had ClassCastException (rep by Bryan Barkeley)
  • Check for stdout-log setting to stdout (rep by Bill Au)
  • OpenSSL needs to listen to specific host interface
  • servlet-mapping order was incorrect in .rnc file
  • (2004-10-19) .smap fixes for .jsp scriptlets (rep by Louis Calisi)
  • use .smap for ErrorPageManager instead of LineMap (rep by Louis Calisi)
  • <ping> socket timeout needs to accept Period (rep by Bill Au)
  • updated JNI to properly handle read-timeout and write-timeout (rep by Jud McKee)
  • updated ssl write handling to handle client disconnects (rep by Jud McKee)
  • HessianOutput.writeRef was incorrect (rep by Toby)
  • allow resin:type in string values (rep by Bob Rhodes)
  • removed unnecessary copies for file and caching writes
  • converted cluster to use internal database
  • converted caching to use internal inodes from database
  • limit the allowed URL size in the query cache
  • fmt:param wasn't properly printing XML version for validation (rep by Matt Raible)
  • x:parse wasn't recognizing doc attribute for JSTL (rep by John Hyun)
  • JSTL custom tags weren't checking for isScripting (rep by Jason Chaffee)
  • client-read-timeout needed in cluster-definition (rep by Girish Rathor)
  • solaris resin.h needs to define socketclose to close (rep by Richard Fein)
  • run-at servlets were not properly closed on web-app shutdown (rep by Gary Doughty)
  • Allow for paths like MergePath in document-directory (rep by Patrick Lightbody
  • Disable JSP .static pages to simplify precompilation (rep by Randy Eckhoff)
  • added support for char-caching of includes
  • added dispatch-wraps-filters
  • SC_SWITCHING_PROTOCOLS typo (rep by Nancy Deschenes)

3.0.9 - Oct 1, 2004

  • (2004-10-01) Application needs to have _configException test as part of isModified()
  • pages generating sessions default to non-cacheable
  • JSP taglib issue with doEndTag returning bogus value (rep by Alpesh)
  • Fix Date second issues in HTTP response (rep by Ben Tyler)
  • multiple issues with resin:set, host context, and PathBuilder (rep by Will Jaynes)
  • missing null checks in JNI SSL code (rep by Andrew Marcuse)
  • validation of <filter-mapping> with Resin namespace flipped order filter-name order (rep by Olaf Krische)
  • request variables not available in JSP tag files (rep by Jason Chaffee)
  • tag files weren't receiving proper request and response values from wrapped PageContextImpl (rep by Jason Chaffee)
  • External compiler should discard missing paths from compilation classpath to avoid warnings (rep by David Soleno)
  • wrapper.pl wasn't properly handling pid removal (rep by Jason Chaffee)
  • Cache/Range fixes
  • Range fixes for multiple range values
  • (2004-09-15) Refactoring distribution into Resin/Resin-Pro
  • Connection.isClosed was throwing illegal state exception (rep by Philip Lau)
  • (2004-09-10) JMX fixes to support jconsole
  • HessianMicroInput was still looking for <value> (rep by Tomasz Lempart)
  • When client cert returned, use CLIENT_CERT_AUTH from getAuthType() (rep by Keith Fetterman)
  • Added tld-file-set (rep by Sean Moore)
  • HTTP Range fixes
  • persistent store should not automatically save empty sessions
  • JSP session="false" should still allow pageContext.findAttribute with session (rep by Jason Chaffee)
  • 204 and 304 should allow for content-length (rep by Jason Chaffee)
  • Added AlwaysModified dependency to dispatching errors to avoid getting stuck on startup
  • (2004-09-02) enhanced JspCompiler to handler -conf (rep by Frank Millstrong)
  • fixed synchronization of access log for rollover (rep by A Marcuse)
  • updated EL to look for public interface when method isn't public
  • cleanup of servlet-mapping with Resin restart
  • Added verify-client for jsse (rep by Dung Huynh)
  • added burlap: JNDI
  • instantiation testing needs to return better message for broken runtime classes (rep by Richard Yee)
  • resin.conf needs to handle public interface but private classes
  • isapi_srun service restart fixes (rep by Linden Anderson)
  • Hessian serialization of home interfaces fixed (rep by hsim)
  • AccessLog timing cleanup (rep by Anupam Begchi)
  • SecurityRoleMapFilterChain loop bug (rep by Ross Lamont)
  • ClassDependency needs to sort the fields and methods (rep by Markus Baron)
  • (2004-08-25) added <alias> to jsse configuration (rep by Christian Meunier)
  • added dependency-check-interval to <jsp> (rep by ernest Mecham)
  • Apache2 mod_caucho wasn't accepting chunked encoding (rep by Mandel AndrAcceas)
  • isapi_srun.dll changes to fix IIS logging issues (rep by Matt Illston)
  • (2004-08-11) Range support needs to deal with multipart/byteranges (rep by Paul Ryan)
  • (2004-08-06) WebAppConfig used String.contains which only exists in JDK 1.5 (rep by Allon Bendavid)
  • Added filter-mapping capability to include/exclude (rep by Ivan Jouikov)
  • Added Hessian send-collection-type flag to avoid sending the type (rep by Juergen Holler)
  • Fixed Solaris OpenSSL initialization (rep by Richard Fein)
  • Added Hessian/Burlap ServiceContext.getHeader (rep by Simone Bordet)
  • Added OpenSSL checks to ./configure
  • (2004-07-30) -with-openssl-lib wasn't setting -lssl (rep by Richard Fein)
  • Added stylesheet cache for XSL (rep by Stephen Henrie)
  • Distributed sessions not checking for empty (rep by Warwick Poole)
  • Updated blob search using Types.BINARY (rep by Warwick Poole)
  • XSL transformer doesn't handle QNode with baseURI == null (rep by Leandro Fernandez)
  • (2004-07-26) Path.getURL needs to escape '#' and '%' (rep by Chris Donnelly)
  • .tag files with scriptlets and dynamic attributes weren't handled (rep by Matthias Ernst)
  • ./configure will now check for libsso.so as weel as libssl.a and libssl.dylib
  • Change SSL client handshake errors to ClientDisconnectException (rep by Menashe Duchovny)
  • <web-app> with url-regexp and common document-directory was breaking context-path (rep by
  • Better error message for use-persistent-store without cluster
  • Better error message for OpenSSL with missing JNI library (rep by Ben Booble)
  • ResinStatusServlet added invocation and proxy hit ratio (rep by Bill Au)
  • ResinStatusServlet added cluster client information (rep by Warwick Poole)
  • x:transform with systemId was forcing recompile (rep by S Henrie)
  • Updated ./configure for Solaris and sun compiler (rep by Mark Femal)
  • transaction timeout wasn't properly reset at end of context
  • (2004-07-21) JSP 1.2 allows xmlns="http://java.sun.com/JSP/TagLibraryDescriptor" (rep by Frank Millstrong)
  • Caching with disconnect and include was producing null caches
  • Changed names of default servlets to "resin-file" (rep by Suavi Ali Demir)
  • servlet-mapping with default servlet-name should default to url-pattern
  • infinite loop with JMX isInstanceOf (rep by Mark Abbott)
  • Timing issue with end of transaction vs pool timeout (rep by Dimitri Rakitine)
  • Apache Basic auth needs to take precedence (rep by Keith Fetterman)
  • (2004-07-13) JSP .tag files not recompile on JSP changes (rep by Alon Salant)
  • JSP recompilation on tag changes (rep by Hiroshi Iwatani)
  • LinkedHashMap with EL issue (rep by Rob A)
  • ./configure was using "==" instead of "=" (rep by J Xia)
  • http read issues with Content-Length and offset != 0 (rep by Alon Salant and Jason Chaffee)
  • (2004-07-01) Substantial EJB refactoring in progress
  • c:forEach with array less than begin attribute should ignore body (rep by Bin)
  • XPath gt with node set reversed args (rep by Sondre Bjornebekk)
  • jsp:include with jsp:param wasn't catching scripting (rep by Willy Dockx)
  • jsp:include with null jsp:param wasn't handling null properly (rep by Jeroen van Vianen)
  • HttpServletRequestWrapper throws IllegalArgumentException (rep by Hiroshi Iwatani)
  • ./configure added twice to resin-3.0.8 (rep by Jean-Baptiste Quenot)
  • XML EntityResolver wasn't opening source with system id property (rep by Jared Cook)
  • ./configure with Apache2 on solaris wasn't picking up LD_SHLIB (rep by Dustin Tenney)
  • JSP taglib BeanInfo needs to override default bean (rep by Bryan Davis)
  • The directory-servlet should only be looked up once (rep by Adam Ratica)
  • Added validate-taglib-schema for <jsp> (rep by j huynh)
  • Added "on" as a value for j_user_cookie_auth (rep by Don Coleman)
  • Add <allow-servlet-el> to default resin.conf (rep by Wai Wong)
  • Class hot-redeploy was disabled (rep by Stephen Henrie)
  • Need to unwind from UserTransaction.begin() when error (rep by Dimitri Rakitine)
  • Added TransactionEnhancer
  • Removed unnecessary thread.interrupt() in JavaCompiler
  • Removed extra lock on LruCache.clear()

3.0.8 - Jun 8, 2004

  • (2004-06-08) Win32 locking issues in jni_vfs.c
  • JMX StandardMBean overrides (rep by David Dunkley)
  • BodyContext.clearBody must not be abstract (rep by Matthias Ernst)
  • JMX MBeanOperationInfo equals needs overriding (rep by David Dunkley)
  • BasicDeserializer needs to handle character (rep by S Monson)
  • QDocument validation with null namespace in createElementNS (rep by Mattias Ernst)
  • resin:choose and resin:set s/b allowed in <resin> and <server>
  • Added --enable-64bit support for Solaris (rep by Michael O'Dea)
  • (2004-06-04) fn:length support for array (rep by Jeroen van Vianen)
  • JNI/native changes to accomodate 64-bit jni
  • (2004-06-03) resin:include regression issues with relative paths (rep by Greg Schroeder)
  • xml parse fixes related to namespaces and DOM attributes
  • (2004-05-28) Misc memory fixes
  • Relax jar manifest checking (rep by Matthias Ernst)
  • Updated JMX StandardMBean implementation
  • Added ThrottleFilter
  • Jar depend caching needs to be cleared when the jar changes
  • (2004-05-24) Alarm priority queue impl changed to heap
  • Added "hessian:" JNDI URL
  • Resin's main MBeanServer must be a proxy
  • (2004-05-20) .war reloading fixes
  • TempCharReader.read() method not returning correct length (rep by Sunil Kamath)
  • host-deploy undeploy (rep by cornwell)
  • (2004-05-17) Missing ZipFile close for TldParsing
  • Added adaptive LRU
  • Fixed IIOP exception marshalling (rep by Andrea Mari)
  • JSP flushing issues: removed JspBufferedWriter (rep by
  • added --disable-ssl to ./configure (rep by Michael O'Dea)
  • Cleaned up UserConnection automatic statement closing
  • Cached XML parsing for web.xml (to reduce memory use)
  • (2004-05-07) On windows, need to strip trailing '.' and space from URL segments
  • log rollover can compress to .gz (rep by E Ceccarelli)
  • AbstractHttpResponse.isIgnoreClientDisconnect needs to check _originalRequest
  • AccessLog rollover fixes (rep by Andrew M)
  • important bug fix with win32 keepalives (rep by Kelvin Xu)
  • mod_caucho problems with virtual hosts fixed (rep by Chris Smith)
  • load balancing with sticky sessions was ignoring dead time (rep by Ben Sinclair)
  • Hessian/Burlap need to handle private constructors
  • file servlet with NOT_MODIFIED and cache-mapping needs to set expires (rep by Alon Salant)
  • Hessian support for java.io.File
  • resin:set wasn't handling var/value attributes
  • (2004-05-06) Added day-of-week to cron (rep by E. Ceccarelli)
  • FastCGI/PHP fixes (rep by Dan Aloma)
  • ear deployment wasn't showing up in /caucho-status (rep by B Bothwell)
  • Added message-driven proxy to merge *.ejb files (rep by Alon Salant)
  • Deadlock fixed with ExpandDeploy
  • wrapped encodeURL for include needs to go to parent
  • regression issue with contextInitialized() (rep by Jeroen van Vianen)
  • (2004-04-30) startup-mode, redeploy-mode and JMX control of web-apps (rep by David Solano)
  • Fixed LruCache NPE (rep by Dave Moellenhoff)
  • session in-use must be tested on timeout (rep by Gary Doughty and Mattias J)
  • fixed OpenSSL session cache initialization (rep by D Orrell)
  • fixed OpenSSL verification depth checking
  • web-app in web-app-deploy overrides defaults (rep by Mark Church)
  • XPath nodeSet values need to return NodeList (rep by Mattias J)
  • Session invalidate issues with file-store (rep by Bernd Eggink and Alon Salant)
  • ELFormatter patterns should be relative to the current context
  • Added validation for verify-client
  • ResinStatusServlet was displaying the "current" host twice
  • check for null with OPENSSL_INCLUDE in configure.in (rep by Keith Fetterman)
  • DOM importNode infinite loop (rep by H Mullings)
  • Added support for separate Apache APR directory (rep by Don Coleman)
  • Fixed XML regression error for doctype
  • Fixed NPE in ResinStatusServlet (rep by Eric Hauser)
  • (2004-04-20) Add setId to ServletConfigImpl
  • tld listener need to start on application start, not first JSP - needed for JSF (rep by Joe Dane)
  • Added SSL_load_client_CA_file for ca-certificate-file support (rep by D Orrell)
  • XSL from DOMSource or SAXSource needs CRC-64 caching for Hibernate (rep by Jeroen van Vianen)
  • Vector wasn't properly read by Hessian
  • Add ClearCacheByPattern (rep by John Crossman)
  • lazy validation of tag classes
  • BodyTag optimization issues with Tag's doStartTag() returning BUFFERED (rep by Viktor Panassov)
  • regexp-mapping with mismatch should return 404 (rep by Dave Moellenhoff)
  • regexp-mapping has null for servlet-class (rep by Dave Moellenhoff)
  • GC cleanup
  • (2004-04-15) Cluster issues with backup servers (rep by Remilon)
  • Catch connection errors in Hessian/Burlap proxy to allow for failover (rep by Andrew Wason)
  • EL array not properly handling out of bounds exception
  • Improved OpenSSL error messages.
  • HmuxLoad balancer now fails over to backup on 503
  • Send 503 busy message when load balancer can't connect to backend (rep by Thomas Eichberger)
  • Automatically save allocation stack traces once a missing close() is found
  • cleanup of JNI select for IIS (rep by Muthu Shanmugam)
  • Added RuntimeExceptionWrapper to GzipFilter (rep by Dave Moellenhoff)
  • RotateStream now allows rollover-size with rollover-period
  • JSP error page reporting shouldn't throw the IllegalStateException when data is flushed (rep by Jennifer Leong)
  • Added cluster client configuration
  • Inner <log> should override outer <log> (rep by Lon Tierney)
  • JSP validator for custom tag wasn't printing attributes (rep by Jeroen van Vianen)
  • validator printing for JSTL wasn't escaping quotes (rep by Fyodor Golos)
  • jsp20-tld.rnc was using wrong init-param definition (rep by Fyodor Golos)
  • (2004-04-07) Added logging to Lifecycle
  • include wrapper needs to take care of filtered responses (rep by Ales Perme and Jeroen van Vianen)
  • Missing getVariableResolver in PageContextImpl (rep by Adam Megacz)
  • added read-timeout and write-timeout
  • session timeout without always-save-session (rep by Mattias J)
  • context-param should not use EL by default (rep by Martin Cordova)
  • xsl:import of duplicate files was causing conflicts (rep by Lon Tierney)
  • added #define for ssl.c for OpenSSL 0.9.6 vs 0.9.7 messages (rep by Andrew Marcuse)
  • Reduced Jar caching need by handling Class depend as a special case (rep by Erich Oliphant)
  • (2004-03-31) regression issues with filters and Writer/OutputStream
  • (2004-03-30) GzipFilter and close (rep by Dave Moellenhoff)
  • Issues with GzipFilter and resetting (rep by Dave Moellenhoff)
  • (2004-03-29) Classes from Jar now only check Jar file for depend
  • jsp:scriptlet in jspx was limited to 1k (rep by Vladimir Nicolici)
  • UTF8Writer off-by-one in capacity check (rep by Dave Moellenhoff)
  • XsltFilter shouldn't change the output stream when an exception is thrown (rep by Lon Tierney)

3.0.7 - Mar 25, 2004

  • updated GzipStream close (rep by Dave Moellenhoff)
  • (2004-03-24) JspPrecompileServlet handling sub-web-apps (rep by George Cox)
  • PingThread wasn't properly shutting down the server
  • (2004-03-23) error-page mapping problems (rep by Dave Moellenhoff)
  • PI handling in JSPX pages (rep by Robert Koberg)
  • error-page handling of top servlet exception (rep by Dave Moellenhoff)
  • XsltFilter path lookup changes (rep by Lon Tierney)
  • (2004-03-19) major changes relating to OutputStream vs PrintWriter (rep by Dave Moellenhoff)
  • war expand path issues with "_" and name (rep by Lon Tierney)
  • PrintWriter vs OutputStream changes for JSP and Servlets
  • (2004-03-16) Issues with JSP buffer size and includes (rep by Vladimir Nicolici and Dave Moellenoff)
  • OpenSSL wasn't catching ClientDisconnect properly (rep by Chris van Zwynsvoorde)
  • ClassEntry cache in DynamicClassLoader can't be lru or softreference (rep by Lon Tierney)
  • fdatasync should be fsync (rep by Lon Tierney)
  • Added TLD <listener> support (rep by Aaron R)
  • (2004-03-15) jni_vfs.c problem with accept (rep by Eric Raymond)
  • comments and pi were causing problems with node builder (rep by Andreas Mueller)
  • Win32 JNI issues with directories and FileServlet (rep by Dave Ford and Vince Law)
  • temporary patch to security-manager handling (rep by Greg Griffing)
  • Caching issues with Body tag include (rep by Vladimir Nicolici)
  • JMX name shouldn't be "" for default host for JDK 1.5 (rep by Jeroen van Vianen)
  • c:param shouldn't need to be direct child of c:url (rep by Jeroen van Vianen)
  • jsp:setProperty with BigDecimap property type support (rep by ChrisP)
  • (2004-03-12) XsltFilter update to support Xalan (rep by Lon Tierney)
  • XsltFilter needs to search classpath (rep by Lon Tierney)
  • JMX ObjectName params can have spaces
  • Updated QDocument.importNode (rep by Sailor Zhang)
  • Fixed potential cross-site scripting issue (rep by Vernon Adams)
  • ear needs to read MANIFEST.MF for Class-Path (rep by Joshua Swartz)
  • Added xsl:sort case-order (rep by Lon Tierney)
  • Added nativeChmod to resin.def (rep by Jeroen van Vianen)
  • ELParseExtension should extend JSP ELParseExtension
  • (2004-03-09) StreamPrintWriter wasn't overriding write(String) (rep by Kevin Oliver)
  • (2004-03-01) Significant reworking of Deploy code
  • Quercus StructuredText needs additional check for javascript: (rep by Vladimir Nicolici)
  • c:forEach with validation and no items wasn't printing correctly
  • c:forEach issues with contained tags
  • FileSetType with no include should default to include all
  • .ear files were not redeployed automatically (rep by Douglas Padian)
  • Added JspPrecompileResource for batch precompilation (rep by Dave Moellenhoff)
  • Allow file-store in <session-config> (rep by Markus Baron)
  • i18n issues with JSP include (rep by Markus Baron)
  • JSP line number issues on windows (rep by Bin)
  • jsp:include with flush="false" and wrapped response wasn't flushed properly (rep by Markus Baron)
  • Added TABLESWITCH and LOOKUPSWITCH to code analyzer (rep by Adam Megacz)
  • Added XA log
  • library-loader should accept .jar as path and <fileset> (rep by Vitali K.)
  • Cleaned up WorkManager start vs schedule (rep by Javier Ordonez)
  • Bean-style serialization for Hessian/Burlap (rep by Nicholas Averseng)
  • (2004-02-13) jsp:include flush="false" with tags issue
  • updated plugin_ignore so first match isn't required (rep by Larry Leszczynski)
  • xsl:template issues with name and match
  • Added Apache 2.0 support for Location-distinct ResinConfigServer (rep by Javier Ordonez)
  • MBeanServerImpl was missing getDomains() (rep by Mike Perham)
  • Added Hessian/Burlap convenience methods (rep by Nicholas Averseng)
  • Added Hessian/Burlap fault reporting enhancement (fixed! by Nicholas Averseng)
  • Added security-role-ref to servlet
  • lazy-init to <host> and <host-deploy>
  • Add sub <web-app> capability
  • Burlap/Hessian writeReplace and readResolve messed up refs (rep by Nicholas Averseng)
  • Switch to IdentityHashMap for Burlap/Hessian refs (rep by Nicholas Averseng)
  • added readCall, readHeader, readMethod for Burlap/Hessian (rep by Nicholas Averseng)
  • Missing EL syntax checking (rep by daver)
  • MessageFormatter needs to unwrap exception (rep by Thomas Zehetbauer)
  • Logger.setLevel needs to update the level (rep by Matthias Ernst)
  • Jmx parse properties needs to set "" for null value (rep by Mike Perham)
  • GzipStream needs to propagate close (rep by Dave Moellenhoff)
  • Added restart() & other JMX data to WebAppMBean and HostMBean (rep by Mark Knowles)
  • JMX fixes to support JDK 1.5
  • XmlTransformTag.doEndTag was swallowing exceptions (rep by Markus)
  • session.invalidate() nullpointer with missing authentication (rep by Markus)
  • NodeBuilder can now configure File attributes (rep by Giles Parnell)
  • JSTL sql:setDataSource didn't support the driver attribute (rep by David Campbell)
  • Added <backup-driver> to <database> (rep by Vic Cekvenich)
  • XAResource.end wasn't called on each connection for isSameRM pool items (rep by Andreas Muller)
  • BundleManager.create() wasn't saving itself in the local environment
  • EL getter throwing exception shouldn't absorb the error (rep by Dave Ford)
  • allow-servlet-el was missing from Resin 3.0 (rep by Adam Megacz)
  • mod_caucho wasn't receiving srun backup configuration
  • (2004-02-02) JSP with extends wasn't getting automatically reloaded (rep by Assaf Urieli)
  • Fixed issues with logout and JdbcStore or FileStore (rep by Gary Doughty)
  • MBeanConstructorInfo was stubbed out (rep by Randy Jackson)
  • SAXParser, even with validating as false, should handle XML defaults (rep by Robert Sfeir)
  • In a .tag file, jspContext.getAttribute("xxx", REQUEST_SCOPE) had nullpointer (rep by jvdsandt)
  • (2004-02-02) Changes to PingThread to minimize the possible freezes
  • Fixed cluster-definition and cluster-ref implementation
  • fix for OpenSSL certificate memory leak (fixed! by David Orrell)
  • Test for conn = 0 for possible nullpointer in QJniSocket
  • JSP needs to be recompiled when XML tag changes (rep by Jeroen van Vianen)
  • Removed HmuxLoadBalanceServlet dependency on CauchoRequest
  • Manual Apache configuration restored for mod_caucho (rep by Robert Sfeir)
  • distributed-store with multiple http ports and hw load balancer wasn't matching distributed object names
  • (2004-01-28) Allow LogManager.addLogger for custom logs (rep by David Soleno)
  • Added multiple <logger> as children of <log>
  • (2004-01-26) Added socket-listen-backlog to port (rep by Tim Craycroft)
  • compiling-loader can now batch compilation, defaulting to true
  • resin:set, resin:if, and resin:choose are now added
  • resource class not found now displays the current classpath (rep by Jeroen van Vianen)
  • error-page was unwrapping too many exceptions for exception-type (rep by Dave Moellenhoff)
  • misc JCA fixes to support SwiftMQ (rep by Andreas Mueller)
  • connector xsi:schemaLocation was missing from rnc (rep by Andreas Mueller)
  • getAuthType should return null when no user is logged in (rep by Keith Fetterman)
  • <server> EL variable was missing
  • Updated Makefile for installation with --prefix (rep by Joshua Nye)
  • JSSE needs to catch the getPeerCertificates exception (rep by Dave Moellenhoff)
  • Enhanced JniSelectManager for adaptive timeout (rep by Dave Moellenhoff)
  • Added keepalive-max and keepalive-timeout to <server> (rep by Dave Moellenhoff)
  • empty attributes with jspx should print the "" value (rep by Jeroen van Vianan)
  • On Unix, WEB-INF from wars are expanded at 0750 (rep by Keith Fetterman)
  • URL-rewritten session id should never be reused (rep by Edoardo Ceccarelli)

3.0.6 - Jan 20, 2004

  • Win32 linking issue with resin.dll (rep by Andrea Mari)
  • servlet-mapping with url-regexp was causing NullPointer (rep by Dave Moellenhoff)
  • include needs to inherit the parent's character encoding (rep by Nicholas Avenseng)
  • optional taglib namespace declaration in jsp:root wasn't picking up JSTL functions (rep by Jeroen van Vianen)
  • removed compile-loader deadlock
  • ssl.c ERR_print_errors_cb isn't in openssl-0.9.6 (rep by Joshua Nye)

3.0.5 - Jan 15, 2004

  • (2004-01-14) Cleaned up .rnc for trang (rep by Robert Koberg)
  • PolicyImpl.init() must be called in EnvironmentClassLoader.init to handle the SecurityManager
  • Complications with authentication logout and persistent store (rep by Gary Doughty)
  • JstlFmtMessage wasn't calling generatePrologue on JstlFmtParam (rep by Matt Raible)
  • UserDataConstraint was missing setDocument (rep by Matt Raible)
  • <jsp:output doctype-system> was missing (rep by jvdsandt)
  • updated servlet config to use getConstructors() instead of getDeclaredConstructors
  • Add codeSource to loaded classes (rep by Eelco)
  • allow multiple host deploy (rep by Daniel Bjuhr)
  • cleanup to "make install" target (rep by Perry tew)
  • XSLT wasn't escaping backslashes properly in attributes
  • JSTL forEach issue with SimpleTag (rep by Allen Firstenberg)
  • transport-guarantee case was incorrect, should be uppercase (rep by Keith Fetterman)
  • added support for Expect: 100-continue (rep by David Hemphill)
  • (2004-01-09) fmt:number currencyCode was stubbed out (rep by Phil Smy)
  • JSP $\{..} should not escape values
  • enhance jstl format bundle caching (rep by Jamie McCrindle)
  • cleanup of isapi_srun filters
  • getClass().getResource(".") wasn't working for jars in directory-loader
  • servlet-mapping url-regexp needs to become <servlet-regexp> (rep by Rob Geddes)
  • Improved error checking for OpenSSL on Linux (rep by jvdsandt)
  • setgid needs to occur before getuid() == uid test (rep by Allen Firstenberg)
  • JSP destroyed pages would not be recompiled (rep by
  • JSP "extends" pages weren't catching updates (rep by Assaf U)
  • multiple c:forEach with nested tag wasn't declared properly (rep by Jason Purcell)
  • VarStatus isLast wasn't checking the final iterator (rep by Jason Purcell)
  • (2003-12-16) isapi_srun.dll fixes for headers with trailing spaces (rep by Mark Kocsis)
  • c:forEach with varStatus wasn't optimizing properly in jsp:attribute or jsp:body (rep by Bin)
  • ClientDisconnectException should not be thrown for a read. (rep by Charbel El-Achkar)
  • (2003-12-11) Reversed doAfterBody "fix". The 2.0 JSP spec is explicit about doAfterBody not being called in this case.
  • dom.jar needs to be added to the distribution (rpe by Jonah Liebert)
  • Added unconditional to XsltFilter (rep by Jeroen van Vianen)
  • If-Modified-Since wasn't available from forward pages (rep by Sacha Prins)
  • xsl:copy-of with entity references (rep by Nancy Deschenes)
  • Change APR_HAS_THREADS test in mod_caucho (rep by Allen Firstenberg)
  • Save config between Apache startup
  • user-name/group-name were in wrong place in default resin.conf (rep by Allen Firstenberg)
  • access.log w/o JNI wasn't printing IP correctly (rep by William Au)
  • XPath 2*.01 wasn't parsed correctly (rep by Mike Kupritz)
  • Apache sticky sessions was incorrectly parsing Cookie
  • Added plugin_ignore to mod_caucho/isapi_srun
  • JSP mapping to same real path should generate same .class (rep by Jim Frenette)
  • cleanup hessian/burlap method mangling (rep by Nicholas Aversang)
  • fmt:fmtNumber wasn't handling null values property (rep by Jason Purcell)
  • XsltFilter should use the JAXP factory create methods (rep by Nancy Deschenes)
  • Added CauchoStatus to httpd.conf (rep by Jonah Liebert)
  • Added IISPriority to resin.ini (rep by Shane Baldacchino)
  • stream.c compilation bug with -DOPENSSL (rep by Joern Heid)
  • c:forEach needs explicit java.util.Iterator (rep by J Purcell)
  • doAfterBody needs calling in empty tags (rep by Phil Smy)
  • (2003-11-26) Recompiled against gnuwin32 openssl
  • Adding missing JSTL support files (rep by Jason Purcell)
  • Added validation syntax and fixed r_any support (rep by Phil Smy)
  • Added Apache VirtualHost support for ResinConfigServer
  • Set the client disconnect logging to finer (rep by Hugo Zhu)
  • Added getName() in DBPool (rep by William Au)
  • JSP handling of null namespace (rep by Jeroen van Vianen)
  • x:if and x:when need node context for x:foreach (rep by Phil Smy)
  • Custom tag analysis with end tag issues
  • Added transaction-timeout configuration to <database>
  • doclet needs to escape <
  • security and cache
  • Performance updates for JSP body getString() (rep by Jean-Philippe Encausse)
  • Added date weight to search spider (rep by Keith Fetterman)
  • JSP validation message loop was using 'i' instead of 'j'
  • Removed order dependency on <host> configuration (rep by Allen Firstenberg)
  • Added EL escaping
  • Cache path wasn't created property
  • Fixed file descriptor leak with keepalive disconnect
  • Changed IPV6 test in jni_vfs.c (rep by Gary Doughty)
  • (2003-11-18) min-free-memory belongs in <resin>, not <server> (rep by Dewang Shah)
  • Improved servlet constructor-checking error messages (rep by Milut)
  • (2003-11-12) Added maxCreateConnection to connection pool to limit initial connection hits
  • Added save-allocation-stack-trace to connection pool (rep by Justin Van Vorst)
  • Changed error message when j_security_check is missing
  • sql:param wasn't accepting null values
  • Tag file throws clause needs Throwable not Exception (rep by Eric Savage)
  • META-INF/services was missing from new build (rep by Fyodor Golos)
  • JSP with unused tag variable was undeclared but assigned (rep by Dragisa Krsmanovic)

3.0.4 - Nov 6, 2003

  • (2003-11-06) clear() should be special-cased for Amber collections (rep by Andrew Lienhard)
  • custom error pages should eliminate the MSIE hack
  • flushBuffer addition to StreamImpl/ResponseStream
  • (2003-10-28) threading fixes in jni_vfs.c
  • Regression issues with resin-doc and win32 (rep by Bin)
  • Added shutdown-wait-max to configure how long to wait for requests to complete (rep by Jean-Francois Lamy)
  • (2003-10-17) HmuxRequest wasn't properly initializing _isSecure (rep by Sacha Stanton)
  • JniFileStream was returning inaccurate value for getAvailable(), messing up Jira (rep by Chris Chen)
  • LoopTagSupport needs to implement LoopTag in jstl-11.jar (rep by Jason Purcell)
  • isapi_srun.dll was missing latest protocol updates for large post (rep by
  • Windows file handling wasn't correctly dealing with file:///c:/foo.test (rep by Tower)
  • Changed srun timeout and documented srun parameters (rep by Marty)
  • Error checking missing for <servlet> in <http-server> (rep by Marty)
  • RotateLog trouble with stdout/stderr (rep by Chris Chen and Jean-Francois Lamy)
  • XA/local-transaction timeout cleanup with JCA pool (rep by Martin Weinig)
  • Eliminated dialog boxes for normal -install and -remove (rep by James Bond)
  • CGI stderr is handled as warning and exception (rep by Oli)
  • Added JavaMail configuration support
  • webapps handling with case-insensitive wasn't picking up directories (rep by Dave Ford)
  • documentation default.xsl was including wrong header (rep by Bin)
  • (2003-10-11) Added host-deploy (rep by Jonas Angelin)
  • public zero-arg constructor message needs to wrap exception (rep by Lluis Turro)
  • Added prepared-statement-cache-size for <database> (rep by Juergen Hoeller)
  • Added IPV6 support for Unix (rep by Mark Renouf)
  • snapshot wasn't recompiled for win32 causing JNI issues (rep by Bin)
  • Added com.caucho.log.SyslogHandler (rep by Leonard Krivopaltsev)
  • Added flushBuffer to AbstractHttpResponse to take care of include annoyance
  • updates to wrapper.pl (rep by Nick Johnson)
  • <log> can specify custom <handler> directly
  • resin:type now accepts args
  • server-root and resin-home were not properly set when SERVER_ROOT and RESIN_HOME differ (rep by Francois Bertrand)
  • (2003-10-07) \${app.name} now returns main war name for war expansion (rep by John Crossman)
  • Added web-app-default as content of web-app-deploy
  • Added ThreadPool and let Alarm use the thread pool so Alarm can handle longer-lived tasks
  • zero-argument constructor error needs log (rep by Alex Schonfeld)
  • jsp:plugin width and height missing (rep by Andreas Fischer)
  • add servlet-mapping support for plugin_match (rep by Jean-Baptiste Quenot)
  • isapi_srun wasn't handling SSL properly
  • Clean up doc/href-map.xml link
  • Cleaned up openssl support for windows
  • install.sh needed to change to ResinConfigServer (rep by Jean-Baptiste Quenot)
  • On JRocket, the freeMemory calculation can't use maxMemory (rep by Jay Sissom)
  • Support i18n decoding of Host encoded with IDN, internationalized domain names (rep by Stefan Praszalowicz)
  • <%@ include %> JSP wasn't included in depend list
  • EL expression issues in jspx
  • cleanup for ignore-client-disconnect (rep by Bingqiang)
  • Added servlet-regexp to support old url-regexp pattern (rep by Dave Moellenhoff)
  • JSP should use the old page until the new page is compiled (rep by Peter Axelsson)
  • WebDAV root parameter wasn't handled with init style (rep by Alon Salant)
  • getRequestDispatcher shouldn't encode parameters in utf8 (rep by stefan)
  • RewriteFilter now detects redirect cases to redirect to http://www.bar.com (rep by Kirk Rasmussen)
  • Apache2 cleaned up forwarding after rewriting ;jsessionid
  • Made the jsp servlet in app-default.xml load-on-startup to initialize JspFactory (rep by Claude Honnore)
  • Added support for CLIENT-CERT login.

3.0.3 - Sep 22, 2003

  • (2003-09-22) Fixed Base64 tail encoding
  • Fixed passwords and digest login
  • Increase plugin TCP buffer sizes for POST (rep by Jonah Liebert)
  • (2003-09-16) strip-spaces must actually remove whitespace nodes
  • Basic .ear with ejb support
  • Moved JSTL to separate jar file (rep by Serge Knystautas)
  • Cocoon fixes
  • Cache the JdbcAuthenticator isInRole
  • Fixes relating to x:transform and XSLT InputSource with system id (rep by Charles Fu)
  • Apache 2 install.sh now supports conf.d (rep by Tauren Mills)
  • Add use-parent-handlers to <log> (rep by Jeff Miller)
  • Added <formatter> to log config (rep by Jeff Miller)
  • Added cr-lf to WebDavServlet (rep by Michael Traunau)
  • Added virtual-host to http (rep by Steven Tower)
  • Added archive-format to log and allow paths in archive-format
  • fixed memory leak in connection
  • (2003-08-21) ./configure was automatically include apache even when not specified (rep by Bill Griffith)
  • fixed c:import issues with encoding and include()
  • thread-max added to <server>
  • ignore-client-disconnect added to <server>
  • cleaned up session listener destroyed event with tcp-store (rep by Gary Doughty)
  • Added servlet-mapping extension allowing concurrent definition (rep by Dave Moellenhoff)
  • .class change detection wasn't properly handing recompilation (rep by Dave Moellenhoff)
  • Changed ./configure LD_FLAGS order, so Resin's guesses are after apxs
  • XSL transformations with zero-argument *Source (rep by Jonathan Gray)
  • XML parsing add support for PE referring to external system resource (Bernd Eggink)
  • XML now serializes with as externalizable XML (rep by Simone Avogadro)
  • Add support for JSTL 1.1 urls
  • x:forEach wasn't setting implicit node (rep by Gordon Conrad)
  • <java> support missing from application.xml (rep by George Cox)
  • setDescription missing from ear application.xml (rep by George Cox)
  • (2003-08-13) Handle recursive JSP tag files (rep by Matthias Ernst)
  • Allow for custom PasswordDigest in <authenticator> (rep by Thorbjoern Andersen)
  • FileServlet with null directory wasn't sending 404 (rep by Dave Moellenhoff)
  • include() should change methods to GET except for POST (rep by Charles Fu)
  • web-app-deploy with foo.war in web-app
  • Resin servlets and filters now support bean-style init
  • Fixes to memory check (rep by Dave Moellenhoff)
  • Cache now understands Vary
  • Added overridable allowGzip() method so subclasses could create more complex rules (rep by Mikal Todd)
  • <srun> wasn't handling host property (rep by Maria Grazia Arienta)
  • IIS plugin support for status code (fixed by Efri Nattel)

3.0.2-beta - Aug 4, 2003

  • JMX StandardMBean invoke should allow nulls as the signature (rep by Knut Forkalsrud)
  • JMX ReflectionException needs a getCause (rep by Knut Forkalsrud)
  • (2003-07-28) ISAPI plugin support
  • Win32 support for bin/resin.dll
  • Class reload avoiding app reload
  • (2003-07-22) Basic ResinStatusServlet support
  • JMX 1.1
  • JSP 2.0
  • Servlet 2.4
  • Message Bean configuration fixes (rep by Charbel El-Achkar)
  • Loaded JSR-045 into .class
  • (2003-06-23) JAAS LoginModule.
  • DBPool now uses JCA.
  • Basic JMX implementation.
  • BufferedJspWriter needs to be initialized in initialization, not constructor (rep by Matthias Ernst)
  • Thrown SQLException with stmt.close() should close connection
  • Avoid normalization in web-app-expand names (rep by Jean-Francois Lamy)
  • use-cookie is now sufficient for JdbcAuthenticator to enable cookies
  • cluster store protocol needs to handle SSL (rep by Anthony Tonns)

3.0.1-beta - May 15, 2003

  • (2003-05-12) While cache is being updated, other requests get the old cached value
  • (2003-05-06) <resource> wasn't understanding replaceObject
  • setParent issues with SimpleTag vs Tag (rep by Robert)
  • Make ./configure --prefix work (rep by Alexey Ivanov)
  • (2003-04-22) Changed JSP buffer model (rep by Hans Bergsten)
  • Added com.caucho.resources.CronResource
  • resin-web-xml.rnc was using method instead of http-method in web-resource-collection
  • Class loaders now extend URLClassLoader
  • Added security-provider to <resin> (rep by Heather Rogers)
  • Added com.caucho.servlets.HttpProxyServlet
  • LogConfig changes for backward compat: href (rep by Heather Rogers)
  • TldAttribute was missing setDescription (rep by Thomas Zehetbauer)
  • Cleaned up lifecycle of web-app, host, environment, etc.
  • (2003-03-20) memory and reliability checking
  • (2003-03-18) JdbcStore should give priority to BLOB (rep by Jon Cochran)
  • added BootstrapContext.createTimer()
  • Quit HTTP method on all characters than space (32) (rep by Kaile Riser)
  • Compilation warnings now go to log.warning (rep by Max Kutny)
  • Changed detection of apache1 vs apache2 version (rep by Sonny Picket)
  • form-error-page, when not configured properly or broken, wasn't returning a good error messages
  • added cipher-suite to openssl
  • Adding CRC check for tcp-sessions (rep by Nathan Mehl)
  • XML validating parser needs to pass defaults to attributes (rep by Steve Holt)
  • resin/lib loader should look at subdirectories (rep by Max Kutny)
  • UnavailableException in load-on-startup prevents web-app from starting (rep by Max Kutny)
  • Added <secure-host-name> for transport-guarantee (rep by Juan Yep)
  • <host-name> with port will set the value of getServerPort() (rep by Allon Bendavid)
  • JSP allow setA(String) to override setA(double) in setProperty
  • Allow direct rename of webdav files (rep by Pieter Schoenmakers)
  • Added app.regexp to know EL values (rep by Sam Dash)
  • For JSP/XML print <br /> (rep by Tim Jervis)
  • made burlap inherit from hessian so serialization can be shared

3.0.0 - Feb 13, 2003

  • fixed XTP dependency check interval
  • (2003-02-04) Added current time to cookie generation when cookie-length > 12
  • added require-source to <compiling-loader> (rep by Max Kutny)
  • Allow error-page in <host> (rep by Leonardo Brondani Schenkel)
  • ConnectionPoolDataSource can not be used with <xa/> (rep by Max Kutny)
  • getAssociatedStylesheetWith DOMSource (rep by Uma Shinde)
  • (2003-01-08) added jsp/ignore-el-exception, defaulting to true (rep by Fyodor Golos)
  • wrapper.pl -Dxx defines must be after command line (rep by Gary Doughty)
  • (2003-01-01) servlet/jsp regressions essentially clean!
  • (2002-12-17) Check that DBPool driver classes can be instantiated (rep by Max Kutny)
  • Spy needs to support XA and PooledConnectionDataSource (rep by Max Kutny)
  • Upgraded CharBuffer for performance (rep by Alan Berezin)
  • WarApplicationEntry.warExpand needs to be protected by a lock (rep by Jason Chaffee)
  • Changed session to use Hashtable instead of HashMap (rep by Martin Williams)
  • (2002-12-03) SSL needs to be pluggable (rep by Martin Cordova)
  • Hot deploy of .war should not affect other .war files (rep by Jason Chaffee)
  • Added JavaCompiler.getLock() to eliminate double compilation (rep by mimo)
  • Added SingleThreadModel pooling (rep by Henry van den Broek)
  • Log when Jndi.bindDeep rebinds over and old object (rep by Brian Wilson and Max Kutny)
  • if war expansion fails, retry
  • jspc support for jsp: tags
  • better handling of case-insensitive and context-path (rep by Davide Frigerio)
  • add tld-dir to <jsp> to restrict search (rep by Frank Nestel)
  • case-insensitive added to allow support for MacOS (rep by Jim Frenette)
  • Persistent sessions need to create subdirectory (rep by Fyodor Golos)
  • (2002-09-16) log integration with java.util.logging
  • Add sticky-sessions config to LoadBalanceServlet (rep by Matthew Ling)
  • Only use apxs flags in ./configure when can't determine otherwise (rep by Jan Christian)
  • CGI fixes/enhancements (rep by Kenkichi Mahara)
  • Hessian handling of large (> 32k) byte values (rep by James Ralston)
  • (2002-08-26) Major refactoring
  • AcceptPool now uses stack instead of ring (rep by Ian Holsman)
  • SecurityContext.setProvider needs try ... finally to restore (rep by KIR)
  • Detecting WEB-INF filesystem loops when searching for .tld (rep by Frank Nestel)
  • Removed static methods from XmlPrinter (rep by Enrique Lamas)
  • prelude and coda
  • Basic JSR-45 .smap file generation
  • (2002-07-30) added taglib functions to JSP EL
  • (2002-07-29) Partial refactoring of com.caucho.jsp classes
  • JSP: Initial cut of JSP EL
  • JSP: Initial cut of dynamic attributes
  • JSP: Initial cut of SimpleTag

JDK 1.2 changesolder changes


Copyright © 1998-2008 Caucho Technology, Inc. All rights reserved.
Resin ® is a registered trademark, and Quercustm, Ambertm, and Hessiantm are trademarks of Caucho Technology.