You can use a tool like netstat to check which ports programs are listening on at the moment and unusable by the server instance.
You can find which ports the server instance will use by the config.substitutions.properties entries.
Very often I run into Geronimo startup failure with a BindException since some port or the other is in use. Then I change the PortOffset to get going. How do I figure which port/address is resulting in the exception?