Difference: GeronimoNotes (1 vs. 26)

Revision 2629 Jan 2008 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 81 to 81
 Code in modules/geronimo-deploy-tool/. This is referenced by configs/online-deployer/ that builds a "car" file.

Finally assembled in e.g. assemblies/geronimo-jetty-j2ee/. See src/main/assembly/bin.xml.

Added:
>
>

Misc

http://maven.apache.org/guides/mini/guide-mirror-settings.html

Revision 2517 Aug 2007 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 8 to 8
 

GBean

Changed:
<
<
Geronimo is modular; it consists of a kernel and a set of components that implement the features needed to implement the J2EE specification. GBean (short for "Geronimo Bean") is the kernel-component interface. There's no GBean interface per se, but each GBean has a corresponding
>
>
Geronimo is modular; it consists of a kernel and a set of components that implement the features needed to implement the J2EE specification. GBean (short for "Geronimo Bean") is the kernel-component interface. There's no GBean interface per se, but each GBean has a corresponding
 GBeanInfo object that describes the GBean and tells the kernel how to interact with it. Some GBeans implement GBeanLifecycle which allows them to get called when lifecycle events (start, stop, fail) happen. The source code for the GBeanTest class shows how a GBean is used.
Line: 21 to 21
 
Changed:
<
<
>
>
  • JSR-77 - a standard model for managing the J2EE Platform - home, overview
 
  • JSR-88 - J2EE Application Deployment - home,
  • DependencyManager
  • ConfigurationManager
Line: 68 to 68
 MAVEN_OPTS="-Xms256m -Xmx512m -XX:PermSize=64m -XX:MaxPermSize=256m" mvn -o
Added:
>
>
To make the build go faster by skipping the unit tests add:

-Dmaven.test.skip=true -Dmaven.itest.skip=true
 

Command-line tools

For example, the deployer.

Revision 2403 Aug 2007 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 42 to 42
 

Deployment

Changed:
<
<
Runs using a standalone application jar called target/bin/deployer.jar. The startup class specified in MANIFEST.MF is org.apache.geronimo.cli.deployer.DeployerCLI.
>
>
Runs using a standalone application jar called target/bin/deployer.jar. The startup class specified in MANIFEST.MF is org.apache.geronimo.cli.deployer.DeployerCLI. DeployerCLI calls MainConfigurationBootstrapper.main() which calls DeployTool.execute().
 

EJB

Revision 2303 Aug 2007 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 42 to 42
 

Deployment

Changed:
<
<
Runs using a standalone application jar called target/bin/deployer.jar. The startup class specified in MANIFEST.MF is org.apache.geronimo.deployment.cli.DeployTool. DeployTool parses the command line parameters and delegates to org.apache.geronimo.deployment.cli.ServerConnection to do most of the work. ServerConnection starts up a small kernel and loads a configuration into that kernel. Among the gbeans loaded into that kernel is one that wraps the org.apache.geronimo.deployment.Deployer class. Deployer picks apart the jar file and builds the various bits and pieces.

If the thing being deployed is an ear file then Deployer will end up calling org.apache.geronimo.j2ee.deployment.EarConfigBuilder.

wiki page here: http://wiki.apache.org/geronimo/Deployment

j2ee xml descriptor files (and their geronimo counterparts) are unmarshalled into java classes using apache xmlbeans (http://xml.apache.org/xmlbeans).

For resource adapters, the ConnectorModuleBuilder class builds the configuration that gets deployed at run-time.

Stack trace at startup (setting a RA parameter), heavily edited to remove the gbean/mbean cruft:

        at skeleton.ra.spread.AdapterImpl.setConfigParameter(AdapterImpl.java:84)
        at org.apache.geronimo.connector.ResourceAdapterWrapper.setAttribute(ResourceAdapterWrapper.java:130)
        at mx4j.server.MX4JMBeanServer.registerMBean(MX4JMBeanServer.java:729)
        at org.apache.geronimo.kernel.Kernel.loadGBean(Kernel.java:255)
        at org.apache.geronimo.kernel.config.Configuration.doStart(Configuration.java:176)
        at org.apache.geronimo.gbean.jmx.GBeanMBean.doStart(GBeanMBean.java:593)
        at org.apache.geronimo.gbean.jmx.AbstractManagedObject.startRecursive(AbstractManagedObject.java:303)
        at mx4j.server.MX4JMBeanServer.invoke(MX4JMBeanServer.java:1079)
        at org.apache.geronimo.gbean.jmx.AbstractManagedObject.startRecursive(AbstractManagedObject.java:310)
        at org.apache.geronimo.kernel.Kernel.startRecursiveGBean(Kernel.java:275)
        at org.apache.geronimo.system.main.Daemon.main(Daemon.java:137)

In 1.2, the cli code is in the modules/geronimo-deploy-tool directory. It ends up in the lib/ directory and the repository, but the version in lib seems to take precedence. If you're making changes you can build in modules/geronimo-deploy-tool then copy the jar from the maven repo to the target lib directory, i.e.

$ cp ~/.m2/repository/org/apache/geronimo/modules/geronimo-deploy-tool/1.2-SNAPSHOT/geronimo-deploy-tool-1.2-SNAPSHOT.jar ~/target/lib/
>
>
Runs using a standalone application jar called target/bin/deployer.jar. The startup class specified in MANIFEST.MF is org.apache.geronimo.cli.deployer.DeployerCLI.
 

EJB

Revision 2221 May 2007 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 96 to 96
 As of Oct 2006, the dev team has switched over to Maven2. A command-line build invocation that works for me is:


Changed:
<
<
MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=128m" mvn -o
>
>
MAVEN_OPTS="-Xms256m -Xmx512m -XX:PermSize=64m -XX:MaxPermSize=256m" mvn -o
 

Command-line tools

Revision 2101 Mar 2007 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 98 to 98
 
MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=128m" mvn -o 
\ No newline at end of file
Added:
>
>

Command-line tools

For example, the deployer.

Code in modules/geronimo-deploy-tool/. This is referenced by configs/online-deployer/ that builds a "car" file.

Finally assembled in e.g. assemblies/geronimo-jetty-j2ee/. See src/main/assembly/bin.xml.

 \ No newline at end of file

Revision 2028 Feb 2007 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 68 to 68
 
Added:
>
>
In 1.2, the cli code is in the modules/geronimo-deploy-tool directory. It ends up in the lib/ directory and the repository, but the version in lib seems to take precedence. If you're making changes you can build in modules/geronimo-deploy-tool then copy the jar from the maven repo to the target lib directory, i.e.

$ cp ~/.m2/repository/org/apache/geronimo/modules/geronimo-deploy-tool/1.2-SNAPSHOT/geronimo-deploy-tool-1.2-SNAPSHOT.jar ~/target/lib/
 

EJB

Geronimo embeds OpenEJB as its EJB container, so there's a lot of good info at http://www.openejb.org/ that's also relevant to Geronimo, for example http://www.openejb.org/geronimo.html and http://openejb.codehaus.org/hello-world.html .

Revision 1927 Oct 2006 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 84 to 84
  Build openejb first, then geronimo.
Added:
>
>

Building

As of Oct 2006, the dev team has switched over to Maven2. A command-line build invocation that works for me is:

MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=128m" mvn -o 

Revision 1816 May 2005 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 42 to 42
 

Deployment

Changed:
<
<
Runs using a standalone application jar called target/bin/deployer.jar. The startup class specified in MANIFEST.MF is org.apache.geronimo.deployment.cli.DeployTool. DeployTool parses the command line parameters and delegates to org.apache.geronimo.deployment.cli.ServerConnection to do most of the work.
>
>
Runs using a standalone application jar called target/bin/deployer.jar. The startup class specified in MANIFEST.MF is org.apache.geronimo.deployment.cli.DeployTool. DeployTool parses the command line parameters and delegates to org.apache.geronimo.deployment.cli.ServerConnection to do most of the work. ServerConnection starts up a small kernel and loads a configuration into that kernel. Among the gbeans loaded into that kernel is one that wraps the org.apache.geronimo.deployment.Deployer class. Deployer picks apart the jar file and builds the various bits and pieces.

If the thing being deployed is an ear file then Deployer will end up calling org.apache.geronimo.j2ee.deployment.EarConfigBuilder.

  wiki page here: http://wiki.apache.org/geronimo/Deployment

Revision 1716 May 2005 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 42 to 42
 

Deployment

Added:
>
>
Runs using a standalone application jar called target/bin/deployer.jar. The startup class specified in MANIFEST.MF is org.apache.geronimo.deployment.cli.DeployTool. DeployTool parses the command line parameters and delegates to org.apache.geronimo.deployment.cli.ServerConnection to do most of the work.
 wiki page here: http://wiki.apache.org/geronimo/Deployment

j2ee xml descriptor files (and their geronimo counterparts) are unmarshalled into java classes using apache xmlbeans (http://xml.apache.org/xmlbeans).

Revision 1601 Oct 2004 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 75 to 75
 
  cvs -d :pserver:anonymous@cvs.openejb.codehaus.org:/home/projects/openejb/scm login
  (no password)

Changed:
<
<
cvs -d :pserver:anonymous@cvs.openejb.codehaus.org:/home/projects/openejb/scm
>
>
cvs -d :pserver:anonymous@cvs.openejb.codehaus.org:/home/projects/openejb/scm cvs co openejb
 

Build openejb first, then geronimo.

Revision 1526 Aug 2004 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 48 to 48
  For resource adapters, the ConnectorModuleBuilder class builds the configuration that gets deployed at run-time.
Deleted:
<
<
http://nagoya.apache.org/jira/browse/GERONIMO-262 - NPE while deploying trivial RA
 Stack trace at startup (setting a RA parameter), heavily edited to remove the gbean/mbean cruft:
		  at skeleton.ra.spread.AdapterImpl.setConfigParameter(AdapterImpl.java:84)

Revision 1419 Jul 2004 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 14 to 14
  GBeans are tracked using an MBeanServer (an MBean directory?).
Added:
>
>
According to mailing list traffic one advantage of GBeans over MBeans is that GBean method invocation is much faster.
 

Misc

Line: 71 to 73
  Geronimo's build process depends on downloading a copy of openejb from some site somewhere, and sometimes geronimo and openejb change simultaneously in ways that need to be closely coordinated. In that case you'll want to build openejb from source so that geronimo's build process can use your local openejb.
Changed:
<
<
openejb's web site points to old source code, but newer code seems to be located at:
>
>
openejb's web site points to old source code, but according to http://hausmates.codehaus.org/projectinfo newer code seems to be located at:
 
  cvs -d :pserver:anonymous@cvs.openejb.codehaus.org:/home/projects/openejb/scm login
  (no password)

Revision 1316 Jul 2004 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 63 to 63
  at org.apache.geronimo.system.main.Daemon.main(Daemon.java:137)

Added:
>
>

EJB

Geronimo embeds OpenEJB as its EJB container, so there's a lot of good info at http://www.openejb.org/ that's also relevant to Geronimo, for example http://www.openejb.org/geronimo.html and http://openejb.codehaus.org/hello-world.html .

Geronimo's build process depends on downloading a copy of openejb from some site somewhere, and sometimes geronimo and openejb change simultaneously in ways that need to be closely coordinated. In that case you'll want to build openejb from source so that geronimo's build process can use your local openejb.

openejb's web site points to old source code, but newer code seems to be located at:

  cvs -d :pserver:anonymous@cvs.openejb.codehaus.org:/home/projects/openejb/scm login
  (no password)
  cvs -d :pserver:anonymous@cvs.openejb.codehaus.org:/home/projects/openejb/scm 

Build openejb first, then geronimo.

Revision 1212 Jul 2004 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 26 to 26
 

Startup

Changed:
<
<
Needs to be run from the target directory (classpaths are relative to that dir). Runs using a standalone application jar called server.jar. The startup class specified in MANIFEST.MF is o.a.g.system.main.Daemon. The Daemon is a command-line wrapper around o.a.g.kernel.Kernel. The daemon first unserializes the META-INF/config.ser from server.jar using Configuration.loadGMBeanState(). The format of config.ser is a leading int that indicates how many attribute name/value pairs follow, then a leading int that indicates how many setReferencePatterns() parameter pairs follow:
>
>
Runs using a standalone application jar called target/bin/server.jar. The startup class specified in MANIFEST.MF is o.a.g.system.main.Daemon. The Daemon is a command-line wrapper around o.a.g.kernel.Kernel. The daemon first unserializes the META-INF/config.ser from server.jar using Configuration.loadGMBeanState(). The format of config.ser is a leading int that indicates how many attribute name/value pairs follow, then a leading int that indicates how many setReferencePatterns() parameter pairs follow:
 
		  int attributeCount = ois.readInt();
		  for (int i = 0; i < attributeCount; i++) {

Revision 1110 Jul 2004 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 18 to 18
 
Added:
>
>
  • BootstrapContext
 
  • JSR-77 - a standard model for managing the J2EE Platform - home, overview
  • JSR-88 - J2EE Application Deployment - home,
  • DependencyManager

Revision 1010 Jul 2004 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 9 to 9
 

GBean

Geronimo is modular; it consists of a kernel and a set of components that implement the features needed to implement the J2EE specification. GBean (short for "Geronimo Bean") is the kernel-component interface. There's no GBean interface per se, but each GBean has a corresponding

Changed:
<
<
GBeanInfo object that describes the GBean and tells the kernel how to interact with it.
>
>
GBeanInfo object that describes the GBean and tells the kernel how to interact with it. Some GBeans implement GBeanLifecycle which allows them to get called when lifecycle events (start, stop, fail) happen.
 The source code for the GBeanTest class shows how a GBean is used.

GBeans are tracked using an MBeanServer (an MBean directory?).

Line: 47 to 47
  http://nagoya.apache.org/jira/browse/GERONIMO-262 - NPE while deploying trivial RA
Changed:
<
<
-- TobyCabot - 30 Jun 2004
>
>
Stack trace at startup (setting a RA parameter), heavily edited to remove the gbean/mbean cruft:
		  at skeleton.ra.spread.AdapterImpl.setConfigParameter(AdapterImpl.java:84)
		  at org.apache.geronimo.connector.ResourceAdapterWrapper.setAttribute(ResourceAdapterWrapper.java:130)
		  at mx4j.server.MX4JMBeanServer.registerMBean(MX4JMBeanServer.java:729)
		  at org.apache.geronimo.kernel.Kernel.loadGBean(Kernel.java:255)
		  at org.apache.geronimo.kernel.config.Configuration.doStart(Configuration.java:176)
		  at org.apache.geronimo.gbean.jmx.GBeanMBean.doStart(GBeanMBean.java:593)
		  at org.apache.geronimo.gbean.jmx.AbstractManagedObject.startRecursive(AbstractManagedObject.java:303)
		  at mx4j.server.MX4JMBeanServer.invoke(MX4JMBeanServer.java:1079)
		  at org.apache.geronimo.gbean.jmx.AbstractManagedObject.startRecursive(AbstractManagedObject.java:310)
		  at org.apache.geronimo.kernel.Kernel.startRecursiveGBean(Kernel.java:275)
		  at org.apache.geronimo.system.main.Daemon.main(Daemon.java:137)

Revision 908 Jul 2004 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 20 to 20
 
Added:
>
>
  • DependencyManager
  • ConfigurationManager
 

Startup

Changed:
<
<
Needs to be run from the target directory (classpaths are relative to that dir). Runs using a standalone application jar called server.jar. The startup class specified in MANIFEST.MF is o.a.g.system.main.Daemon. The Daemon is a command-line wrapper around o.a.g.kernel.Kernel.
>
>
Needs to be run from the target directory (classpaths are relative to that dir). Runs using a standalone application jar called server.jar. The startup class specified in MANIFEST.MF is o.a.g.system.main.Daemon. The Daemon is a command-line wrapper around o.a.g.kernel.Kernel. The daemon first unserializes the META-INF/config.ser from server.jar using Configuration.loadGMBeanState(). The format of config.ser is a leading int that indicates how many attribute name/value pairs follow, then a leading int that indicates how many setReferencePatterns() parameter pairs follow:
		  int attributeCount = ois.readInt();
		  for (int i = 0; i < attributeCount; i++) {
				gbean.setAttribute((String) ois.readObject(), ois.readObject());
		  }
		  int endpointCount = ois.readInt();
		  for (int i = 0; i < endpointCount; i++) {
				gbean.setReferencePatterns((String) ois.readObject(), (Set) ois.readObject());
		  }
 

Deployment

wiki page here: http://wiki.apache.org/geronimo/Deployment

Changed:
<
<
j2ee xml descriptor files (and their geronimo counterparts) are marshalled into java classes using apache xmlbeans (http://xml.apache.org/xmlbeans).
>
>
j2ee xml descriptor files (and their geronimo counterparts) are unmarshalled into java classes using apache xmlbeans (http://xml.apache.org/xmlbeans).

For resource adapters, the ConnectorModuleBuilder class builds the configuration that gets deployed at run-time.

  http://nagoya.apache.org/jira/browse/GERONIMO-262 - NPE while deploying trivial RA

Revision 808 Jul 2004 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 31 to 31
  j2ee xml descriptor files (and their geronimo counterparts) are marshalled into java classes using apache xmlbeans (http://xml.apache.org/xmlbeans).
Added:
>
>
http://nagoya.apache.org/jira/browse/GERONIMO-262 - NPE while deploying trivial RA
  -- TobyCabot - 30 Jun 2004

Revision 707 Jul 2004 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaNotes"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 25 to 25
  Needs to be run from the target directory (classpaths are relative to that dir). Runs using a standalone application jar called server.jar. The startup class specified in MANIFEST.MF is o.a.g.system.main.Daemon. The Daemon is a command-line wrapper around o.a.g.kernel.Kernel.
Added:
>
>

Deployment

wiki page here: http://wiki.apache.org/geronimo/Deployment

j2ee xml descriptor files (and their geronimo counterparts) are marshalled into java classes using apache xmlbeans (http://xml.apache.org/xmlbeans).

  -- TobyCabot - 30 Jun 2004

Revision 602 Jul 2004 - TWikiGuest

Line: 1 to 1
Changed:
<
<
META TOPICPARENT name="JavaTips"
>
>
META TOPICPARENT name="JavaNotes"
 The Apache group's j2ee server is called Geronimo. Here are some notes.

The home page is http://geronimo.apache.org/ and there's a wiki at http://wiki.apache.org/geronimo/.

Revision 501 Jul 2004 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaTips"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 6 to 6
 

Concepts

Added:
>
>

GBean

Geronimo is modular; it consists of a kernel and a set of components that implement the features needed to implement the J2EE specification. GBean (short for "Geronimo Bean") is the kernel-component interface. There's no GBean interface per se, but each GBean has a corresponding GBeanInfo object that describes the GBean and tells the kernel how to interact with it. The source code for the GBeanTest class shows how a GBean is used.

GBeans are tracked using an MBeanServer (an MBean directory?).

Misc

 
Changed:
<
<
  • MBean
>
>
 
  • JSR-77 - a standard model for managing the J2EE Platform - home, overview
  • JSR-88 - J2EE Application Deployment - home,

Revision 401 Jul 2004 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaTips"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Added:
>
>
The home page is http://geronimo.apache.org/ and there's a wiki at http://wiki.apache.org/geronimo/.
 

Concepts

Revision 301 Jul 2004 - TobyCabot

Line: 1 to 1
 
META TOPICPARENT name="JavaTips"
The Apache group's j2ee server is called Geronimo. Here are some notes.
Line: 7 to 7
 
Added:
>
>
  • JSR-77 - a standard model for managing the J2EE Platform - home, overview
  • JSR-88 - J2EE Application Deployment - home,
 

Startup

Revision 201 Jul 2004 - TobyCabot

Line: 1 to 1
Added:
>
>
META TOPICPARENT name="JavaTips"
 The Apache group's j2ee server is called Geronimo. Here are some notes.

Concepts

Revision 130 Jun 2004 - TobyCabot

Line: 1 to 1
Added:
>
>
The Apache group's j2ee server is called Geronimo. Here are some notes.

Concepts

Startup

Needs to be run from the target directory (classpaths are relative to that dir). Runs using a standalone application jar called server.jar. The startup class specified in MANIFEST.MF is o.a.g.system.main.Daemon. The Daemon is a command-line wrapper around o.a.g.kernel.Kernel.

-- TobyCabot - 30 Jun 2004

View topic | History: r26 < r25 < r24 < r23 | More topic actions...
Copyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding The Caboteria? Send feedback