Caucho Technology
  • resin 4.0
  • resin change log


    Resin Change Log

    4.0.18 - May 12, 2010

    • watchdog: set the LD_LIBRARY_PATH_64 variable on 64-bit systems (#4536)
    • access-log: rollover rescheduling of alarm was not reliable (#4540, rep by mros2stf)
    • ant-plugin: ant plugin has been moved to http://github.com/caucho/ant-plugin
    • resin-cli: added jmx-list, jmx-set, jmx-call commands
    • health: add OnStart, OnStop, OnRestart health predicates (#4257)
    • scheduled-task: forward with param was causing NPE (#4530, rep by kenjrwalker)
    • web-app: explicit web-app id="/" must override webapps/ROOT (#4531, rep by danielnuriyev)
    • session: distributed sessions now allows jdbc as a backup (#3929, rep by jkriesten)
    • servlet: fragment after/others ordering issues (#4523)
    • cdi: abstract decorators were not properly handled (#4406)
    • servlet: crlf escaping required for response headers because of rewrite-dispatch (#4525)
    • jpa: when jta-data-source is null and JPA fails to start, allow web-app to start w/o error (#4491)
    • watchdog: ResinMXBean now contains information about the last watchdog restart (#4257, rep by Tony Matson)
    • jsp/el: MethodExpr invocation was not applied property (#4515)
    • candi: @Produces on @Stateless with no interfaces (#4513)
    • config: add <data-source> element support (#4487)
    • jsp/el: BeanELResolver isValue/getValue mismatch (#4511, rep by Keith Fetterman)
    • servlet: web-fragment <name> can have an "id" attribute (#4484)
    • candi: ResinBeanContainer beans.xml @Alternatives issue (#4501)
    • candi: ResinBeanContainer JPA/beans.xml ordering issues (#4502)
    • session: add destroy-on-lru flag to session-config to call SessionListener.destroy on a LRU even when session is persisted (#4504)
    • servlet: CauchoRequestWrapper updates for MockHttpServletRequest compatibility (#4509)
    • jstl: c:set not properly returning XML for validation (#4492)
    • ejb: stateless generics on interface superclass (#4512, rep by andreaskaltenbach)
    • ejb: stateless generics on method argument (#4514)
    • config: <class-loader> has automatic priority (#4500)
    • watchdog: signal status reporting was showing exit 0 for signals (#4508)
    • hessian: send-collection-type should always send java.util types (#4489, rep by Keith Fetterman)
    • ioc: resin:message not properly initialized (#4496, rep by Keith Fetterman)
    • ioc: env-entry does not use EL - doc update (#4516, rep by mnsh)
    • ejb: ejb-ee jar with <entity> should be skipped w/o fatal error (#4503, rep by Rick Mann)

    4.0.17 - Apr 15, 2011

    • candi: jar order dependency for ProcessManagedBean (#4493, rep by andreaskaltenbach)
    • security: order dependency between user-role and transport guarantee (#4495, rep by Keith Fetterman)
    • netbeans: fixed installation issues and change deployment options to deploy to an exploded web-apps directory
    • eclipse: fixed "Debugging does not work with 4.0.15 version of the Eclipse plugin" bug (#4417, rep by stoty)
    • eclipse: fixed "Eclipse plug-in won't install" bug (#4418, rep by adamzr)
    • resin: added thread-dump, heap-dump, log-level and profile commands.
    • el: add mbean function for JMX attribute access
    • el: add =~ for regular expression matching
    • resin-admin: include link to SSL on deploy page when accessing non-ssl (#4455)
    • resin-admin: hide user/password generation when user exists (#4486, rep by Keith Fetterman)
    • resin-admin: use {SSHA} for generated password
    • webapp: webapp restart/session close timing issues (#4471, rep by jiucal)
    • rewrite: Forward with target="/foo?q=2" caused duplicate query param (#4431, rep by mhixson)
    • install: make install updates (#4468, rep by silent)
    • openssl: connection must close if SSL_write fails (#4476, rep by Keith Paulson)
    • boot: ResinActor should not be started when Resin called directly (#4440)
    • proxy-cache: inappropriate warning on included cache (#4472, rep by Keith Fetterman)
    • jsp: special case jsp:fragments with single jsp:element (#4463, rep by imaniyar)
    • maven: EnvInit was improperly logged (#4481, rep by ccwf)
    • jsp-el: resolve introspection conflict between getFoo() and getFoo(i) (#4462, rep by jhartline)
    • dist: deprecated resin-ant tasks. The command-line should be used instead (#4447)
    • startup: resin.exe space issues with -conf (#4448, rep by pmorrow)
    • resin-admin: mod_status requires Resin Pro (#4454)
    • el: conversion issues from string '1.0' to long (#4482)
    • proxy-cache: issue with include, and filter and wrapped output (#4437, rep by Haley)
    • vfs: update http: normalization to use query-string verbatim (#4427, rep by Deepak Jadhav)
    • candi: ResinBeanContainer standalone (#4434)
    • log: add ${thread} to log formatting (#4459, rep by Keith Fetterman)
    • deploy: issues with merging versioned webapps with explicity <web-app> (#4444, rep by Keith Fetterman)
    • deploy: restart timing issue with .war alarm, request and slow start (#4474, rep by Mattias Jiderhamn)
    • ejb: stateless matching of varargs to API (#4466, rep by andreaskaltenbach)
    • repository: repository tag-map timing issue (#4450)
    • session: Java deserialization not using proper classloader (#4475, rep by Keith Fetterman)
    • install: config/health.xml location issues (#4443)
    • install: doc/resin-doc location fixed for make install (#4445, rep by Bill Au)
    • cloud: removed obsolete HmtpRequest logging (#4461, rep by TJ Wallace)
    • session: change default serialization to "java" instead of "hessian"
    • cluster: add -join-cluster for dynamic server support

    4.0.16 - Mar 17, 2011

    • rewrite-dispatch: normalization of rewrite order so rewrites always occur before filters
    • server: add server information to 404 error pages (#4433, rep by Alex Sharaz)
    • server: invocation-cache-size wasn't properly configurable (#4428, rep by R. Ranjan)
    • cluster: cluster/network timings split from load-balance configuration (#4429, rep by Dmitri Kolpakov)
    • cluster-cache: mismatched message/query replication for data actor (#4425, rep by Dmitri Kolpakov)
    • session: inconsistent setMaxInactiveInterval with timeouts (#4419, rep by vicsanca)
    • proxy-cache: check cache refill against invalidated cache (#4413, rep by shine)
    • cdi: @Stateless beans need to be treated as serializable for injection (#4405)
    • ioc/xml: update error messages for whitespace properties (#4385, rep by jkriesten)
    • watchdog: update error message on 500 exception to a watchdog (#4402, rep by Alex Sharaz)
    • mod_caucho: configuration etag wasn't including timeouts and therefore wasn't updating (#4259)
    • servlet: ServletContext.getResource("/foo/") was not returning URL when foo is a directory, needed for spring (#4411, rep by ccwf)
    • access-log: add '%S' for session tracking (#4422, rep by Steffen Busch)
    • include/forward: cross-context include/forward was not switching WebApps properly (#4362, rep by igor)
    • classloader: enabled jar caching to improve startup times (#4420, rep by Mattias Jiderhamn)
    • database: toLowerCase must use toLowerCase(Locale.ENGLISH) for Turkish encodings (#4414, rep by ozgurcakmak)
    • watchdog: Resin shutdown warning exceptions need to be caught on shutdown (#4400, #4402, rep by Daniel Lopez, Alex Sharaz)
    • servlet: addCookie should allow cookie with null value (#4410, rep by Brandon Kearby)
    • install: resin-doc copy issues (#4408, rep by copart)
    • install: validator/slf4j added to webapp-lib (#4386, rep by Jeff Schnitzer)
    • proxy-cache: corrupted data with client disconnects (#4398, rep by Luke Jobling)
    • watchdog: stdout-log inside <cluster> now configures the watchdog managed jvm-default.log (#4395, rep by Steve Francis)
    • openssl: timeout support for solaris (#4280, rep by nicolai)
    • configure: change solaris build to include -R/usr/sfw/lib/64 for -d64 and resin_os.so linking (#3045, rep by Eric Bowman)
    • ejb: MDB with JMS inflow (ActiveMQ) not properly handling XA (#4327, rep by danc)
    • ejb: MDB with JCA inflow and driver XA control not properly handled
    • security: add RFC2307 (ldap-style) support for {plain}, {sha}, {ssha}, {md5} (#3432, rep by Laurent Jaccard)
    • cdi: @MBean on class automatically registers bean in JMX (#3427, rep by Scott Hernandez)
    • webservices: add ${resin.home}/endorsed support for metro support (#3415, #4032, rep by Bartlomeij Kolodziejczyk, Reggie Vito)
    • rewrite: conflict between rewrite (welcome-file) and custom constraint (#4388, rep by K Ding MNP)
    • scheduled-task: CDI timing issue between scheduled-task and CDI bean (#4393, rep by Tero Ripattila)
    • ssl: JSSE client certificate should not automatically populate getUserPrincipal (#4044, rep by adamknight)
    • install: configure was not detecting plugins on x360 (#4383, rep by mros2stf)

    4.0.15 - Feb 8, 2011

    • eclipse-plugin: require automated eval. license request only for new download (#4379, rep by Daniel Lopez)
    • jsp: sendRedirect in JSP could cause IllegalStateException (#4290, rep by Mattias Jiderhamn)
    • cookie: ssl-session-cookie should not automatically set Secure for the non-SSL cookie (#4372)
    • /resin-admin: increased upload_max_filesize for web app deployment. New limit is 128Mb. (#4371 rep by Naoki Yano)
    • bam/cluster: HmtpQueue in ProDomainManager needs to be ConcurrentHashMap and not WeakReference (rep by Jamie Novak)
    • watchdog: "status" was returning the watchdog's user, not the Resin instance user (#4359, rep by mros2stf)
    • async/comet: request should not force flush on async (#4360, rep by Manoj Chennath)
    • cloud: server.ifSelf() changed to more reliable predicate (#4355, rep by Jamison Novak)
    • http: url-length-max wasn't allowing large URLs (#4358, rep by Daniel Kador)
    • cloud: messages during startup are queued if mailbox isn't registered yet (rep by Jamison Novak)
    • cdi: enable Conversation scope for JSP/servlets
    • database: add DatabaseManager.closeConnection (#3703, rep by Nobuaki Shinomiya)
    • servlet: request HashMapImpl fixes for inserts (#3726, rep by Fiaz Hossein)
    • install: ${resin.root}/resin-doc will be updated on a new install (#4350, rep by mros2stf)
    • resin-admin: use ${resin.root}/resin-doc location for resin-admin (#4350, rep by mros2stf)
    • configure: test for dev environment faulty, causing resinssl build issues (#4352, rep by mros2stf)
    • meter/sensor: add sensor callback to so failures can be acted on (#3731, rep by Martin Thompson)
    • resin-admin: if admin-users.xml.generated cannot be created in resin.conf, use resin-data (#3785)
    • network: add listener/port read/write statistics (#4150)
    • bam: separate queues for large messages (#4128, rep by Martin Thompson)
    • git: validate repository and reload from triad if corrupted (#4341, rep by Jamison Novak)
    • cdi: serialization of intercepted beans (#4083, rep by sweigersf)
    • cdi: enhanced CDI beans must use proxies (TCK)
    • jni: JniSelectManager should use toError() is removeNative fails (#4349, rep by Jens Christensen)
    • gzip: flush/error issue with JSP (#3893)
    • watchdog: add "watchdog" command for MacOS LaunchD (#3891, #4124, rep by Rob Lockstone)
    • session: if session is not valid due to timing issues, create new session (#3942, rep by bregnvig)
    • jpa: eclipselink was not properly closed on webapp restart (#4154, rep by Riccardo Cohen)
    • ssl: jsse-ssl add cipher-suites-forbidden (#3970, rep by Aaron Freeman)
    • jsp: @page contentType should not affect request.getCharacterEncoding() (#4007, rep by Shinomiya Nobuaki)
    • ssl: jsse-ssl add verify-client="optional" support (#4052, rep by adamknight)
    • ear: ear deployment problems when war context-url is "/" (#4348, rep by koge_pan)
    • security: allow FormLogin with selected authenticator (#4143)
    • cdi: allow inline injection <value><qa:MyQualifier></value>
    • session: add serialization-collection-type to allow disabling of Hibernate collection serialization (#4211, rep by Matthew Schmidt)
    • watchdog: on configuration error, delay Resin restart by 30s (#4202, rep by norlab)
    • load-balance: bind-ports-after-start and disable should cause failover during startup (#4129, rep by Wesley Wu)
    • date: setMonth(1) when setDay(31) previously was setting to march (#4094, rep by nam)
    • admin: add isJniEnabled() property to the Port MBean (#4088, rep by skippopotamus)
    • servlet: allow cookies with space values (#3897, rep by ykim)
    • cluster: triad warning when triad servers are on same machine (#4177)
    • webapp: web-app deployment with invalid root-directory needs warning (#4207)
    • database: logging adds ".d0", ".d1" to show round-robin (#4222, rep by Anthony Balandran)
    • init.d: change init.d/resin to log startup to /var/log/resin/console.log (#4223, rep by Raul Luna)
    • i18n: changed MacRoman file.encoding to default to utf-8 (#4180)
    • url: invalid utf-8 character parses to %xfffd (#4183, rep by cjohn)
    • comet: add suspend-reaper-timeout to port configuration (#4249, rep by baoqinye)
    • startup: Resin started message changed to log at INFO level (#4135, rep by briandeng)
    • database: check isClosed() on connection reuse to avoid dead connections (#4231)
    • log: rollover needs dedicated alarm for proper timeout (#4234, rep by mros2stf)
    • watchdog: relative -root-directory was applying the relative path twice (#4198)
    • servlet: getResource("/") was returning a URL for the directory incorrectly (#4301, rep by mate)
    • watchdog: Resin child needs -Xrs on windows (#4308, rep by robin dun)
    • deploy: web-app start needs to synchronize on getDeployInstance (#4342, rep by Jamison Novak)
    • session: session cache needs to use createIfAbsent to avoid timing issues (#4340, rep by Jamison Novak)
    • access-log: AbstractRolloverLog needs dedicated rollover alarm (#4321, rep by mros2stf)
    • access-log: content-length improperly calculated for chunked (#4317, rep by Martin Thompson)
    • rewrite: added AddHeader to add cookies (#4326, rep by C. Stokes)
    • jni: npe check for nativeWrite (#4323, rep by Prabhu)
    • watchdog: check that watchdog-manager.log can be written before starting (#4333)
    • cloud: errors for messages which cannot connect log the destination for debugging (#4315, rep by Cameron Stokes)
    • proxy-cache: 304 returned for proxy cache (#4239, rep by Jamison Novak)
    • proxy-cache: pdf/range using improper recursive call (#4334 rep by C. Fernandez)
    • embed: add setAsyncSupported to ServletEmbed (#4332, rep by Michael Barker)
    • resin: LoadBalance inside <web-app> needs to pass along context-path (#4304, rep by Kenneth Yeung)

    4.0.14 - Jan 7, 2011

    • resin: CLI added deploy, undeploy, list, start-webapp, stop-webapp, restar-webapp commands (#4316, rep by Patrick Brigger)
    • cache: use cursor to update data timeouts
    • heartbeat: server connections need to depend on heartbeat only
    • access-log: off-by-one issue with access log rollover causing missed 1D (rep by Steve Francis)
    • thread: if Thread cannot be instantiated, restart Resin (rep by B Hafezi)
    • quercus: SimpleXMLElement needs a __count function (#4318, rep by Homayoun Zariv)
    • quercus: list($a) = each($this->foo) was not compiled properly (#4319, rep by Akara Sucharitakul)
    • quercus: add array_replace, array_replace_recursive (#4312, rep by Homayoun Zariv)
    • quercus: simplexml_load_file not working properly with http: (#4311, rep by Akara Sucharitakul)
    • cdi: InjectManager.resolveAllBeans with incorrect synchronization (rep by Wesley Wu)
    • security: FormLogin persistence/session issues (#4299, rep by Jamison Novak)
    • jsp-el: parsing confusion with "0#${foo}" (#4190, rep by olaf2010)
    • rewrite: host-level rewrite issues with access-log (#4198)
    • distribution: slf4j.jar removed from resin/lib (#4271, rep by Nicolai Steven)
    • servlet: setHeader("Content-Length", "12;") was throwing an exception (#4210, rep by mkjang)
    • servlet: getOutputStream was not allowed after flushBuffer (#4289, rep by vbavin)
    • db-pool: increased default DB create count to 20 (#4252, rep by Wesley Wu)
    • hessian: change HessianServlet to extend HttpServlet (#4193, rep by voodude)
    • cookie: change <http-only> to apply only to the session cookie (#4217, rep by gzhu)
    • thread: priority thread queue fixes (#4228, #4291, rep by Jamison Novak)
    • thread: refactor ThreadLauncher to use AbstractTaskWorker
    • cdi: error with @Produces method with generic result and @Named (#4265, rep by jharting)
    • cdi: allow <resin:FileQueue> to be assigned to BlockingQueue<MyItem> (#4067, rep by Jeff Schnitzer)
    • jsp: cross-context forward classloader/.tld not updating (#4284, rep by Brian Deng)
    • ejb: generic interface issues MyBean implements Foo<String> (#4266, rep by jharting)
    • servlet: cross context forward classloader not properly updated (#4248, rep by jessicay)

    4.0.13 - Nov 10, 2010

    • hessian: java.sql.Timestamp deserialization NPE (#4286, rep by Matt Poirier and Shawn Frederickson)
    • servlet: url-mapping="" was not handled properly (#4283, rep by Peter Yuill)
    • welcome-file: use 301 instead of 302 (#4212, rep by jkowall)
    • conf: sample resin.xml no longer uses www-data user-name (#4220, rep by Arthur Naylor)
    • ejb: EjbInjectionTarget ordering (#4057, rep by Jeff Schnitzer)
    • file servlet: 404 should take precedence over OPTIONS (#4218, rep by stbu)
    • conf: server-default not configured property (#4251, rep by snw)
    • jsp: fragment/attribute issues with jsp (#4258, rep by nfederov)
    • rewrite: convert recursion to iteration to handle many rewrite rules (#4272, rep by Nick Pilch)
    • cdi: @Alternatives processing ordering issues rep by (Wesley Wu)

    4.0.12 - Oct 15, 2010

    • dist: cr-nl issue on windows for .git commit (#4241, rep by James Gittelson)
    • session: serialization issues with classloader and timeout (#4254, rep by Steven Nicholai)
    • dbpool: ping on connection/statement errors instead of discarding
    • health: add ConnectionPoolHealthCheck
    • watchdog: "stop" should shutdown the watchdog manager if the last server is stopped
    • health: log HealthCheck warnings and failures
    • host: allow id=":8081" for /resin-admin as virtual host
    • dbpool: ping now only occurs after an error
    • xa: detach JCA pooling from UserTransaction
    • xa: add meters, JMX and HealthCheck for transaction manager
    • resin: access.log rotation into zip archive fixes (#4216)
    • dist: war files with many entries cause recursive overflow (rep by Steve Francis, #4236)

    4.0.11 - Sept 29, 2010

    • hessian: XSS protection against bogus message (rep by Dan Cornell)
    • servlet: CauchoResponseWrapper shouldn't assume wrapping CauchoResponse (#4206)
    • class-loader: getProtectionDomain() should return the file:... for the jar object, not the jar contents (#4194)
    • resin-admin: JMX display has been reorganized and domains split into tabs
    • resin-admin: graph generation has been updated
    • resin-admin: thread page now includes locking tab giving blocking threads and their lockers.
    • resin-admin: thread page includes locking information in stack trace.
    • resin-admin: webapp page now includes deployment version validation.
    • health: HealthCheck added to JMX
    • health: JvmDeadlock and Memory checks were not being added to the Health check.

    4.0.10 - Aug 23, 2010

    • candi: _namedBeanMap is active and needs to be a ConcurrentHashMap (rep by Wesley Wu)
    • hessian: for HessianServlet, do not attempt to find implicit API (#4168, rep by Riccardo Cohen)
    • remote: add cxt to artifacts (#4314, rep by Riccardo Cohen)
    • remote: cxt needs to have WebServiceContext (#4314, rep by Riccardo Cohen)
    • remote: @HessianRemote as servlet was instantiating two instances (#4175, rep by Jeff Schnitzer)
    • embed: ResinBeanContainer verified to work with XA and Database (#4160, rep by Michael Barker)
    • proxy-cache: proxy-cache requiring Pro warning was being shown even when proxy-cache was available (#4173)
    • admin: jmx-service, log-service in the old <management> allowed for open source (#4172)
    • database/xa: distinct <database> should be distinct Resource Managers (#4176, rep by Takahiro Fukuda)
    • cluster: removed <machine> tag as obsolete
    • load-balance: fixes to weight and warmup
    • load-balance: created LoadBalanceService for testability
    • watchdog: added logging of Resin exit codes on detected shutdown
    • system: added ShutdownService to centralize Resin shutdown
    • system: added WarningService to send Resin messages to the watchdog
    • embed: add ResinEmbed.setRootDirectory and WebAppEmbed.setArchivePath (rep by Danny Yates)
    • resin-admin: jmx hide & show acted on wrong detail boxes. (#4145, Rep by Jamison Novak)
    • jpa: eclipselink properties for Resin JTA not set when eclipselink found by scanning (#4167, rep by Riccardo Cohen)
    • thread: alarm locking issue (rep by Wesley Wu, Jan Kriesten)
    • win: fixed dll loading issue (#4159), rep hans
    • servlet: fixed cross context include issue (#4117), rep Brian Deng
    • servlet: fixed getInputStream issue for String params with Servlet3.0 Part (#4153), rep by Wesley Wu
    • servlet: remove <multipart-form> from app-default.xml (#4102, rep by Brian Deng)
    • file: range parsing issue with firefox and FileServlet (#4149, rep by Fred Howell)

    4.0.9 - 2010-07-26

    • remoting: add userName and password to HessianClient (#4130, rep by Jeff Schnitzer)
    • build: missing eclipselink in build (rep by Bill Au)
    • alarm: updates for atomic refactor causing cpu-spin (rep by Jeff Schnitzer)
    • watchdog: set log rollover size to 64m (rep by Scott Croco)
    • candi: ioc/timing issue with EL configuration and custom beans (#4131, rep by Jeff Schnitzer)
    • (2010-07-20) cloud: refactor triad messaging into BamTriadServer in cloud.bam for consistency across cloud services
    • cloud: refactor heartbeat into cloud.heartbeat and increase service priority
    • network: refactor hmtp/cloud client pool from cluster into cloud.bam
    • network: refactor network listener from Server into cloud.network
    • network: refactor cluster listener from Server into cloud.network
    • resin: refactor Resin/Server main to use ResinSystem
    • database: locking/sync rework to use atomic references when possible
    • database: locking/sync rework to use JDK's locking
    • candi: CDI session destroy must be after other session listeners (#4901, rep by sweigersf)
    • thread: Thread/ThreadWorker rework to use atomic references where possible
    • thread: Thread/ThreadWorker sync issues (#3960, rep by rmann)
    • LogService: add pooled connection (#4096, rep by Brian Deng)
    • watchdog: added <resin-system-auth-key> for watchdog authentication (#4113)
    • dist-session: performance/locking work for DB stability and perf (#4089, #4093, rep by Skippopotamus)
    • database: createSQLXML filter implemented (#4092, rep by alex)
    • server: utf-8 encoding issues in ServletResponse (#4101, #4106, rep by jkriesten, Kaj Hejer)

    4.0.8 - June 28, 2010

    • servlet: added support for MockHttpServletRequest and MockHttpServletResponse: (#4073)
    • configure: fix for bad libtool message: (#4048)
    • resin: fixed startup routine for directory with spaces issue: (#4021)
    • resin-admin: fixed IllegalStateExceptionwith with readonly conf/admin-users.xml.generated (#4055)
    • servlet: fixed NPE with MultipartConfig caching bug (#4051, rep by subwiz)

    4.0.7 - May 21, 2010

    • iis: fixed bug preventing iis from serving web-apps defined with web-app tag (#3890)
    • iis: allow IIS to choose when to use chunked encoding (#3871)
    • iis: 64 bit IIS Handler build provided (#3846)
    • iis: fixed aberrant behaviour of servlets with IIS7 (#2694, rep by mitch)
    • iis: fixed bug preventing iis plugin from sending data larger 20kb(#3178, rep gert)
    • iis: fixed bug preventing static content from being served by the plugin(#3889)
    • iis: fixed bug was preventing use of virtual hosts with ports in IIS + Resin setup(#3951)
    • init.d: added "status" to init.d/resin (#3841, rep by Matt Pangaro)
    • init.d: test for log_daemon_msg directly (#3932, #4012)
    • proxy-cache: no longer disable cache on exception (#3957, rep by Dave Hintemeyer)
    • rewrite: add <resin:IfMBeanEnabled> (#4042, rep by stbu)
    • rewrite: add <resin:MovedPermanently> (#4023)
    • ssl: jsse doesn't understand Socket.shutdownOutput (#4030, rep by Martin Morawetz)
    • jpa: Persistence.getPersistenceUtil() (#4038, rep by Kaj Hejer)
    • hmux: Thread.dumpStack() in HMUX with JSP data after sendRedirect (#4025, rep by vicsanca)
    • http: catch ClientDisconnectException during finish/skip (#4029, rep by iRideSnow)
    • network: keepalive-timeout was incorrectly applied to initial read (#4001, rep by Jamie Novak)
    • quercus: WWW-Authenticate does not work (#4000, rep by hm2k)
    • quercus: NullPointerException in Alarm (after Glassfish redeploy) (#3711, rep by ashamash)
    • quercus: quercus-4.0.6.war incorrect version reporting (#4033)
    • quercus: date_format() does not use user-set default time zone (#4034, rep by sblommers)
    • quercus: report as php 5.2.1 (#3916, rep by derickso)
    • quercus: parse_ini_file does not replace PHP Constants (#3878, rep by ice-breaker)
    • quercus: PHP clone object is ignored? (#3607, rep by sblommers)
    • quercus: error_display in php.ini (#4037, rep by wml)
    • quercus: java.lang.NullPointerException on drupal admin/user/permissions (#4020, #4035, rep by alberto, sblommers)
    • quercus: is_executable is broken (#3979, rep by domdorn)
    • quercus: Wordpress MU Settings link causes exception (#3918, rep by chiefgeek)

    4.0.6 - April 6, 2010

    • openssl: crypto threading issues with CRYPTO_set_locking_callback (#3531, #3740, rep by Benjamin Loy, bryan)
    • jni: socket accept/close changes to avoid fd leak (#3960, rep by rmann)
    • jsp: jsp:param in jsp:include must encode '%' (#3976, rep by Aaron Freeman)
    • servlet: escape status message for default error page (#3781, rep by Bill Au)
    • class-loader: changed override order to match config order (#3773, rep by cyttesen)
    • servlet: add cookie-domain-regexp to <session-config> (#3865, rep by Matt Sporleder)
    • watchdog: add <jvm-arg-line> as shortcut for <jvm-arg> (#3940, rep by Bill Au)
    • log: print timestamp only for first item for multiline (#3229, rep by Jamison Novak)
    • log: remove excess synchronization for log period calculation (#3814, rep by zenant)
    • log: change date calculating to use TimeZone.getOffset(time) (#3853, rep by Jamison Novak)
    • cdi: allow circular XML/EL definition of beans (#3954, rep by Hontvari Jozsef)
    • classloader: avoid class loader deadlocks on ClassEntry (#3848, rep by zenant)
    • jni: LD_LIBRARY_PATH handling moved from Watchdog to SystemClassLoader
    • servlet: micro-second logging not properly matching start time (#3935, rep by mocospace)
    • jsp: jsp:forward issues with buffer="10k" (#3922, rep by Danny Mann)
    • jsp: SimpleTag parents not properly managed with fragments (#3953, rep by Jamison Novak)
    • jni: readNative was not properly handling SO_RCVTIMEO (#3941, rep by Vinod Mehra)
    • configure: --enable-64bit needs to enable both JNI and plugin (#3968, rep by Bill Au)
    • cdi: ProcessInjectionTarget.getAnnotatedType() was returning null (#3967, rep by jharting)
    • ejb: ejb-ref partial support added (rep by 3964, rep by Matthew Brew)
    • jsp: x:forEach was not properly setting isFirst and isLast (#3752, rep by biku)
    • rewrite: IfNetwork now supports IPv6 (#3903)
    • ejb: ejb-server should no longer be required (rep by smallufo)
    • network: IPv6 support (#3924, rep by webapps)

    4.0.5 - March 16, 2010

    • mod_caucho: read timeout needs to repeat only on EINTR
    • setup.exe: added GUI capability to install and remove Resin Services
    • resin.exe: moved service installation commands (-install, -install-as, -remove, -remove-as) to setup.exe
    • jsp: the implementation produced successful results with the latest JSP TCK V2.1b
    • servlet: check isSecure() for NPE on close (#3938, rep by mocospace)
    • jsp: check for *.jsf servlet causes NPE (#3937, rep by tangxj)
    • servlet: welcome-file-list changes with *.jsf
    • cloud: cluster single-signon no longer enabled automatically
    • cloud: cluster store database stress test fixes (#3895, rep by smallufo)
    • cloud: cluster store database was not properly handling QueryContext (#3850, rep by mocospace)
    • watchdog: permissions issues with ports and log files (rep by Jamison Novak)
    • admin: added HealthJvmDeadlock in com.caucho.env.health (#3912, rep by Jamison Novak, #3912)
    • admin: refactored Sample and Probe to com.caucho.env.sample
    • hessian: writeReplace should be allowed to return itself (rep by Jamison Novak, #3911)

    4.0.4 - Feb 23, 2010

    • jni: improved error messages
    • hessian: custom deserializer (#3632, rep by era)
    • configure: check for cp -u (#3888, rep by Kaminsky, Leonid)
    • configure: standardize default resin root, conf, and log directories
    • web-app: web-app deploy with archive-and root-directory was not propery set (#3887, #3873, rep by chiefgeen)
    • cdi: @ServiceType (@HessianService) was removing the bean from CDI (#3852, rep by Scott Hernandez)
    • javac: external javac was busy-looping on the output causing heavy load (#3847, rep by mocospace)
    • session: persistent sessions were not properly timed out (#3872, rep by chiefgeek)
    • jpa 2.0: add com.caucho.env.jpa.DisabledPersistenceProvider (#3760, rep by Georg Busch Bech)
    • jpa 2.0: api and CanDI integration
    • ioc: issues with circular references (#3886, rep by Hontvari Jozsef)
    • ioc: issues with CDI "diamond" creation (#3863, rep by Wesley Wu)
    • jsp: TeamCity JSP related fixes (#3115)
    • (2010-02-10) proxy-cache: missing write Lock on cache deallocation (#3885, rep by KovIS)
    • logging: Logger.getHandlers() must return empty array instead of null (#3882, rep by Knut Forkalsrud)
    • load-balance: setting of isSecure was not properly cleared (rep by Matt Pangaro)
    • boot: check for Java 1.6 or later before start (#3862, rep by Tom Howard)
    • ejb: MessageDriven updated to understand ConnectionFactoryJndiName
    • mod_caucho: backup needs to hash the entire cookie for the new clustering (#3877)
    • quercus: remove java_bean and java_lookup Resin dependencies (rep by domdom)
    • junit: add com.caucho.junit.ResinJUnitRunner for junit
    • embed: add com.caucho.resin.ResinContext for non-server embedding, e.g. testing.
    • javaee: refactor @PersistenceContext, @PersistenceUnit, @Resource (#3708, rep by Wesley)
    • deploy: git-expand needs to setLastModified of created files to consistent time (#3839, rep by Matt Pangaro)
    • watchdog: "status" returns watchdog-pid (#3768, rep by cyttesen)
    • watchdog: "status" queries Resin using HMTP/BAM for pid (#3768, rep by cyttesen)
    • watchdog: jvm-args are first in command-line to help 'ps' control (#3759, rep by Nathan Bardsley)
    • javac: use file.encoding as default encoding (#3719, rep by Shinomiya Nobuaki)
    • ejb: update EJBException serialization (#3779, rep by C Yttesen)
    • config: ${cluster} regression failure (#3842, rep by Jamie Novak)
    • database-pool: connection timing issues with multiple request (#3837, #3779, rep by Bryant Harris)

    4.0.3 - Jan 4, 2010

    • mod_caucho: post/ack cleanup
    • hessian: allow custom URL connector with HessianProxy
    • hessian: avoid NPE on protocol corruption error (#3777, rep by Riccardo Cohen)
    • hessian: patch for GAE compatibility (rep by Jeff Schnitzer)
    • server: FileServlet handling of broken browser range requests (#3766, rep by Knut Forkalsrud)
    • cluster: hmux idle timeouts not properly handled (#3812, rep by Wesley Wu)
    • watchdog: race condition in log stream closing (#3807, rep by jnovak)
    • server: add logging to track down TempBuffer issues (#3807, rep by jnovak)
    • hessian: add UnsafeSerializer and deserializer
    • ejb: @SessionPool to configure maxIdle and maxConcurrent (#3739, rep by Jeff Schnitzer)
    • ejb: @PostConstruct not called on @Stateless (#3798, rep by voodude)
    • hessian: HessianProxyFactory needs to consistently use the ClassLoader instead of Thread.contextClassLoader() (#2860, rep by jghallen)
    • hessian: deserializer construct w/o calling constructors (#3357, rep by oehmiche)
    • hessian: reading of InputStream as object not properly dispatched (#3634, rep by mate)
    • hessian: string/binary encoding problems with 0x30-0x37 (#3690, rep by Adam Bryzak)
    • hessian: HessianSkeleton.createDebugPrintWriter created to allow debug override (#3646, rep by Peter Dettman)
    • hessian: add HessianProxyFactory.setConnectTimeout (#3658, rep by Patrik Stymne)
    • hessian: EnumSet deserialization (#3663, rep by danwatt)
    • server: hmux post/forward issues (#3793, rep by Jamison Novak and Wesley Wu)
    • server: hmux load balancer with incorrect protocol for short-response post (#3790, rep by Wesley Wu)

    4.0.2 - Nov 24, 2009

    • resin-admin: fixed cluster page not loading graphs (#3805)
    • resin-admin: fixed pages does not respond to changing "Server:" error (#3806)
    • resin-admin: fixed jmx page exception on Mac OSX 10.6.2 (#3782)
    • resin.exe: fixed timeout issue when stopping resin(#3762)
    • resin: max-uri-length configuration tag introduced to set limit on URIs served by Resin. Default is 1024.
    • ubuntu: missing LSB information (#3720, rep by floating world)
    • jsp: findAncestorWithClass() fails with tags nested in a tag file(#3436, rep by paru)
    • security: add LoginList to allow both form and basic for /resin-admin REST (rep by Martin Thompson)
    • admin: add /resin-admin/rest.php?q=mod_status to duplicate Apache's REST interface (#3730, rep by Martin Thompson)
    • jsp: Faulty code generated for tag files with scriptlets (#3699, rep by daniel_larsson)
    • async: poll socket periodically to test for client exit (#3294, rep by Caleb Richardson)
    • (2009-10-28): BeanELResolver IllegalAccessException (#3727, rep on behalf of Kenneth Yeung)
    • (2009-10-22) encoding: JSP response character encoding can be specified at jsp group property level
    • (2009-10-12) encoding: default encoding is now set by file.encoding and defaults to utf-8 if no file.encoding exists
    • watchdog: add watchdog-log configuration (#3566, rep by Pedre Neves)
    • comet: wrapped request needs to work with comet (#3665, rep by Fiaz Hossain)
    • config: relaxng forbid duplicate rules (#3595, rep by hmh)
    • ssi: add basic SSI conditionals (#3534, rep by fly-away)
    • jpa: issue with @ManyToOne and MappedSuperclass (#3335, rep by rdhauwe)
    • vfs: paths with spaces in them caused trouble with class scanning and enhancement (#3574, rep by N. Shannon)
    • servlet: sendRedirect in filter with artifactory (#3416, rep by Jan Kriesten)
    • xml: XMLStream parsing for atlassian (#3651)
    • session: add cookie-use-context-path and cookie-path
    • loader: handle duplicate class definition errors (#3673, rep by Jamison Novak)
    • config: add ${server.address} and ${server.port} (#3671, rep by Ken Roach)
    • jsp: StaticMethodExpr needs serialization fix (#3677, rep by boris_kovalenko)
    • jsp: jsp:attribute in tag file (#3228, rep by jens)
    • log: update AbstractRolloverLog to eliminate long archive block (#3650, rep by Patrik Stymne)
    • candi: scope adapter left in debugging (#3675, rep by hontvari)
    • database: _idlePool and _pool must be synchronized together (#3660, rep by Shinomiya Nobuaki)
    • database: cleanup connection idle pooling (#3052)
    • admin: add database "Query Time" statistics (#3397, rep by Bryant Harris)
    • admin: add "database" tab to admin and improve configuration visibility (rep by Bill Au)
    • admin: add DatabaseMXBean and add getUrl() (#3664, rep by Bill Au)
    • configure: MacOS-X was not properly detecting JVMTI for profile (#3000, rep by Bryant Harris)
    • jsp: add CodeSigner for JSP class loader (#3657, rep by Kai Virkki)
    • http-proxy: enable load-balancing (#3068, rep by Zeke)
    • deploy: -preview now detaches server from load balancing (#3345)
    • ejb: session beans were not initialized in correct context (#3603, rep by Matthew Brew)
    • session: add "java" as a session serialization type (#3648, rep by Mattias Jiderhamn)
    • servlet: allow-forward-after-flush allows forward after response has been commited (feature) (#3580, rep by andrewm)
    • admin: add ping-url for server-independent ping testing (#3605, rep by John Bowen)
    • security: ClusterSingleSignon in cluster and host (#3467, rep by Scott Hernandez)
    • ejb: TimerService needs to be injectalbe (#3572)
    • ejb: ear scanning issues (#3583)
    • ejb: .ear manifest with class-path prevented detection of ejbs (#3601, rep by mbrew)
    • vfs: ReadStream.skip incorrectly updated index with negative skip (#3542, rep by Jamison Novak)
    • embed: add resetLogManager() and call it by default in ResinEmbed (#3530, rep by Daniel Lopez)
    • jpa: EntityManager.getDelegate() needs to create delegate if none exists (#3537, rep by voodude)
    • embed/maven: ResinEmbed.initializeEnvironment() must start JNDI (#3486, rep by Jan Kriesten)
    • admin: -agentlib:resin start cleanup (#3118 rep by bubek)
    • vfs: NotFoundPath (error:) needs to be able to lookup absolute paths (#3628, #3475, rep by kvirkki)
    • jsp: Jspc ant/maven task needs to disable resource-ref validation (#3577, rep by Boris Goykhman)
    • jpa: registration of EntityManagerFactory incorrect (#3429, rep by Scott Hernandez)
    • jpa: registration of PersistenceContext incorrect (#3622, rep by Jeff Schnitzer)
    • server: QDate isLeapYear using _year field instead of argument (#3512, rep by damaan)
    • amber: query maxResults issues (#3424, rep by Riccardo Cohen)
    • web-app: check error case where root-directory with .war expansion is same as root (#3535, rep by voodude)
    • security: request and SecurityContext isUserInRole share implementation (#3501, rep by skot)
    • cron: use getCurrentTime() consistently for Alarm (#3548, rep by mkenney)
    • ping: add freeze-timeout to PingThread configuration (#3592, rep by C. Karantzas)
    • mod_caucho: use load-balance-connect-timeout for mod_caucho (#3642)
    • xa: _transactionList rollback needs to be outside of synchronized (#3571, rep by jacky)
    • jni: user-name fix with 64-bit start (#3521, rep by norlab)
    • eclipse: server wizard cleanup and enhancement
    • eclipse: spaces in path (#3589, rep by Michael Ludwig)
    • eclipse: respect http port (#3502, rep by Michael Ludwig)
    • eclipse: invalid chars in hot deploy (#3503, rep by Michael Ludwig)
    • eclipse: deploy from temp directory (#3515, req by Yujin Kim)
    • eclipse: breakpoints (#3484, rep by Doug and sblommers)
    • embed: EmbedPort getLocalPort() returns ephemeral port (#3567, rep by zed)
    • xml: XMLStreamReaderImpl on bad input (#2989, rep by Bill Au)
    • servlet: footer/md5 HTTP handling (#3044, rep by Eric Bowman)
    • thread: ThreadPool cleanup (#3645, rep by Daniel Wigenfors)
    • jsp: BeanELResolver accessible issues (#3598, rep by rymsha)
    • deploy: staging and versioning capacilibies (#3514, rep by Yujin Kim)
    • cluster: add com.caucho.cluster.LockManager for distributed locking (#3464, rep by Martin Thompson)
    • build: jsf-api.jar needs to be in src distribution (#3633, rep by joey)
    • loader: sync/deadlock in EnvironmentClassLoader on startup (rep by Patrik Styme, #3641)
    • jms: ClusterQueue single consumer (#2766, rep by Eric Masson)
    • servlet: include/forward should not trigger request events (#3111, rep by tempestse)
    • http: refactor to eliminate buffer/session reuse for subsequent requests (#3557, rep by Kevin Kilmer-Choi)
    • servlet: forward attribute issues with wrappers (#3059, rep by masum)
    • server: content-length counting issues (#3619, rep by Matthew Schmidt)
    • jmx: IntrospectionMBean _attrGetMap needs to be synchronized (#3620, rep by ebarlas)
    • jsse: added jsse cipher-suite support (#3593, rep by vbavin)
    • jni: JNI detection of clientdisconnect issues (rep by Fiaz Hossain)
    • quercus: image fixes for vbulletin
    • quercus: ksort fixes for vbulletin
    • quercus: WordPress: Post revisions not shown (#3753)
    • quercus: Avoid recursive instropection of methods. (#3748, rep by PeterJ)
    • quercus: quercus request for support for $_SERVER["REQUEST_TIME"] (#3712, rep by ashamash)
    • quercus: Enable overridding of setting TYPE_SCROLL_INSENSITIVE (#3746, rep by PeterJ)
    • quercus: date_timezone_set does not update date correctly (#3737, rep by damien)
    • quercus: jetty: ClassNotFoundException for org.eclipse.jetty.server.AsyncContext (#3733, rep by andjarnic)
    • quercus: is_object and is_resource return wrong results in many cases (#3701, rep by PeterJ)
    • quercus: isset returns wrong answer with multiple variables (#3702, rep by PeterJ)
    • quercus: failure in simplexml_load_string() (#3476, rep by jredden)
    • quercus: quercus 4.0.1 is missing QuercusServlet (#3674, everflux)
    • quercus: phpBB3 - Links not displaying (#3637, rep by GT500)
    • quercus: java.lang.NullPointerException running Yii (#3541, rep by johnsavior)
    • quercus: Drupal and OpenID (#3609, rep by B. Wu)
    • quercus: QuercusParseException - missing semicolon within a scriptlet php tag. (#3668, rep by kenfoo)
    • quercus: StringBuilderValue.create() is not performing a "& 0xFF" on the character value (#3654, rep by kenfoo)
    • quercus: ErrorException is missing (#3667, rep by kenfoo)
    • quercus: substr_compare failed (#3662, rep by jindw)
    • quercus: Quercus allows to make non-abstract function abstract again (#3644, rep by tlandmann)
    • quercus: count() error with recursive (#3586, rep by Hoang)
    • quercus: PHP-style hash algorithm names not supported (#3513, rep by koreth)
    • quercus: Quercus $foo->getClass() method (#3555, rep by Herbert)
    • quercus: NumberFormatException when calling $result = file_get_contents($url) (#3587, rep by tomi_m)
    • quercus: instanceof parsing precedence (#3621, rep by H. Punt)
    • quercus: isset() returns FALSE for $_SESSION (#3636, rep by rabbitism)
    • quercus: static function variables not "really" static (#3610, rep by tlandmann)
    • quercus: wordpress 2.8.1 and resin load-balancing - can't login (#3624, rep by J. Novak)
    • quercus: mail() does not handle multi-line headers properly (#3616)

    4.0.1

    • session: save-mode='before-header' should not serialize sessions after the request (rep by Gagan Chaudhari)
    • server: chunking issues with filled content (rep by Rick Mann)
    • gzip: empty gzip response should return 0 bytes (#3599, rep by martin thompson)
    • jsp: jsp recompilation detection for WEB-INF/tags (#3578, rep by rmann)
    • (2009-07-14) jsf: ViewExpiredException with JSF RI(#3517, on behalf of Matthew Schmidt)
    • server: host-default and web-app-default were included multiple times (#3554, rep by Jean Padilla)
    • candi: scope-adapter bytecode issues with more than 3 arguments (#3564, rep by wesley)
    • xa: allow synchronization added in beforeCompletion to also be called by beforeCompletion (#3559, rep by Peter Pastrnak)
    • cache: jsp/include/html was not properly cached (#3379, rep by Driss Louriagli)
    • servlet: error page file-not-found is reporting the original URL, not the missing error page (#3561, rep by Abhishek Neralla)
    • watchdog: start can create a new task if the old one is in the process of shutting down (#3527, rep by Rob Lockston)
    • watchdog: stop needs to wait for Resin to exit (#3528, #3418, rep by Rob Lockstone)
    • watchdog: require "console" option, and forbid command-line without command
    • hessian: hessian 1.0/2.0 debug conflict for date ('d' vs \x4a) (#3452, rep by Rick Mann)
    • candi: multiple registration issue with @ApplicationScoped HessianService (#3543, rep by skot)
    • dist-session: open source wasn't properly saving (#3545, rep by Mattias Jiderhamn)
    • candi: resin-web.xml needs to override scanned beans (#3546, rep by voodude0
    • hessian: issues with 2 vs 1 version detection (#3036, rep by skipper13)
    • candi: stack overflow with EL config (#3480, rep by Scott Hernandez)
    • ejb: @Current SessionContext injection for stateful/session (#3506, rep by skot)
    • candi: increase priority of XML over discovered beans (#3507, rep by Jeff Schnitzer)
    • embed: ResinEmbed support for non-empty cluster and server names (#3498, rep by skot)
    • server: isUserInRole NPE in AbstractHttpRequest (#3489, rep by voodude)
    • build: ant dist build.xml optional for Makefile.in (#3490, rep by skot)
    • hessian: java.lang.Object (#3448)
    • hessian: Byte/Short as handles
    • jni: RandomAccessFile JNI code missing mode (#3442, rep by koreth)
    • jsp: jsp:useBean with generic type and XML validation (#3455, rep by kir)
    • jsp: prelude with include NPE (#3508, rep by Shinomiya Nobuaki)
    • deploy: error messages and documentation for remote deploy not clear for BAM/HMTP (#3477, rep by Scott Hernandez)
    • quercus: Curl has issues with urls having @ in it (#3585, rep by anash)
    • quercus: Wordpress 2.8.1 parent constructor call (#3597, rep by csw)
    • server: UTF8Reader with byte-order-mark needs to read full next character (#3525, rep by Fiaz Hossain)
    • jca: max-active-time default needs to changed to Long.MAX_VALUE instead of Integer.MAX_VALUE (rep by KC Baltz)
    • log: SyslogHandler has improper initialization (rep by Michael Glenney)
    • class loader: remove potential classloadering deadlock based on ClassEntry lock (#3423, rep by stbu)
    • database: driver support for META-INF/services and url without type
    • database: DataSource now allowed as a driver type (#3318, rep by atifmk)
    • server: web-app versioning updates with /ROOT (#3466, rep by sibyj)
    • server: HTTP PrintWriter with i18n double-byte encoding overrun (#3434, rep by Fiaz Hossain)

    4.0.0 - May 5, 2009

    • security: ClusterSingleSignon logging wrong class (rep by Scott Hernandez)
    • thread pool: improve detection of illegal internal thread state (rep by Takahiro Fukuda)
    • (2008-04-08) thread: ThreadPool initialization needs to be synchronized because of lazy-init (rep by Dannis Devota)
    • jsp: BeanInfo vs introspection for tags (#3066, rep by Mike McNally)
    • classloader: maven classloader replaces osgi
    • jsp: trimDirectiveWhitespaces was ignored for tag files (#3386, rep by kvirkki)
    • admin: PingMailer updated to Java Injection (#3257, rep by kenjrwalker)
    • session: timeout/listener updates (#3116, rep by Richard Grantham)
    • rewrite: <dispatch> needs to change Invocation (#3067, rep by Leonid Geller)
    • admin: sort_webapp duplicate error in /resin-admin (#3405, rep by c. whalley)
    • ioc: add @Produces foo(InjectionPoint ij)
    • jsp: UTF-8 BOM should not force text/html (#3062, rep by CnXiaowei)
    • proxy-cache: Authorization header should not disable proxy caching (#3065, rep by Daniel Wigenfors)
    • servlet: sendRedirect URL encoding to use iso-8859-1 when character encoding set (#3032, rep by bjopet)
    • hessian: timeout on http connection clear needs to be short (#3039, rep by Jeff Porter)
    • http: improve error message on chunked encoding (#3021, rep by e_rajasekar)
    • error: allow custom error page for 400 bad request errors (#3008, rep by Vinod Mehra)
    • jsp: error parsing should ignore encoding errors (#2967, rep by Takahiro Fukuda)
    • load balance: dynamic servers (#2867, rep by Dana P'Simer)
    • load balance: add green load balancing (#2831)
    • admin: added URL to thread dump when available (#3194, rep by Keith Paulson)
    • win32: O_BINARY required for configuation saving (#3337, rep by Takahiro Fukuda)
    • log: non-gz/zip archiving now uses rename instead of copy
    • log: added ${request}, ${session}, ${cookie} to log format (#3255, rep by Philippe Collard)
    • log: multiline logs like thread dumps should not have extra timestamps (#3229, rep by Jamison Novak)
    • rewrite: <dispatch> should not modify uri unless it has a target (#3295, rep by Ethan Larson)
    • distcache: distributed cache update times must be deltas because of clock skew (#3161, rep by Dushyanth Harinath)
    • jms: commit() NPE check (#3287, rep by tyson weihs)
    • rewrite: new rewrite rules allow custom dispatching (#3096, rep by Leonid Geller)
    • rewrite: <rewrite:SetHeader>,<rewrite: Location> (#3381, rep by Andrea Sodomaco)
    • rewrite: request-secure disabled access log (#3354, rep by Tamas Pinter)
    • security: <secure> interaction with auth-constraint (#3333, rep by stbu)
    • servlet: add <cron> syntax for servlet (#3188, rep by mate)
    • boot: update setuid/setgid code (#3330, rep by tlandmann)
    • quercus: charAt needs to check range (#3363, rep by gyvc)
    • boot: improve bind error messages for failed binding (#3193, #3204, rep by sibyj)
    • dist: init.d/resin.in distribution changes (#3374, rep by jkriesten)
    • (2009-03-18) mod_caucho: only allow one thread to update config for worker model
    • win32: truncate applied incorrect file mode for new file (#3382, rep by Kair Virkki)
    • (2009-02-26) boot: windows machines can't add -server option automatically (#3331)
    • inject: findByName needs to work during shutdown (#3334, rep by stbu)
    • make: "make clean" not properly propagated in modules/c/src/Makefile (#3340, rep by copart)
    • boot: add system-class-loader configuration (#3339, rep by toomasr)
    • servlet: run-at race condition on web-app restart (rep by stbu, #3342)
    • boot: update messages for Quercus Personal (#3352)
    • quercus: $f($v) with foo(&$v) declaration (#3351, rep by koreth)
    • (2009-02-23) jms: btree split off-by-one issue (#3287, rep by tyson weihs)
    • jms: file missing primary declaration (#3287, rep by tyson weihs)
    • hessian: Annotation support
    • hessian: AbstractSerializer changes to improve usability
    • hessian: META-INF/hessian/serializers and deserializers
    • server: sync performance with Encoding (#3226, rep by lookis)
    • quercus: hmac performance (#3297, rep by koreth)
    • server: cron syntax not properly handling day of week (#3248, rep by mate)
    • mod_caucho: content-length not properly propagated (#2995, rep by uwe schaefer)
    • (2009-01-27) inject: update packaging to latest Java Injection draft
    • make: makefiles updated to use $(CC) instead of $(LD) (#3267, rep by dicr)
    • admin: add <resin-data-directory> to replace admin path
    • remote: <remote:BamService> replaces <bam-service>
    • quercus: batch compiled files (#3261, rep by koreth)
    • quercus: strtotime with date and not time needs to zero-out time (#3177, rep by dmaa)
    • quercus: FilterIterator (#3214, rep by koreth)
    • quercus: stub out CURLOPT_MAXREDIRS (#3126, rep by koreth)
    • quercus: double printing needs to match php (#3279, rep by koreth)
    • quercus: curl CURLOPT_POSTFIELDS needs to understand array (#3281, rep by koreth)
    • quercus: microtime() was using System.nanos() incorrectly (#3280, rep by koreth)
    • quercus: date() not using default timezone (#3273, rep by koreth)
    • quercus: pwd not working properly in passthru (#3247, rep by mikhailb)
    • quercus: get_object_vars must not use iterator (#3253, rep by haplo)
    • quercus: Java interfaces not properly populating instanceof (#3230, rep by haplo)
    • quercus: ArrayIterator constructor issues (#3239, #3253, rep by haplo)
    • quercus: instanceof not working with Java classes (#3242, rep by haplo)
    • quercus: static variables related to late static binding (#3225, rep by koreth)
    • osgi: getLocalResource needs to check for loader null (#3236, rep by koreth)
    • jsf: f:view not bound when using jsf:ri with xml syntax (#3102, rep by alex)
    • (2008-01-05) quercus: instanceof issues with Exceptions (#3209, rep by koreth)
    • quercus: regexp handling of /[\p{Arabic}]/ (#3131, rep by koreth)
    • quercus: classes scope to the dynamic class, not static class (#3213, rep by koreth)
    • quercus: abstract class not properly initialized in statement (#3216, rep by koreth)
    • quercus: i18n issues with "set names" (#3203, rep by M Schmidt)
    • quercus: array copyOnWrite issue with _var vs _value (#3210, rep by koreth)
    • quercus: array return value from external call (#347b, rep by koreth)
    • quercus: json_decode of '{}' not handled properly, cont (#3201, rep by koreth)
    • (2008-12-29) quercus: json_decode of '{}' not handled properly (#3197, rep by koreth)
    • quercus: add profile-probability="0.001" to QuercusServlet (#3200, rep by koreth)
    • quercus: NPE for preg_match and "/^x|^x/" (#3198, rep by koreth)
    • security: add WebBeans-style configuration, e.g. <sec:FormLogin>, <sec:XmlAuthenticator
    • session: convert to TriplicateCache
    • cluster: convert to ClusterTriad
    • watchdog: convert to BAM
    • quercus: regexp needs to handle anchor optim (#3195, rep by koreth)
    • install: Mac OS X flags for 64 bit
    • security: authentication generation of cookies should be optional (#3049, rep by Eric Bowman)
    • gzip: if application sets Vary, do not add extra Vary (#3043, rep by Eric Bowman)
    • config: Resin config vars like ${server} should not affect JSP EL (#3078, rep by Jan Kriesten)
    • jmx: remove admin-dummy-root for remote service (#3087, rep by dicr)
    • jstl: ${cookie.foo} with no cookies causes NPE (#3023, rep by vicsanca)
    • session: SessionManager.createSession check for initialization (#3074, rep by dicr)
    • boot: watchdog communication proxy not setting proper classloader (#3174, rep by koreth)
    • amber: @ManyToOne issue with @JoinColumn not specifying name (#3081, rep by dicr)
    • amber: @Version fixes for java.sql.Timestamp (#3080, rep by dicr)
    • config: webApp.url should default to http://localhost instead of http://default (#3035, rep by skipper13)
    • config: resin:import will throw config exception is include file exists bug is not readable (#3076, rep by dicr)
    • server: reduce default BlockManager size (#3054, rep by Daniel Vydra)
    • amber: @Entity wasn't allowing protected constructor (#3071, rep by dicr)
    • admin: log-service default changed to 'warning' (#3084, rep by Bryant Harris)
    • build: debian web user should be 'www-data' (#3124, rep by Geert Van Damme)
    • quercus: $GLOBALS array regression (#3176, rep by koreth)
    • quercus: compress.zlib parsing error (#3171, rep by koreth)
    • quercus: $_SERVER and $HTTP_SERVER_VARS not identical (#3168, rep by koreth)
    • quercus: stream_get_meta_data extra logging (#3170, rep by koreth)
    • quercus: class static fields must be handled as mangled globals (#3155, #3165, rep by koreth)
    • quercus: DoubleValue issues in assignments, e.g. for commas (#3163, rep by koreth)
    • quercus: array copy-on-write issues with latest optimizations (#3160, rep by koreth)
    • quercus: unset compilation issues with latest optimizations (#3157, rep by koreth)
    • jsf: invalid input is not redisplayed in JSF UI Input (#3057, rep by freemant)
    • quercus: resin_save_state()/resin_restore_state() (rep by koreth)
    • server: 304 was not properly ignoring content (#3089, rep by Andrew Phillips)
    • quercus: catch regexp stack overflow and log (rep by koreth)
    • quercus: array_shift regression (#3150, rep by koreth)
    • quercus: array($x = 3) compilation issue (#3139, rep by koreth)
    • quercus: experimental lazy function classloading (rep by koreth)
    • quercus: NPE with func_get_args (#3103, rep by koreth)
    • core: added StreamSource for hessian serialization
    • hessian: added AbstractStreamSerializer and AbstractStreamDeserializer
    • hessian: added *HessianSerializer and *HessianDeserializer pattern
    • jsf: Application MessageBundle fixes (#3056, rep by freemant)
    • jsf: JSF State with Serializable ActionListener (#3058, rep by freemant)
    • server: ThreadLocal removal/cleanup
    • admin: change profile default to 10ms
    • http: 304 should not return content-length (#3089, rep by Andrew Phillips)
    • admin: changed log-service default logging level to WARNING (rep by Bryant Harris)
    • memory: DispatchRequest._invocation needs to be cleared (rep by Mattias Jiderhamn)
    • session: clustering triplicate='true' with only one server (rep by Mark Morgan)
    • database: NPE in ConnectionPool.destroy() (#3070, rep by dicr)
    • thread: thread pool load smoothing (rep by Martin Thompson)
    • boot: watchdog kill NPE (#3009, rep by stbu)
    • persistent-store: sessions larger than 4M were not properly persisted (#3025, rep by mate)
    • memory: removed potential ThreadLocal leak with SecurityContext (#3031, rep by Mattias Jiderhamn)
    • admin: OSGi bundles now registered as OsgiBundleMXBean
    • admin: WebBeans now registered as WebBeanMXBean
    • Servlet: various fixes for Servlet TCK
    • JSP: various fixes for JSP TCK
    • WebBeans: javax.webbeans.manager.Manager and Bean are new SPI for WebBeans
    • WebBeans: @Current replaces @In as default @BindingType
    • WebBeans: <Deploy> enables @DeploymentType and establishes priority
    • WebBeans: @DeploymentType replaces old @ComponentType
    • WebBeans: @Named semantics changes for new draft - Named is no longer a @BindingType and no longer automatically names beans
    • WebBeans: move web-beans.xml to root from META_INF for new draft
    • WebBeans: new XML web-beans.xml syntax for new draft

    Resin 3 changesResin 3.1 changesResin 1.2 changesolder changes


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