Jetty Changelog

What's new in Jetty 9.1.1

Jan 13, 2014
  • 408912 JDBCSessionIdManager should allow configuration of schema
  • 410750 NPE Protection in Mongo save session
  • 417202 Start / command line arguments with ${variable} should be expanded
  • 418622 WebSocket / When rejecting old WebSocket protocols, log client details
  • 418769 Allow resourceBases in run-forked Mojo
  • 418888 Added strict mode to HttpGenerator
  • 419309 encode alias URIs from File.toURI
  • 419911 Empty chunk causes ArrayIndexOutOfBoundsException in InputStreamResponseListener.
  • 421189 WebSocket / AbstractExtension's WebSocketPolicy is not Session-specific
  • 421314 Websocket / Connect attempt with Chrome 32+ fails with "Some extension already uses the compress bit"
  • 421697 IteratingCallback improvements
  • 421775 CookiePatternRule only sets cookie if not set already
  • 421794 Iterator from InputStreamProvider is not implemented properly.
  • 421795 ContentProvider should have a method to release resources.
  • 422192 ClientContainer.getOpenSessions() always returns null
  • 422264 OutputStreamContentProvider does not work with Basic Authentication.
  • 422308 Change all session/sessionid managers to use shared Scheduler
  • 422386 Comma-separated s not trimmed in GzipFilter
  • 422388 Test for GzipFilter apply to resources with charset appended to the MIME type
  • 422398 moved jmx remote config to jmx-remote.mod
  • 422427 improved TestConnection
  • 422703 Support reentrant HttpChannel and HttpConnection
  • 422723 Dispatch failed callbacks to avoid blocking selector
  • 422734 messages per second in ConnectorStatistics
  • 422807 fragment large written byte arrays to protect from JVM OOM bug
  • 423005 reuse gzipfilter buffers
  • 423048 Receiving a PING while sending a message kills the connection
  • 423060 Allow ${jetty.base}/work
  • 423118 ServletUpgradeRequest.getUserPrincipal() does not work
  • 423185 Update permessage-deflate for finalized spec
  • 423255 MBeans of SessionIdManager can leak memory on redeploy
  • 423361 Ensure ServletContainerInitializers called before injecting Listeners
  • 423373 Correct namespace use for JEE7 Schemas
  • 423392 GzipFilter without wrapping or blocking
  • 423395 Ensure @WebListeners are injected
  • 423397 Jetty server does not run on Linux server startup because of a bug in jetty.sh script.
  • 423476 WebSocket / JSR / @OnMessage(maxMessageSize=20000000) not properly supported
  • 423556 HttpSessionIdListener should be resource injectable
  • 423646 WebSocket / JSR / WebSocketContainer (Client) should have its LifeCycle stop on standalone use
  • 423692 use UrlEncoded.ENCODING for merging forwarded query strings
  • 423695 Horizontal-tab used as HTTP Header Field separator unsupported
  • 423724 WebSocket / Rename MessageAppender.appendMessage to .appendFrame
  • 423739 Start checks module files.
  • 423804 WebSocket / JSR improper use of ServerEndpointConfig.Configurator.getNegotiatedSubprotocol()
  • 423875 Update jetty-distro build to use jetty-toolchain jetty-schemas 3.1.M0
  • 423915 WebSocket / Active connection from IOS that goes into airplane mode not disconnected on server side
  • 423926 Remove code duplication in class IdleTimeout.
  • 423930 SPDY streams are leaked.
  • 423948 Cleanup and consolidate testing utilities in WebSocket
  • 424014 PathContentProvider does not close its internal SeekableByteChannel.
  • 424043 IteratingCallback Idle race.
  • 424051 Using --list-config can result in NPE
  • 424168 Module [ext] should load libraries recursively from lib/ext/
  • 424180 extensible bad message content
  • 424183 Start does not find LIB (Classpath) when on non-English locale
  • 424284 Identify conflicts in logging when error "Multiple servlets map to {pathspec}" occurs
  • 424303 @ServletSecurity not applied on non load-on-startup servlets
  • 424307 obfuscate unicode
  • 424380 Augment class / Jar scanning timing log events
  • 424390 Allow enabling modules via regex
  • 424398 Servlet load-on-startup ordering is not obeyed
  • 424497 Allow concurrent async sends
  • 424498 made bytebufferendpoint threadsafe
  • 424588 org.eclipse.jetty.ant.AntWebInfConfiguration does not add WEB-INF/classes for annotation scanning
  • 424598 Module [npn] downloads wrong npn jar
  • 424651 org.eclipse.jetty.spdy.Flusher use of non-growable ArrayQueue yield java.lang.IllegalStateException: Full.
  • 424682 Session cannot be deserialized with form authentication
  • 424706 The setMaxIdleTimeout of javax.websocket.Session does not take any affect
  • 424734 WebSocket / Expose Locale information from ServletUpgradeRequest
  • 424735 WebSocket / Make ServletUpgradeRequest expose its HttpServletRequest
  • 424743 Verify abort behavior in case the total timeout expires before the connect timeout.
  • 424762 ShutdownHandler hardcodes "127.0.0.1" and cannot be used with IPv6
  • 424847 Deadlock in deflate-frame (webkit binary)
  • 424863 IllegalStateException "Unable to find decoder for type "
  • 425038 WebSocketClient leaks file handles when exceptions are thrown from open()
  • 425043 Track whether pools are used correctly.
  • 425049 add json mime mapping to mime.properties.

New in Jetty 9.1.0 (Nov 20, 2013)

  • Fixes:
  • 397167: Remote Access documentation is wrong
  • 416477: QueuedThreadPool does not reuse interrupted threads
  • 420776: complete error pages after startAsync
  • 421362: When using the jetty.osgi.boot ContextHandler service feature the wrong ContextHandler can be undeployed

New in Jetty 9.0.7 (Nov 16, 2013)

  • 407716 fixed logs
  • 416597 Allow classes and jars on the webappcontext extraclasspath to be scanned for annotations by jetty-maven-plugin
  • 418636 Name anonymous filter and holders with classname-hashcode
  • 418732 Add whiteListByPath mode to IPAccessHandler
  • 418767 run-forked goal ingores test scope dependencies with useTestScope=true
  • 418792 Session getProtocolVersion always returns null
  • 418892 SSL session caching so unreliable it effectively does not work.
  • 419309 Added symlink checker to test webapp
  • 419333 treat // as an alias in path
  • 419344 NPNServerConnection does not close the EndPoint if it reads -1.
  • 419350 Do not borrow space from passed arrays
  • 419655 AnnotationParser throws NullPointerException when scanning files from jar:file urls
  • 419687 HttpClient's query parameters must be case sensitive.
  • 419799 Async timeout dispatches to error page
  • 419814 Annotation properties maxMessageSize and inputBufferSize don't work
  • 419846 JDBCSessionManager doesn't determine dirty state correctly
  • 419901 Client always adds extra user-agent header.
  • 419937 Request isSecure cleared on recycle
  • 419950 Provide constructor for StringContentProvider that takes Charset.
  • 419964 InputStreamContentProvider does not close provided InputStream.
  • 420033 AsyncContext.onTimeout exceptions passed to onError
  • 420039 BufferingResponseListener continues processing after aborting request.
  • 420048 DefaultServlet alias checks configured resourceBase
  • 420142 reimplemented graceful shutdown
  • 420362 Response/request listeners called too many times.
  • 420374 Call super.close() in a finally block
  • 420530 AbstractLoginModule never fails a login
  • 420572 IOTest explicitly uses 127.0.0.1
  • 420776 complete error pages after startAsync
  • 420844 Connection:close on exceptional errors
  • 420930 Use Charset to specify character encoding
  • 421197 synchronize gzip output finish