Resin Pro Download

resin_logo_25
For testing and starting out.
  • Java EE 6 Web Profile
  • World's fastest web server
  • Watchdog process
  • No third-party dependencies
  • Quercus
GPLv3
resinprologo
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 Pro 4.0 is the current stable release branch suitable for production use. You can also download Resin Pro 3.1 or try out alpha builds of the upcoming Resin 5.0 (alpha).

Resin Pro 4.0.41

2014-09-26

Description

Resin 4.0.41 bug fix release

Change List

  • health: update PdfReport on start to log warning messages for mail (#570, rep by \ D. Tapsell)
  • servlet: ServletContextListener was called twice when registered from ServletCont\ ainerInitializer (#5611, rep by Gerrit Janssen)
  • scheduled-task: check for early task call (#5709, rep by Daniel Jimenez)
  • gzip: gzip response needs to filter out content-length (#5777, rep by wxiaoguang)\
  • jni: update EINTR processing for poll/nonblocking read (#5627, rep by bean)
  • log: ensure rollover worker is called after flush (#5785, rep by mros2stf)
  • log: missing timestamp due to buffer fill condition (#5794, rep by Daniel Jimenez\ )
  • health: add "DISABLED" state to HealthStatus for disabled health checks (#5711, r\ ep by Shinomiya Nobuaki)
  • dbpool: reduce logging level for dbpool driver close, because exception are expected in Mysql (#5637, rep by Srikanth Pulikonda)
  • cli: added -timeout to deploy command (#5598, #5597)
  • openssl: add +tlsv1.1 and +tlsv1.2 (#5682, rep by Sarah Gillespie)
  • servlet: welcome-file processing with query string creates duplicate for getParam\ eterValues (#5642)
  • servlet: content-type and application/json (#5565, rep by 54chen)
  • health: add ping-port attribute to HttpStatusHealthCheck in health.xml (#5572)
  • async: allow dispatch() in onTimeout() (#5779, rep by azuo_lee)
  • ssl: jni ssl mmap support must go through OpenSSL API (#5790, rep by N. Kikhia)
  • jni: calculate_poll_result could return invalid value (#5632, rep by bean)
  • session: check for NPE on shutdown (#5633, #5681 rep by M. Jindal)
  • configure: change ln -sfT to ln -sf for Mac install (#5717, rep by wileysaw)
  • io: null source check on read (#5731)
  • config: jvm-arg not properly picking up dynamic server.id (#5793, rep by daniel)<\ /li>
  • jni: use _filelengthi64 for windows JniRandomAccessFile.getLength (#5733, rep by \ Mattias Lagerwall)
  • config: ResinEnv exception declaration in init() (#5737, rep by matthiasblaesing)\
  • server: add NPE check for generateController (#5744, rep by Shinomiya Nobuaki)
  • file: added TransmitFile for windows (#5784)
  • servlet: error-page for 400-bad request NPE (#5749)
  • servlet: loadOnStartup was incorrectly enabled for @WebServlet even when unset (#\ 5778, rep by Marko Asplund)
  • load-balance: utf-8 encoding in urls (#5785, rep by R Cohen)
  • access-log: rollover-count was not property matching files with .gz extension (#5\ 789, rep by Uv Wildner)
  • jdbc: UserStatement.getWarnings() needs to work even after close (rep by Ole Dalg\ aard)
  • health: add critical/fatal messages to health shutdown message (#5762, rep by J. \ Meyer)
  • resin.xml: moved default cluster-default.xml to classpath and defaulted app-defau\ lt.xml to be dir-relative (#5762, rep by M. Lowe)
  • @WebSocket: interference between @WebSocket and CDI/JSP EL (#5776, rep by marko_a\ splund)
  • jsp-el: cookie.containsKey() fix: (#5683, rep. by Jason Wang)

Resin Pro 4.0.40

2014-05-13

Description

This release is a maintenance release. It contains an XSS security bug fix for the ISO-8859-1 encoder where specially-crafted characters could pass through unescaped to the client.

Change List

  • classLoader: getResource() should skip broken jars (#5706, rep by Constantinos Karantzas)
  • servlet-env: bind java:comp/BeanValidation (#5587, rep by Matthias Jiderhamn)
  • vfs: normalize windows drive letters to lower case to avoid dups (#5592, rep by Matthias Jiderhamn)
  • bam: increase default timeout for remote deploy (#5652, rep by Matthias Jiderhamn)
  • xa: clear _suspendState on transaction resume for memory issues (#5647, rep by Matthias Jiderhamn)
  • i18n: iso-8859-1 encoding issue with non-latin-1 characters needs to return error character (rep by Yoel Gluck)

Resin Pro 4.0.39

2014-04-07

Description

This is a maintenance release.

Change List

  • session: session-mode=before-header was disabling reloading on secondary servers (#5639, rep by Thomas Rogan)
  • resin: disable-soft command timeout error fix (#5656, rep by Sarah Gillespie)
  • resin: shutdown-wait-max not propagating to ShutdownSystem fix (#5660, rep by Shinomiya Nobuaki)
  • resin-admin: cross-site scripting vulnerability in /resin-admin (#5669, rep by G. Krstic)
  • jsp: taglib defined listeners should be called before Filter's init() (#5659, rep by Mattias Jiderhamn)
  • quercus: SimpleXMLElement->xpath() does not work for relative queries (#5622, rep by G. Krall)
  • quercus: SimpleXMLElement->children() returns null values (#5432, rep by ckir)
  • quercus: DOMDocument->schemaValidate() not implemented (#5613, rep by G. Krall)
  • quercus: empty() needs to call ArrayAccess->offsetExists() (#5620, rep by tssets)
  • quercus: spl_object_hash() not implemented (#5623, rep by G. Krall)
  • quercus: cannot execute multiple PDO statements on the same connection (#5625, rep by remaus)
  • quercus: nowdoc does not work (#5626, rep by remaus)
  • quercus: parent classes needs to call its version of private methods within its scope (#5631, rep by G. Krall)
  • quercus: ReflectionParameter::getClass() returns null (#4863, rep by ds82)
  • quercus: Parent keyword does not work inside a Trait (#5581, rep by tobia)
  • quercus: class_alias() is not implemented (#5443, rep by jsnoriegam)
  • quercus: quercus namespace issue in compiled mode (#5640, rep by R. Emaus)
  • quercus: simplexml children()->foo does not work for nodes with only text (#5655, rep by G. Krall)
  • quercus: rename META-INF/services/* so JBoss doesn't parse them (#5654, rep by G. Krall)
  • quercus: JsonSerializable class not implemented (#5504)
  • quercus: add FILTER_SANITIZE_STRIPPED as an alias of FILTER_SANITIZE_STRING (#5663, rep by M. McHugh)
  • quercus: implement filter_input(FILTER_UNSAFE_RAW) for phpMyFaq (#5661, rep by M. McHugh)
  • quercus: implement FILTER_SANITIZE_SPECIAL_CHARS (#5665, rep by M. McHugh)
  • quercus: force the java Mysql driver to use prepared statements (#5671, rep by R. Emaus)
  • quercus: quercus cannot start on Wildfly (#5674, rep by G. Krall)
  • quercus: unpack("H*") returns nothing (#5676, rep by M. Dykman)
  • quercus: clearstatcache() has 2 optional arguments (#5687, rep by G. Krall)
  • quercus: stream_is_local() is not implemented (#5685, rep by G. Krall)
  • quercus: curl_multi_init() suite of functions not implemented (#3516, rep by koreth)
  • quercus: SplObjectStorage class not implemented (#5696, rep by G. Krall)

Resin Pro 4.0.38

2013-12-15

Description

This is a maintenance release.

Change List

  • win32: windows returns incorrect mtime for stat() for DST (#5578, rep by Jason Barr)
  • deploy: NPE on undeploy (#5596)
  • session: update to session id generation to reduce reliance on SecureRandom to avoid duplication (#5602)
  • memcached: MemcachedClient in independent Resin's was improperly caching (rep by Scott Weatbrook)
  • jpa: EntityManager proxy needs to check isOpen before freeing EntityManager for reuse (#5541, rep by Riccardo Cohen)
  • ear: dependency-check could get stuck in the modified state (#5525, rep by Ryan Edwards)
  • rpm: %config updates for /etc/resin, and file mode on /usr/bin (#5562, rep by Christopher Powell, #5539, rep by Khalid Hosein)
  • cache: add memory-size-min to ClusterCache to configure minimum memory cache size (#5558, rep by J Tschida)
  • cluster: dynamic server must heartbeat address to recover from triad restarts (#5561, rep by T Pohl)
  • health: sort message times so PDF report of health dump will be most recent (#5358)
  • watchdog: increate idle thread on startup to avoid dependency on swap (#5500, rep by K. Hosein)
  • jms: transaction/ack issues with file and message driven bean (#5535, rep by Scott Weatbrook)
  • hessian: InetAddress serialization (#5540, rep by Michael Charnoky)
  • servlet: on shutdown, check facade._request for null (#5537)
  • deploy: redeploy delete issues with symlinks (#5536, rep by ssmax)
  • health: OpenFileDescriptorCount is not available on some JMVs (#5515, rep by Y. Zhao)
  • servlet: missing cookie-config in web.xml (#5521, rep by Arjan Tijms)
  • ioc: remove validatio of generic type on produces method (#5522, rep by A Tijms)
  • ioc: extends observers now auto-convert ProcessManagedBean<Foo> to ProcessManagedBean<? extends Foo> (#5531, rep by A Tijms)
  • quercus: empty() needs to call ArrayAccess->offsetExists() (#5612, rep by G. Krall)
  • quercus: session_status() not implemented (#5609, rep by G. Krall)
  • quercus: self doesn't work inside a namespace (#5608, G. Krall)
  • quercus: ReflectionParameter->getClass() not implemented (#5607, rep by G. Krall)
  • quercus: IllegalArgumentException vfs: not found on JBoss (#5606, rep by G. Krall)
  • quercus: ReflectionFunction does not work for closures (#5605, rep by G. Krall)
  • quercus: Xml reader is not working (#5603, rep by qumo)
  • quercus: call_user_func() needs to call __invoke (#5601, rep by G. Krall)
  • quercus: instanceof Closure returns false for closures (#5600, rep by G. Krall)
  • quercus: QuercusCompiledScript.eval() needs to return the Value object (#5589, rep by S. Guo)
  • quercus: ScriptEngineManager.getEngineByName("php") returns Quercus with unicode.semantics=off (#5588, rep by S. Guo)

Resin Pro 4.0.37

2013-09-04

Description

This is a maintenance release.

Change List

  • ejb: avoid double EJB timer call when timer is slow (#5518, rep by K. Hosein)
  • admin/rest: missing close on resource
  • windows: Added a global mutex to windows service wrapper to avoid starting multiple instances of Resin Watchdog
  • cloud: elastic server issues with dynamic remove/timeout (#5510, rep by T Pohl)
  • log: check for null logger name in LogRecord (#5499)
  • cdi: cdi vs jpa load order (#5493)
  • elastic: elastic servers use server-multi defaults (#5412)
  • jni: added check on nativeRead for buffer length (#5428, rep by Daniel Shearer)
  • deploy: start/fail must notify waiting threads (Hrushi Agrawal)
  • health: AnomalyAnalyzer now has min-deviation to avoid spurious messages (#5365)
  • cli: add password verification to password-generate (#5384)
  • access-log: add <access-log-buffer-size> in <cluster> (#5393, rep by A. Foong)
  • bam: force restart if BAM overflow continues (#5479, rep by J. Barr)
  • vfs: stat vs _stati64 issues on win64 (#5494, rep by Matias Lagerwall)
  • jsp: updated JSP page compile locking (#5460, rep by Nikolay Fedorov)
  • jsf: updated javax.faces to 2.1.24 (#5485, rep by cyttesen)
  • load-balance: cookie with max-age(0) not properly propagated (#5456, rep by H. Cleland)
  • shutdown: avoid spurious warnings on connection close during shutdown (#5463, rep by Stefanos Zachariadis)
  • cdi: multiple initializer classes in separate jars need to be unique (#5481, rep by Rick Mann)
  • bytecode: add constant-pool scanning for JDK 7 MethodHandle (#5466, rep by wxiaoguang)
  • session: add table-name to JDBC sessions (#5488, rep by B. Garber)
  • watchdog: add -Djava.web.headlesslib=true (# 5474, rep by Riccardo Cohen)
  • el: descriptor in BeanELResolver should be initialized lazily to work around JSF memory leak (rep by Mattias Jiderhamn)
  • servlet: ServletResponse.reset() should reset cookies (#5464)
  • iis.net: fixed Resin.IIS.handler.dll intermittent slow connection to resin issue (#5455, rep by Shinomiya Nobuaki)
  • cli: heap-dump double-dash isn't recognized with -raw option(#5454)
  • socket: client-disconnect exception needs to construct exception before socket close (#5392)
  • openssl: added "compression" flag with a default false (#5435)
  • jsp: dependency detection issues with inner classes causing recompilation (#5408, rep by stefan_bieler2)
  • servlet/async: async support with hmux (#5420, rep by bhauer1)
  • el: issue with permissions on inner classes (#5447, rep by mate)
  • webapp: check state on controller init (#5406, rep by gattu)
  • servlet: allow @Observes on servlet (#5444)
  • cli: status command needs to accept -watchdog-port (#5442)
  • servlet: getServerName() with IPv6 and no port (#5399, rep by shiny)
  • servlet: servlets with @Inject were not calling servlet init() (#5427, rep by Bill Digman)
  • classloader: classload errors in system classloader should not be at warning (#5416)
  • ejb: @Schedule must be removed when context closes (#5434)
  • cli: --version option was treated as version command (#5415, rep by Tamas Perlaky)
  • jsp: array index exception from utf-8 encoding buffer issues (#5436)
  • jsp: utf-8 encoding buffer issues with surrogate pairs (#5437)
  • network: issue with socket-timeout an non-jni (#5426, rep by HS Im)
  • quercus: preg_replace($array[0]) array dereference fix for preg_replace
  • quercus: ReflectionProperty::isProtected() fix
  • quercus: method_exists("__invoke") does not work with closures (#5501)
  • quercus: static local variables must be unique to a particular closure instance (#5502)

Download

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

Older releases are available in the download archive.