Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Virgo/Community/Migrating from 2.x to 3.0.0"

(Web)
(Web)
Line 36: Line 36:
 
**a Bundle-Classpath header for classes in 'WEB-INF/classes', if needed.  
 
**a Bundle-Classpath header for classes in 'WEB-INF/classes', if needed.  
 
**package imports for anything the web bundle needs from the System bundle.  
 
**package imports for anything the web bundle needs from the System bundle.  
 +
  
 
*The Module-Type header is no longer used to identify a bundle as a WAB, the presence of a Web-Contextpath header now does this, as per the specification.
 
*The Module-Type header is no longer used to identify a bundle as a WAB, the presence of a Web-Contextpath header now does this, as per the specification.
 +
  
 
*The version of the javax.portlet.* packages has changed from 2.0.0 to 2.0.0.v20110525.
 
*The version of the javax.portlet.* packages has changed from 2.0.0 to 2.0.0.v20110525.
Line 45: Line 47:
 
*The version of the javax.annotation.* packages has changed from 1.0.0 to 1.1.0.v201105051105
 
*The version of the javax.annotation.* packages has changed from 1.0.0 to 1.1.0.v201105051105
 
*The version of the javax.el.* packages has changed from 1.0.0 to 2.2.0.v201105051105
 
*The version of the javax.el.* packages has changed from 1.0.0 to 2.2.0.v201105051105
 +
  
 
*The javax.servlet.* packages are now provided by a bundle with bundle symbolic name javax.servlet rather than com.springsource.javax.servlet.
 
*The javax.servlet.* packages are now provided by a bundle with bundle symbolic name javax.servlet rather than com.springsource.javax.servlet.
Line 50: Line 53:
 
*The javax.annotation.* packages are now provided by a bundle with bundle symbolic name javax.annotation rather than com.springsource.javax.annotation
 
*The javax.annotation.* packages are now provided by a bundle with bundle symbolic name javax.annotation rather than com.springsource.javax.annotation
 
*The javax.el.* packages are now provided by a bundle with bundle symbolic name javax.el rather than com.springsource.javax.el
 
*The javax.el.* packages are now provided by a bundle with bundle symbolic name javax.el rather than com.springsource.javax.el
 +
  
 
*Tomcat version is changed from 6.0.* to 7.0.*
 
*Tomcat version is changed from 6.0.* to 7.0.*
*Tomcat bundles symbolic names are changed:
+
*Tomcat bundles symbolic names are changed from:
**com.springsource.org.apache.catalina rather than com.springsource.org.apache.catalina.springsource
+
**com.springsource.org.apache.catalina to com.springsource.org.apache.catalina.springsource
**com.springsource.org.apache.catalina.ha rather than com.springsource.org.apache.catalina.ha.springsource
+
**com.springsource.org.apache.catalina.ha to com.springsource.org.apache.catalina.ha.springsource
**com.springsource.org.apache.catalina.tribes rather than com.springsource.org.apache.catalina.tribes.springsource
+
**com.springsource.org.apache.catalina.tribes to com.springsource.org.apache.catalina.tribes.springsource
**com.springsource.org.apache.coyote rather than com.springsource.org.apache.coyote.springsource
+
**com.springsource.org.apache.coyote to com.springsource.org.apache.coyote.springsource
**com.springsource.org.apache.el rather than com.springsource.org.apache.el.springsource
+
**com.springsource.org.apache.el to com.springsource.org.apache.el.springsource
**com.springsource.org.apache.jasper rathen than com.springsource.org.apache.jasper.springsource
+
**com.springsource.org.apache.jasper to than com.springsource.org.apache.jasper.springsource
**com.springsource.org.apache.juli.extras rather than com.springsource.org.apache.juli.extras.springsource
+
**com.springsource.org.apache.juli.extras to com.springsource.org.apache.juli.extras.springsource
 +
*Two additional bundles are provided:
 +
**com.springsource.org.apache.tomcat.api
 +
**com.springsource.org.apache.tomcat.util
 +
 
 +
*JDT version is changed from 3.3.1.v_780_R33x to 3.6.1
 +
*JDT bundle symbolic name is changed from org.eclipse.jdt.core to com.springsource.org.eclipse.jdt.core.compiler.batch
  
 
= Require-Bundle  =
 
= Require-Bundle  =

Revision as of 02:54, 27 May 2011

DRAFT

XML Schemas

The plan schema has moved to Eclipse.org, ...

Virgo Startup

This is related to the result of bug 333474. Virgo now has dynamic startup - its base bundles do not require ordering anymore. This enables possible usage of other OSGi launchers.

Declarative Service support

This is related to the result of bug 333474. Virgo now supports Declarative services out-of-the-box, both in kernel and the user region.

Virgo Directory Layout

Bug 324991 affects this.

Reserved keywords in JSPs

As bug 346066, EL 2.2 is now stricter about the use of Java reserved words as variable names in JSPs. e.g. import.

User Region

The following notes relate to the effects of bug 330776.

Rather than the user region being a nested OSGi framework, it is now a collection of bundles in the same OSGi framework as the kernel with isolation controlled by config/org.eclipse.virgo.kernel.userregion.properties. There is a single system bundle which resides in the kernel region. There is now no surrogate bundle (which used to have bundle id 1) to act as a kind of proxy for the kernel in the user region; instead user region bundles wire directly to kernel bundles for packages and services.

Framework properties are now specified only in lib/org.eclipse.virgo.kernel.launch.properties (this is subject to change) and must include org.osgi.framework.bsnversion=multiple for correct functioning of the user region.

There is now one OSGi console which can be enabled using the osgi.console framework property. This console can see all the bundles in the framework, although the vsh subcommand is limited to the user region bundles.

Web

  • Virgo previously added additional Manifest headers to web application to make them easier to develop. This support is being dropped as it didn't appear in the specification for 'Web Application Containers' (RFC66). The major effect this will have is that you must now include:
    • a Bundle-Classpath header for classes in 'WEB-INF/classes', if needed.
    • package imports for anything the web bundle needs from the System bundle.


  • The Module-Type header is no longer used to identify a bundle as a WAB, the presence of a Web-Contextpath header now does this, as per the specification.


  • The version of the javax.portlet.* packages has changed from 2.0.0 to 2.0.0.v20110525.
  • The version of the javax.xml.rpc.* pakages has changed from 1.1.0 to 1.1.0.v20110517
  • The version of the javax.servlet.* packages has changed from 2.5.0 to 3.0.0.v201103241009.
  • The version of the javax.servlet.jsp.* packages has changed from 2.1.0 to 2.2.0.v201103241009.
  • The version of the javax.annotation.* packages has changed from 1.0.0 to 1.1.0.v201105051105
  • The version of the javax.el.* packages has changed from 1.0.0 to 2.2.0.v201105051105


  • The javax.servlet.* packages are now provided by a bundle with bundle symbolic name javax.servlet rather than com.springsource.javax.servlet.
  • The javax.servlet.jsp.* packages are now provided by a bundle with bundle symbolic name javax.servlet.jsp rather than com.springsource.javax.servlet.jsp.
  • The javax.annotation.* packages are now provided by a bundle with bundle symbolic name javax.annotation rather than com.springsource.javax.annotation
  • The javax.el.* packages are now provided by a bundle with bundle symbolic name javax.el rather than com.springsource.javax.el


  • Tomcat version is changed from 6.0.* to 7.0.*
  • Tomcat bundles symbolic names are changed from:
    • com.springsource.org.apache.catalina to com.springsource.org.apache.catalina.springsource
    • com.springsource.org.apache.catalina.ha to com.springsource.org.apache.catalina.ha.springsource
    • com.springsource.org.apache.catalina.tribes to com.springsource.org.apache.catalina.tribes.springsource
    • com.springsource.org.apache.coyote to com.springsource.org.apache.coyote.springsource
    • com.springsource.org.apache.el to com.springsource.org.apache.el.springsource
    • com.springsource.org.apache.jasper to than com.springsource.org.apache.jasper.springsource
    • com.springsource.org.apache.juli.extras to com.springsource.org.apache.juli.extras.springsource
  • Two additional bundles are provided:
    • com.springsource.org.apache.tomcat.api
    • com.springsource.org.apache.tomcat.util
  • JDT version is changed from 3.3.1.v_780_R33x to 3.6.1
  • JDT bundle symbolic name is changed from org.eclipse.jdt.core to com.springsource.org.eclipse.jdt.core.compiler.batch

Require-Bundle

The upgrade of Equinox to 3.7 made the processing of Require-Bundle stricter (see bug 343050). Matching attributes are now honoured. Previously matching attributes other than bundle-version were ignored.

So, for instance, the following header:

Require-Bundle: org.foo;version="[1,1.1)"

would often "work" because the version matching attribute was ignored. With Equinox 3.7 this will now cause a resolution failure. The fix is to use the correct attribute:

Require-Bundle: org.foo;bundle-version="[1,1.1)"

Back to the top