##(see the SpecSpec for an explanation) ''Please check the status of this specification in Launchpad before editing it. If it is Approved, contact the Assignee or another knowledgeable person before making changes.'' ## Register at https://launchpad.net/distros/ubuntu/+specs * '''Launchpad entry''': https://features.launchpad.net/distros/ubuntu/+spec/javaee-project-glassfish * '''Packages affected''': == Summary == Integrate [[https://glassfish.dev.java.net|GlassFish Application Server]] into Ubuntu. GlassFish Application Server is built by the GlassFish community. It is an implementation of [[http://java.sun.com/javaee|Java Enterprise Edition 5 (Java EE 5)]]. == Rationale == This is being proposed to provide an implementation of Java EE 5 into Ubuntu. More information about Java EE 5 can be found at [[http://java.sun.com/javaee|Java EE]] site == Use cases == * Harry wants to use Java EE 5 to develop and deploy his web site. * Harry wants to use [[http://java.sun.com/products/servlet/|Servlets]] and/or [[http://java.sun.com/products/ejb/|Enterprise Java Beans Technology (EJB's)]] for his internet/intranet site. * Harry wants to build a Web 2.0 capable web site in Java. * Harry wants to use an Application Server to host his web site. == Scope == This specification only covers the integration of Java EE 5 SDK into Ubuntu. == Design == From GlassFish Application Server perspective, this is a packaging requirement as it already ships on multiple platforms like Red Hat, Solaris, Windows and Mac. GlassFish Application Server is is built using a combination of Apache Ant and Apache Maven. We will create debian packages for GlassFish Application Server to be delivered into multiverse. It requires Java SE component (sun-java5) to be installed. It will list Java SE 5 as a pre-requisite for installation. == Implementation == We currently create multiple rpm's after building [[https://glassfish.dev.java.net|GlassFish]]. These rpm's are for individual components like Java Message Queue (MQ) etc. We will mirror our existing rpm build mechanism to generate multiple debian packages. We will create an uber [[https://glassfish.dev.java.net|GlassFish]] debian package, that will list the multiple debian packages as its dependencies. In addition, we will list sun-java5 debian package as a dependency. A user will just need to get the uber [[https://glassfish.dev.java.net|GlassFish]] debian package to install SJSAS. GlassFish Application Server will follow the File System Based Hierarchy to place it's binaries and configuration files. We will also bundle the source for building the packages. === Code === === Data preservation and migration === == Unresolved issues == None as yet. == BoF agenda and discussion == == BoF Notes == First, we'll decide on how to get GlassFish into Multiverse - this doesn't require that we have full sources (such as Maven). We ''will'' go into Universe (or hopefully Main) afterward. This requires complete build dependencies, including Maven. Eclipse requires Maven also, in the new version. We would have to put a Maven 1 package into Universe. There are some plans to put Maven 2 into Ubuntu (version unknown), but no plans to put Maven 1 in - we'd have to do it ourselves. Our target for Fiesty is Multiverse. We will provide maven as a binary in the source package. We will also provide all our sources in the source package. For Multiverse, we will need to change to be FHS compliant when we install. (Such as putting things in /usr/share/java.) We should break things out into separate packages where appropriate. We'll discuss this further later. Harpreet will provide a debian source package. The deadline for this is Feb 8. Updates would be handled the same as JDK update releases. UR releases will go out over Ubuntu, others updates (non-UR releases) will go in new versions of Ubuntu. Future upgrades need to be in-place upgrades - no user invervention required. ---- CategorySpec