...
Fill in the Geronimo Deployment Plan's fields with the following values (you want to know more why they're important? Read it on in the Geronimo documentation - http://cwiki.apache.org/GMOxDOC12/deployment-plans.html1.2 Documentation - Deployment plans):
- Group Id: sampleear
- Artifact Id: sample-ear
- Artifact Type: ear
...
- Group Id: sampleear
- Artifact Id: sample-ejb
- Artifact Type: ejb
Press Finish.
You should now have the following project structure.
Note |
---|
Remove ejbModule/META-INF/openejb-jar.xml file in the SampleEJB project as it leads to causes deployment issues. |
Create Dynamic Web Project
...
- Group Id: sampleear
- Artifact Id: sample-war
- Artifact Type: war
Press Finish.
You should now have the following project structure.
...
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
package sampleear; import java.io.IOException; import javax.ejb.EJB; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class MyServlet extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet { static final long serialVersionUID = 1L; @EJB RemoteBusinessInterface remoteBusinessIntf; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String name = request.getParameter("name"); if (name == null || name.length() == 0) { name = "anonymous"; } response.getWriter().write(remoteBusinessIntf.sayHello(name)); } } |
Create application.xml
Note |
---|
It appears that the file is not created by default and the application could not be deployed to any Java EE 5-compliant application server, Geronimo including. We need to define it manually. Don't know whether it's a bug in Eclipse or Geronimo Eclipse Plugin. |
Create application.xml deployment descriptor in EarContent/META-INF directory of the SampleEAR project as follows.
Code Block | |
---|---|
xml | xml |
borderStyle | solid | title | application.xml
<?xml version="1.0" encoding="ASCII"?>
<application xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:application="http://java.sun.com/xml/ns/javaee/application_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_5.xsd"
version="5">
<display-name>SampleEAR</display-name>
<module>
<ejb>SampleEJB.jar</ejb>
</module>
<module>
<web>
<web-uri>SampleWAR.war</web-uri>
<context-root>/SampleWAR</context-root>
</web>
</module>
</application>
|
Run it!
After a very hard 4-minute development it's time to give it a shot and see if it works. Not much time left so hurry up!
...
After a few seconds, Geronimo should be up and running with the enterprise application published. Open up the browser of your choice and go to http://localhost:8080/SampleWAR.
Type in any name you want, e.g. Jacek and press Press me! button.
...