Difference between revisions of "Jetty/Starting/Porting to Jetty 7"

From Eclipsepedia

Jump to: navigation, search
(New page: {{Jetty}} == Introduction == The intent of jetty-7 is to allow users to transition to the updated architecture and to access some servlet-3.0 features within a servlet 2.5 container, but ...)
 
Line 14: Line 14:
 
== Renaming of Classes and Packages ==
 
== Renaming of Classes and Packages ==
 
The Jetty 7 codebase was moved to the org.eclipse.jetty.* package space and remodularized so that dependencies for client, server and servlet container are more separable. We have written a converter tool to ease the conversion of your application source and configuration files to use the new package space: [[Jetty/Getting Started/Upgrade from Jetty 6 to Jetty 7|Upgrade from Jetty 6 to Jetty 7]].  
 
The Jetty 7 codebase was moved to the org.eclipse.jetty.* package space and remodularized so that dependencies for client, server and servlet container are more separable. We have written a converter tool to ease the conversion of your application source and configuration files to use the new package space: [[Jetty/Getting Started/Upgrade from Jetty 6 to Jetty 7|Upgrade from Jetty 6 to Jetty 7]].  
 
A quick overview of the general refactoring is here:
 
  
 
{| class="jetty-table"
 
{| class="jetty-table"
|+ Renamed packages and classes
+
|+ Quick guide to renamed packages and classes
! Jetty 6 Package/Class
+
! Jetty 6
! Matching Jetty 7 Package/Class
+
! Matching in Jetty 7
! Similar Jetty 7 Package/Class
+
! Similar in Jetty 7
 
|-
 
|-
| org.mortbay.* || org.eclipse.jetty.* ||
+
| org.mortbay.(jetty).* || org.eclipse.jetty.* ||
 
|-
 
|-
| org.mortbay.jetty.* || org.eclipse.jetty.* ||
+
| packages under modules/util - org.mortbay.util.*, org.mortbay.log, org.mortbay.component, org.mortbay.thread, org.mortbay.resource
|-
+
| org.eclipse.jetty.util.*, org.eclipse.jetty.util.log, org.eclipse.jetty.util.component, etc
| org.mortbay.util.ajax.* || org.eclipse.jetty.json.* ||
+
 
|-  
 
|-  
| org.morbay.log.* || org.eclipse.jetty.util.log.* ||
+
| org.mortbay.jetty.security.UserRealm
|-
+
org.mortbay.jetty.security.HashUserRealm
| org.mortbay.jetty.security.UserRealm || || org.eclipse.jetty.security.LoginService
+
|
|-
+
| org.eclipse.jetty.security.HashLoginService
| org.mortbay.jetty.security.HashUserRealm || || org.eclipse.jetty.security.HashLoginService
+
org.eclipse.jetty.security.LoginService
 
|-
 
|-
 
| org.mortbay.jetty.servlet.Context || org.eclipse.jetty.servlet.ServletContextHandler ||
 
| org.mortbay.jetty.servlet.Context || org.eclipse.jetty.servlet.ServletContextHandler ||
 
|-
 
|-
| org.mortbay.util.ajax.Continuation || org.eclipse.jetty.continuation.Continuation ||
+
| org.mortbay.util.ajax.Continuation
|-
+
org.mortbay.util.ajax.ContinuationSupport
| org.mortbay.util.ajax.ContinuationSupport || org.eclipse.jetty.continuation.ContinuationSupport ||
+
| org.eclipse.jetty.continuation.Continuation
|-
+
org.eclipse.jetty.continuation.ContinuationSupport
|  
+
|
 
|}
 
|}
  

Revision as of 04:52, 17 June 2009


Contents

Introduction

The intent of jetty-7 is to allow users to transition to the updated architecture and to access some servlet-3.0 features within a servlet 2.5 container, but without the need to update java 1.6 or to wait for the final specification.

Jetty 7 is not a drop-in replacement for Jetty 6. While Jetty 7 has very much the same architecture as Jetty 6, there are packaging changes and other minor tweaks between the versions. Also, the Jetty 7 milestones are not as full featured as Jetty 6 in terms of 3rd party integrations being available by default with the distribution bundle.

If your application adheres to standards, porting to Jetty 7 should simply be a matter of updating your configuration files. However, if your application uses non-standard or Jetty-specific APIs, then additional porting work will be required. This page gives a brief overview of the changes needed to port to Jetty 7.

Jetty 7 @ Eclipse, Jetty 7 @ Codehaus

The core Jetty 7 modules have all moved to Eclipse, but some Jetty integrations (e.g., jetty-maven-plugin, terracotta, wadi) and distributions (e.g., deb, rpm, hightide) still remain at codehaus. If you are looking for these, see codehaus trunk.

Renaming of Classes and Packages

The Jetty 7 codebase was moved to the org.eclipse.jetty.* package space and remodularized so that dependencies for client, server and servlet container are more separable. We have written a converter tool to ease the conversion of your application source and configuration files to use the new package space: Upgrade from Jetty 6 to Jetty 7.

Quick guide to renamed packages and classes
Jetty 6 Matching in Jetty 7 Similar in Jetty 7
org.mortbay.(jetty).* org.eclipse.jetty.*
packages under modules/util - org.mortbay.util.*, org.mortbay.log, org.mortbay.component, org.mortbay.thread, org.mortbay.resource org.eclipse.jetty.util.*, org.eclipse.jetty.util.log, org.eclipse.jetty.util.component, etc
org.mortbay.jetty.security.UserRealm

org.mortbay.jetty.security.HashUserRealm

org.eclipse.jetty.security.HashLoginService

org.eclipse.jetty.security.LoginService

org.mortbay.jetty.servlet.Context org.eclipse.jetty.servlet.ServletContextHandler
org.mortbay.util.ajax.Continuation

org.mortbay.util.ajax.ContinuationSupport

org.eclipse.jetty.continuation.Continuation

org.eclipse.jetty.continuation.ContinuationSupport

Other refactoring changes to watch out for when moving to Jetty 7
Type of change Jetty 6 Jetty 7
Maven plugin artifact id maven-jetty-plugin jetty-maven-plugin
Split up server JAR jetty.jar
  • jetty-server.jar

For a complete list of changes, see Porting to Jetty 7/Refactoring

Architectural Changes

Configuration

Handlers

Startup Options

Continuations

Jetty 7 introduces portable continuations, which are meant to

Cometd

Licenses

Jetty Version Comparison Table

Note: cometd server is not shipped within the Jetty distribution, it can be obtained from the cometd.org website.



Additional Resources