...
Excerpt |
---|
This topic will take you through plugin transform,export and import using Apache Geronimo admin administration console. |
Info | ||
---|---|---|
| ||
Application client referred in this tutorial is actually a Web Application Client. |
Table of Contents |
---|
Converting the application into a plugin via console
In this section, we will convert an existing applications into a plugin directly via console.
- Launch the Administrative console and Select Plugin portlet under Applications.
- Under Create Geronimo Plugin select jdbc/userds database pool from the drop-down menu.
- Once done select Export Plugin.
- On the next page keep all the values default and Select Saving Plugin Data.
- On the next screen select Done Export Plugin to convert the resource pool archive into a plugin directly.
- Similarly convert ApplicationClient and StatelessSessionEJB into plugins.
Exporting and importing plugins via console
We are using Apache Geronimo V2.1.1 2 for this tutorial.
Exporting the application as a plugin
- Launch the Administrative Administration console and Select Plugin portlet under Applications.
- Under Create Geronimo Plugin select jdbc/userds database pool from the drop down menu as shown in the figure.
- Once done select Export Plugin.
- On the next page keep all the values default and Select Saving Plugin Data.
- On the next screen select Export Plugin.
Info Starting from Geronimo V2.1.3, you can also choose to convert your applications within Geronimo with one-click instead of manual import and export. To do so, just click Done to convert the application into plugin directly.
- A window will pop-up suggesting to save the plugin. Select Ok OK.
- Similarly export ApplicationClient and StatelessSessionEJB as a plugin.
Create a custom repository from Geronimo Administrative Console
- Create a folder say
myplugins
in your hard drive. - Copy the exported plugins to this directory.
- Next create a geronimo-plugins.xml which will enlist all the plugins in our repository.
Code Block title geronimo-plugins.xml borderStyle solid <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <geronimo-plugin-list xmlns:ns2="http://geronimo.apache.org/xml/ns/attributes-1.2" xmlns="http://geronimo.apache.org/xml/ns/plugins-1.3"> <plugin> <name>DBPool Database Plugin</name> <category>Sample</category> <description>This plugin sets up a Derby database pool</description> <url>http://www.apache.org</url> <author>Ashish Jain</author> <license osi-approved="true">The Apache Software License, Version 2.0</license> <plugin-artifact> <module-id> <groupId>console.dbpool</groupId> <artifactId>jdbc%2Fuserds<<artifactId>jdbc_userds</artifactId> <version>1.0</version> <type>rar<<type>car</type> </module-id> <dependency> <groupId>org.apache.geronimo.configs</groupId> <artifactId>system-database</artifactId> <version>2.1.1</version> <type>car</type> </dependency> <dependency> <groupId>org.apache.geronimo.configs</groupId> <artifactId>transaction</artifactId> <type>car</type> </dependency> <dependency> <groupId>org.apache.geronimo.configs</groupId> <artifactId>j2ee-server</artifactId> <type>car</type> </dependency> <source-repository>http://repo1.maven.org/maven2/</source-repository> <source-repository>file:/C:/myplugins</source-repository> <obsoletes> <groupId>console.dbpool</groupId> <artifactId>jdbc%2Fuserds<<artifactId>jdbc_userds</artifactId> <type>rar<<type>car</type> </obsoletes> </plugin-artifact> </plugin> <plugin> <name>Stateless EJB Sample Plugin</name> <category>Sample</category> <description>This plugin installs an EJB Sample</description> <url>http://www.apache.org</url> <author>Ashish Jain</author> <license osi-approved="true">The Apache Software License, Version 2.0</license> <plugin-artifact> <module-id> <groupId>default</groupId> <artifactId>StatelessSessionEJB</artifactId> <version>1.0</version> <type>car</type> </module-id> <dependency> <groupId>console.dbpool</groupId> <artifactId>jdbc%2Fuserds<<artifactId>jdbc_userds</artifactId> <type>rar<<type>car</type> </dependency> <dependency> <groupId>org.apache.geronimo.configs</groupId> <artifactId>openejb</artifactId> <type>car</type> </dependency> <dependency> <groupId>org.apache.geronimo.configs</groupId> <artifactId>system-database</artifactId> <type>car</type> </dependency> <dependency> <groupId>org.apache.geronimo.configs</groupId> <artifactId>tomcat6</artifactId> <type>car</type> </dependency> <dependency> <groupId>org.apache.geronimo.configs</groupId> <artifactId>axis</artifactId> <type>car</type> </dependency> <dependency> <groupId>org.apache.geronimo.configs</groupId> <artifactId>axis2</artifactId> <type>car</type> </dependency> <dependency> <groupId>org.apache.geronimo.configs</groupId> <artifactId>j2ee-corba-yoko</artifactId> <type>car</type> </dependency> <dependency> <groupId>org.apache.geronimo.configs</groupId> <artifactId>openjpa</artifactId> <type>car</type> </dependency> <source-repository>file:/C:/myplugins</source-repository> <source-repository>http://repo1.maven.org/maven2/</source-repository> <obsoletes> <groupId>default</groupId> <artifactId>StatelessSessionEJB</artifactId> <type>car</type> </obsoletes> </plugin-artifact> </plugin> <plugin> <name>Application Client</name> <category>Sample</category> <description>This plugin installs an App Client Sample</description> <url>http://www.apache.org</url> <author>Ashish Jain</author> <license osi-approved="true">The Apache Software License, Version 2.0</license> <plugin-artifact> <module-id> <groupId>default</groupId> <artifactId>ApplicationClient</artifactId> <version>1.0</version> <type>car</type> </module-id> <dependency> <groupId>default</groupId> <artifactId>StatelessSessionEJB</artifactId> <version>1.0</version> <type>car</type> </dependency> <dependency> <groupId>org.apache.geronimo.configs</groupId> <artifactId>tomcat6</artifactId> <version>2.1.1</version> <type>car</type> </dependency> <dependency> <groupId>org.apache.geronimo.configs</groupId> <artifactId>axis</artifactId> <type>car</type> </dependency> <dependency> <groupId>org.apache.geronimo.configs</groupId> <artifactId>axis2</artifactId> <type>car</type> </dependency> <dependency> <groupId>org.apache.geronimo.configs</groupId> <artifactId>openejb</artifactId> <type>car</type> </dependency> <dependency> <groupId>org.apache.geronimo.configs</groupId> <artifactId>j2ee-corba-yoko</artifactId> <type>car</type> </dependency> <dependency> <groupId>org.apache.geronimo.configs</groupId> <artifactId>openjpa</artifactId> <type>car</type> </dependency> <dependency> <groupId>org.apache.geronimo.configs</groupId> <artifactId>jasper</artifactId> <type>car</type> </dependency> <source-repository>file:/C:/myplugins</source-repository> <source-repository>http://repo1.maven.org/maven2/</source-repository> <obsoletes> <groupId>default</groupId> <artifactId>ApplicationClient</artifactId> <type>car</type> </obsoletes> </plugin-artifact> </plugin> <default-repository>http://geronimo.apache.org/plugins/geronimo-2.1/</default-repository> </geronimo-plugin-list>
- Once this is done place the plugins in the myplugins repository similar to geronimo repository. For example place jdbc%2Fuserdsjdbc_userds-1.0.rarcar in C:\myplugins\console\dbpool\jdbc%2Fuserdsjdbc_userds\1.0, ApplicationClient-1.0.car in C:\myplugins\default\ApplicationClient\1.0 and StatelessSessionEJB-1.0.car in C:\myplugins\default\StatelessSessionEJB\1.0
- This completes our initial set up to create a custom repository using Geronimo Administrative console. Next Select the Plugin portlet and Select Add Repository as shown in the figure.
- Name the repository as myplugins and give the complete name as file:/C:/myplugins/*. Select *Add Repository.
This completes the addition of repository in geronimo.
Importing the plugin
- Before we start importing our exported plugins we should un-install the EJB jar, Application Client WAR and database pool from server. This can be down as shown in the subsequent figures.
- Once done select myplugins repository from the drop down list.
- Select Show plugins in selected repository.
- Now if we have observerd earlier that Application Client has StatelessSessionEJB as a dependency which in turn has a dependency on the database pool. So if we import our Application Client plugin. All the plugins should be imported automatically. Check the Application Client plugin and Select Install.
- Next screen will suggest the various artifacts associated with our Application Client plugin. Select Install.
- Once done the acknowledgement suggests that Databasepool as well as Stateless session EJB has been successfully installed.
Once this is done you can re-test the application functionality as suggested in Deploy and Run section.