HomeDocumentation > Configuring and administering > Configuring and administering the Apache Geronimo Server > Customizing server assemblies > Assembling a server via Console

This tutorial illustrates how to assemble a custom server by using an application-centric approach from console. By using this approach, our application will define the contents of the server. Custom server will be built around our application and will include only the components required by our application. You can use an existing tutorial from the tutorial section to develop a sample application. See the Stateless Session Bean tutorial for application development and deployment. This topic will assemble a custom server which will only include functional components required by the application.

The application client referred to in this tutorial is actually a Web Application Client.

Identifying the functional components required by our server

To use an application-centric approach, you need to find out the various dependencies required by your application. This is the major work required for assembling a custom server, which has been simplified by the Geronimo administration console.

  1. To assemble a server from existing instance of Geronimo, you need to include the Geronimo Plugin Group :: Framework plugin group, which is the framework of a functional server and pre-selected by default . See the Plugin Group section for more information about Geronimo Plugin Group :: Framework.
  2. To identify the application plugins to be included, find out the various dependencies required by your application. For example, for the sample application developed from the Stateless Session Bean tutorial, include the following plugins:
    1. Web archive plugin default/ApplicationClient/1.0/car
    2. StatelessSessionEJB plugin default/StatelessSessionEJB/1.0/car
    3. Datasource pool plugin console/dbpool/jdbc_userds/1.0/car
      For information about how to get these plugins, See Converting applications into plugins using the Administration Console.
  3. To create a new database from the administration console, you need to include the plugin group Geronimo Plugins, Console :: System Database(Tomcat), which includes console interface plugin, embeded Derby database plugin, and required resource adapter plugins.
    This completes the identification of all the functional component(dependencies) required by our application centric custom server.

Assembling a custom server

  1. Launch the administration console and select Plugins under Applications.

  2. Select Application Centric as the Custom Assembly Mode and then click Assemble a server.

  3. Name the artifacts as suggested: groupId as test, artifactId as TestServer and format as zip or so.

  4. The next step is to select the functional components that you identified. Select Geronimo Plugin Group :: Framework, WAR, EJB and database pool plugins. You also have to select Geronimo Plugins, Console :: System Database(Tomcat) because our application uses derby database and you have to create the database from console. Because application WAR, EJB and database pool plugins are dependent with each other, you are free to choose just one of them and therefore the rest of its dependencies will be assembled automatically.
    You can also choose the Expert mode to select individual plugins instead of plugin groups.
  5. The final list of plugins/plugin groups you select should be follows:
    • org.apache.geronimo.plugingroups/framework/2.2-SNAPSHOT/car
    • org.apache.geronimo.plugins/sysdb-console-tomcat/2.2-SNAPSHOT/car
    • default/StatelessSessionEJB/1.0/car
  6. After this is done, click Assemble.

  7. On the next screen, each artifact and its associated properties will be displayed. Click Install.

  8. After this is done, you will receive a confirmation message suggesting the success or failure of the server assembly. It will also enlist the location of the custom server assembly, which by default is <GERONIMO_HOME>/var/temp/assembly.
  9. The server will be named as TestServer-1.0-bin.zip. In the <GERONIMO_HOME>/var/temp directory, you will find the package of the newly assembled server with minimizing footprint and the fewest components you need. Unzip it and start the server.
  10. Since our Stateless Session Bean uses userdbs, you need to create database and tables as suggested in the tutorial.
    This completes our illustration for custom server assembly.