For testing and starting out.
- Java EE 6 Web Profile
- World's fastest web server
- Watchdog process
- No third-party dependencies
- Quercus
GPLv3
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
- Download Resin 4.0
- Download Resin Pro 4.0
Resin 4.0 is the current stable release branch suitable for production use.
2021-12-08
Description
Bug fix release.
Change List
- security: windows-specific URL file visibility issue.
- ssl: add certificate-chain-file to sni-host (#6434, rep by Brygid)
- misc: synchronize ScriptStackTrace (#6435, rep by M. Secrett)
- config: add config for watchdog-jvm_args
- database: in XA when a first getConnection() has a sql error, a second getConnection() wasn't properly returning the first (#6407, rep by Mitsuo Shimomura)
- server: HttpRequest header/url expansion isn't correctly recalculating tail (#6391, rep by cyflhn)
- server: LibraryLoader isModified needs synchronization because of shared _newPathList (#6395, rep by Mitsuo)
- config: use access_log_format from resin.properties in cluster-default (#6380, rep by mitsuo)
- ssl: add null check for JNI free of string argument (#6378, rep by J. Blachon)
- health: SendMail connection errors shouldn't force restart (#6374, rep by S. Sampgaonkar)
- ssl: add ssl="true" to HttpProxy (#6343, rep by C.Fernandez)
- ssl: use openssl_cipher_suite from resin.properties (#6369, rep by Kok-Chai)
- servlet: url map syncronization during startup
- http: transfer-encoding chunked has priority over content-length (#6365, rep by shampster)
- watchdog: remove -Xmx limitation on watchdog, instead launching with normal memory (#6329, #6330, rep by M. Shimomura, Gabriel Costea)
- watchdog: update schema cache to use native path
- windows: windows setup.exe fails when reading registry Services (#6400, rep by ahoroviy)
2020-07-29
Description
Bug fix release.
Change List
- redirect: escape urls for resin:MovedPermanently (#6348, rep by stbu)
- jsp: JspPrecompileListener can't use more than one thread because of shared tags (#6350, rep by Mitsuo)
- websocket: flush() was called on output stream because normal servlet request flush wasn't disabled (#6339)
- log: update access log to support long content length (#6355, rep by stbu)
- form: update int/long to handle large uploads (#6349, rep by stbu)
- cloud: improve debug message for connection failure (#6352)
- anomaly: add auto thread dump for anomalous request time (#6318, rep by Mitsuo)
- webapp: startup logging in webapp (#6346, rep by R. Mann)
- admin: manage tag ids with special characters (#6341, rep by stbu)
- thread: add timestamp for low-level ThreadPool (#6338)
- openssl: add +/tlsv1.3 (#6314, rep by O. Aiken)
- class-scan: catch and continue from .class parse exceptions
- access-log: add %{param}p for parameter (#6305, rep by Yoo)
- websocket: avoid wrapping IOException in IllegalStateException (#6326, rep by James Byatt)
- jdk: EventManager need to use ConcurrentHashMap.putIfAbsent, not Map.putIfAbsent (#6331, rep by alis
- config: openssl-protocol, openssl-cipher-suite, openssl-chain-file (#6316)
- health: avoid reporting time outside window as downtime (#6300, rep by M. Shimomura)
2020-02-12
Description
Big fix release.
Change List
- cluster: fix heartbeat close
- deploy: fix duplicate remote deploy
- config: add jvm_classpath to cluster-default.xml (#6311)
- config: add access_log_format (#6302, rep by T. DeHaan)
- jdk: TcpPort._activeConnectionSet.keySet() must use Map api (#6294, rep by Y. Guedj)
- jdk: getAttribute should not wrap AttributeNotFound (#6297)
- jdk-compat: dynamic Logging during initialization (#6293)
2019-10-28
Description
Bug fix release.
Change List
- port: thread launchers were started before initialization (#6287, rep by A. Thai)
- session: SessionImpl should not clear _isModified on no-change load (#6289, rep by alpor9)
- jdk: use Map.keySet() instead of ConcurrentHashMap.keySet() for linking issues (#6288, rep by A. Thai)
- server: on HMUX requests, wait for server start
- server: keepalive timeout needs to killKeepalive not turn to active (#6268, rep by M. Shimomura)
- http: HttpsEmbed missing jsse.init() (#6282, rep by mikeb01)
- jdk-compat: jdk init with -javaagent cannot use logging from appendToClassPathForInstrumentation (#6279, rep by M. Shimomura)
- http: HttpProxy encoding issue with ch>0x8000 (#6276)
- admin: added resin.admin.heap-dump.file system property for heap-dump directory (#6242 rep by Oneshin)
- hessian: close of Hessian proxy stream when result is inputstream (#3655, rep by Mattias Jiderhamn)
- config: add health_log_expire_timeout (#6271, rep by K. Ng)
- jsp-el: issues with bean getters and get() (#6269, rep by Mitsue Shimomura)
- remote: allow JDK11 w/o WebService class (#6266, rep by Matt S)
- jdk-compat: TcpPort.close() exception on JDK6/7 (#6254)
- mod_caucho: handling of https forwarding
- file: add default-content-type to FileServlet (#6237, rep by stbu)
- config: add openssl_chain_file to cluster-default.xml (#6253)
- dist: split out jpa-16.jar from javaee-16.jar
2019-05-23
Description
Bug fix release.
Change List
- distribution: update .jar versions and remove jars with possible conflicts
- cloud: distributed server update issue with .git/refs (#6238, rep by Andrew Thai)
- elastic: cleanup of join server-id and server-address, and timeout (#6236, rep by Chris Daniel)
- ssl: add trust-store-algorithm and trust-store-provider to jsse (#6235)
- ssl: add key-manager-password and key-store-password to jsse (#6233)
- ssl: add key-manager-algorithm and key-manager-provider to jsse (#6234)
- spring: add ClasspathPath to MergePath.addClassPath (#6227)
- websocket: add WebSocketContext.ping (#6228)
- integration: WebApp.getMimeMapping (#6230)
- integration: WebApp.getLocaleMapping (#6231)
- security: setting setServerHeader to null will remove Server header (#6224, rep by Dharanidhar)
- file: cache file updates when webapp-jar changes (#6223, rep by Steffan Busch)
- debian: update debian release
- elastic: add server-timeout to resin:ElasticCloudService (#6218, rep by Naohisa)
- quercus: find interface method if available (#6221)
- elastic: add --elastic-server-index (#6216, rep by Naohisa)
- security: foo.;html produces 500 exception (#6217, rep by Steffan Busch)
- security: j_security_check with no auth should issue warning and 404 instead of 500 (#6219, rep by Steffan Busch)
- servlet: don't reuse form/invocation ByteToChar when very large (#6220, rep by Naohisa)
- embed: add HttpsEmbed (#6193, rep by mikeb01)
- jmx: add application-hash to WebAppMXBean (#6202, rep by Naohisa)
Download
To help us better understand our users, please be kind enough to provide your information.
Older releases are available in the download archive.