Configuring GEP to publish POJO projects as shared library is illustrated using a Web application and adding a POJO project as a dependency. In order to create a new Web project and publish its dependency on a POJO project as shareld library, follow the steps given below:
- Create a HelloWorld Dynamic Web project as given in Developing a Hello World Web application.
- Create a POJO project as given below:
- Click File -> New -> Project.
- Select Java Project and click Next.
- Enter
CurrencyConverterPojo
Setup:
Sun Java v1.5.0_11 + Apache Geronimo v2.0.2
Eclipse 3.3.1 + WTP2.0.1 + Geronimo Eclipse Plugin v2.0
Step-1:
Follow the instructions at <link to be added here> to add Geronimo 2.0 server runtime into WTP, and to create & deploy an "HelloWorld" Dynamic Web project.
Step-2: Create a POJO project
...
- as the project name and click
...
- Finish
...
- . (If asked to switch to Java perspective, you
...
- may select
...
- No
...
- ).
- In
...
- Project Explorer
...
- view, right click on
...
- CurrencyConverterPojo, select New -> Class
...
- .
- Enter
...
myPackage
...
- as package name
...
- ,
CurrencyConverter
- ,
...
- as class name
...
- and click Finish
...
- .
- Replace the
...
- content of
CurrencyConverjer.java
with the contents
- content of
...
...
- .
- Press
...
- Ctrl + S
...
- to save changes.
...
- Add POJO project into web-app's Java Build Path as given below:
- In
...
- Project Explorer
...
- view, right click on
...
- HelloWorld
...
- , and click
...
- Properties
...
- .
- Click
...
- Java Build Path
...
- and then switch to
...
- Projects
...
- tab.
- Click
...
- Add
...
- . Select
...
- CurrencyConverterPojo
...
- as the project to be added
...
- and click OK
...
- . Click
...
- OK
...
- again.
- again.
Step-4:
...
- To use POJO inside web-app's index.jsp:
- Double click on HelloWorld -> WebContent -> index.jsp
...
- to open it in
...
- JSP editor.
- Add
...
- Add following imports before "<hmtl>" tag:
<%@page import="myPackage.CurrencyConverter"%>
<%@page import="java.math.BigDecimal"%>
...
- the following code before the </body> tag.
Code Block <br>100 USD == <%= myPackage.CurrencyConverter.dollarToRupees(new java.math.BigDecimal(100.0)) %>
- the following code before the </body> tag.
...
INR
- Press
- Ctrl + S
...
- to save the changes.
...
- Enable in-place shared library support in Server editor as given below:
- In
...
- Servers
...
- view, double click on
...
- Apache Geronimo v2.
...
- 1 Server at localhost to open the server editor.
- In the server editor, under
...
- Test Environment
...
- , select
...
- Enable in-place shared library support.
...
- Press Ctrl + S to save the changes.
- To add a dependency on org.apache.geronimo.configs/sharedlib//car in geronimo-web.xml
...
- :
- Double click on
...
- HelloWorld -> Web Content -> WEB-INF -> *geronimo-web.xml
...
- * to open it in Geronimo Deployment Plan Editor.
- In
...
- General
...
- tab, select
...
- Add a run time dependency to Geronimo's shared library
...
- .
- Press
- .
...
- Ctrl+S
...
- to save the file.
Note In
- to save the file.
...
Source
...
tab, a dependency on geronimo/sharedlib//car would be added as below:
...
Code Block <sys:dependency>
...
<sys:groupId>geronimo</sys:groupId>
...
<sys:artifactId>sharedlib</sys:artifactId>
...
<sys:type>car</sys:type>
...
</sys:dependency>
...
This is due to a current bug in Geronimo Deployment Plan Editors
...
. Change <sys:
...
groupId> from geronimo to org.apache.geronimo.
...
configs and press Ctrl + S
...
to save the changes
...
.
- To run the HelloWorld application:
- Right click on HelloWorld, click Run As -> Run on Server.
- Select Apache Geronimo v2.1 Server at localhost and click Finish. This will run the application and the welcome page will open in a browser inside eclipse.
Use the steps below to verify that the dependency on POJO project is indeed added as a shared library:
- Verify that a file
HelloWorld.eclipse.jar
is created under<geronimo_home>/var/shared/lib
. - Verify that the
Manifest.mf
file inHelloWorld.eclipse.jar
contains the following:Code Block Manifest-Version: 1.0 Class-Path:file:/E:/IDEworkspaces/m2eclipseSharedLib/CurrencyConverte rPojo/bin/
Note The file path used in the manifest Class-Path may differ based on the location of your workspace directory.