Most of the issues you may find when running Geronimo will be at start up time; and most likely driven by some conflicting resources from the environment where Geronimo is set up.
Apache Geronimo v2.2 is Java EE certified. With that said, it will likely run on different JVM versions however the results may be unpredictable. Whenever possible use jdk 1.5 or above.
Another common problem related to Java is that, sometimes, certain environment variables are not defined at Java installation time. For instance, Geronimo requires JAVA_HOME and JRE_HOME to be defined before running the server. As a convenience, make sure you also add <JAVA_HOME>/bin directory to the system PATH.
About JVM size, try the following configuration to reset heap size if you are encountering an OutOfMemoryException Exception:
set JAVA_OPTS=-XX:PermSize=256m -XX:MaxPermSize=256m -Xms512m -Xmx1024m
The second most common startup issue is associated to port conflicts, check no other application is using or blocking Geronimo's default ports:
If you identify port conflicts you can use the <GERONIMO_HOME>/var/config/config-substitutions.properties to change any of these ports. From this configuration file you can also set a port offset and have all these increased by that amount.
Keep also in mind that personal firewalls, anti virus and spyware protection products may block some of these ports as well, even if you turn off such software sometimes those "rules" are still in effect.
Refer to the Initial configuration section for additional details on prerequisites and different configurations.
If your application contains its own version of Spring you might see some problems deploying or running the application on the Jetty assembly. The Jetty assembly is by default configured with Apache CXF as the JAX-WS provider. Apache CXF uses Spring to configure itself. Sometimes, the Spring version used by CXF conflicts with the Spring version supplied with your application. To prevent these conflicts add the following <hidden-classes> entry to the Geronimo deployment descriptor:
<hidden-classes> <filter>org.springframework</filter> <filter>META-INF/spring</filter> </hidden-classes>