Resin Download

For testing and starting out.
  • Java EE 6 Web Profile
  • World's fastest web server
  • Watchdog process
  • No third-party dependencies
  • Quercus
For large production applications.
  • Java EE 6 Web Profile
  • World's fastest web server
  • Watchdog process
  • No third-party dependencies
  • Quercus Professional
  • Dynamic cloud servers
  • Distributed sessions
  • Distributed JCache
  • Smart load balancer
  • OpenSSL integration
  • Fast proxy cache
  • Cluster health monitoring
  • High performance socket JNI
  • Enterprise support options

Resin 4.0 is the current stable release branch suitable for production use.

Resin 4.0.46



bug fix release

Change List

  • jsp: tag loading issue due to WEB-INF case (#5936)
  • table: improper early closing of file on shutdown (#5946)
  • servlet: drop instantiation check for instances of servlets and filters (#5934)
  • jsse-ssl: add support for honor-cipher-order (#5939)
  • jsp: reflection not properly scoped to class-loader context (#5944)

Resin 4.0.45



Resin 4.0.45 - bug fix release

Change List

  • session: change shutdown state machine to allow getAttribute on invalidating session (#5919, rep by Shinomiya Nobuaki)\
  • build: remove LoadTimeWeaver (#5923, rep by M. Barker)
  • watchdog: change default -Xss to 1m (#5927, rep by anupmondal)
  • servlet: check for dual registration of ServletContextListener (#5893, rep by Matias Lagerwall)
  • jsp: share classloading of .tag files (#5914, rep by nfedorov)
  • dyn-server: on server restart, allow same address:port (#5903, rep by Tom Pohl)
  • dyn-server: added lock in resin-data to ensure multiple servers cannot use same data (#5902, rep by Tom Pohl)
  • ssl: allow OpenSSL ECC support for forward secrecy (#5906, rep by Nick Stephens)
  • db: add validation and restart for corrupted BTree index (#5912, rep by wesleywu)
  • build: allow for JDK 8 build (#5901, rep by dave)
  • health: removed perm gen checks (#5910)
  • ejb: ejbTimer.cancel() needs to remove timer from getTimers() (#5891, rep by bbik)
  • servlet: FileService character-encoding should exclude images (#5907, rep by Mathias Lagerwall)

Resin 4.0.44



Resin 4.0.44 - bug fix release

Change List

  • class-loader: excessive reread of jar certificates (#5850, rep by konfetov)<\ /li>
  • log: add sanity check for log rollover (#5845, rep by Keith F.)
  • deploy (git): use utf-8 to store path names (#5874, rep by alpor9)
  • websocket: setTimeout was being overridden by Port keepaliveTimeout (#5841, \ rep by A. Durairaju)
  • jni: on windows, skip JNI for File metadata like length (#5865, rep by Mathi\ as Lagerwall)
  • db: isNull issues with left join (#5853, rep by Thomas Rogan)
  • websocket: check for socket close on startTextMessage (#5837, rep by samadam\ s)
  • log: when log rollover fails, log to stderr (#5855, rep by Rock)
  • filter: allow private instantiation (#5839, rep by V. Selvaggio)
  • rewrite: added SetRequestCharacterEncoding (#5862, rep by Yoon)
  • health: change health check timeout to critical instead of fatal to allow fo\ r development sleep (#5867)
  • alarm: timing issue with warnings and alarm extraction (#4854, rep by SHinom\ iya Nobuaki)
  • session: orphan deletion throttling needs faster retry time (rep by Thomas R\ ogan)
  • mod_caucho: slow PUT/POST uploads with Apache 2.4 (#5846, rep by Stegard)

Resin 4.0.43



Resin 4.0.43 is a bug fix release.

Change List

  • openssl: use SSL_free in connection close
  • mod_caucho: slow PUT/POST uploads with Apache 2.4 (#5846, rep by Stegard)

Resin 4.0.42



Resin 4.0.42 bug fix release

Change List

  • websocket: read loop needs to use getAvailableBuffer() (ep by Arun Durairaju)
  • bam: too much logging for queue full (rep by Dan Stilts)
  • bam: use smallest queue for remoting instead of round-robin to handle frozen connections (rep by Dan Stilts)
  • comet: cleanup of comet state machine (#5826, rep by S. Nobuaki)
  • cxf: missing servlet config for CXFProtocolServletFactory (#5825, rep by balaiitm)
  • servlet: setHeader("foo", null) now removes header value (#5824)
  • db: fixed expires and orphan queries to remove expired sessions (#5748, rep by Thomas Rogan)
  • ejb: added scan-persistence-xml to <ejb-server> to allow disabling of persistence-unit scanning (#4908)
  • ssl: update openssl option processing. Update SSL_free/SSL_new
  • health: add snapshot-jmx and snapshot-heap-dump to avoid issues on weekly reports (#5495, rep by ssbbartgroup)
  • chdir to $RESIN_HOME before starting (#5668, rep by balaiitm)
  • apache: NPE issues with Apache locking (#5747, #5744, rep by vicsanca, ssmax)
  • apache: configure/make issues with Apache 24
  • jni: add loading of classes/native/*.so (or native/*.so in a jar) (#5760, rep by William Damage)
  • openssl: SSL field (ssl_sock) value was being cleared by std.c (#5815, rep by Nick Stephens, Sarah Gillespie)
  • openssl: SSLv3 is now disabled by default (#5819)
  • health: StartProfiler was saving data in text, not json (#5736, rep by S Nobuaki)
  • admin: load-balance connection state could get stuck in "starting" on certain success cases (#5653)
  • async: on comet restart, allow the previous state to be completed (#5684, rep by KC Baltz)
  • async: send 500 on empty response with timeout (#5570, rep by Shinomiya Nobuaki)
  • async: issues with starting async in forward (#5544, rep by Shinomiya Nobuaki)
  • cache: update FileServlet to generate ETag including mime-type to support mime-type updates (#5761, rep by M. Lowe)
  • servlet: multipart parts were not supported for namedDispatcher forward (#5543, rep by Shinomiya Nobuaki)
  • dbpool: on manual init(), do not register JNDI, CDI, or JMX (#5595, rep by Shinomiya Nobuaki)
  • webapp: sort initializers by web-fragment (#5514, rep by beamerblvd)
  • ring-queue: offer with no wait and full requires a wake before blocking (#5599)
  • jsp: allow binary output stream with non text/ contentType (#5027)
  • async/gzip: issues with async combined with gzip (#5033)
  • rpm: added %postun to shutdown resin (#5635, rep by S. Gillespie)
  • i18n: classloading issues with utf-8 names (#5549, rep by konfetov)
  • database: use JDK's ReentrantReadWriteLock instead of custom Resin lock (#5624, rep by Shinomiya Nobuaki)
  • database: on close, fsync validation is does not allow for late writes (#5636, rep by Shinomiya Nobuaki)
  • servlet: relax checking of public for Filter constructor (#5701)
  • log: limit log message database (#5802, rep by R. Murayama)
  • database: force remove of old file when file is created (#5803, rep by R. Murayama)
  • jni: only epoll is supported as select-manager (#5811, rep by qjian)
  • jni: on windows use File.lastModified() instead of stat result to avoid windows DST bug (rep by Jason Barr)
  • health: add <mail> to PdfReport configuration (rep by Steffen Busch)


To help us better understand our users, please be kind enough to provide your information.

Older releases are available in the download archive.