geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aaron Mulder" <ammul...@alumni.princeton.edu>
Subject Re: Help w/GShell GBean
Date Sat, 24 Jun 2006 11:16:33 GMT
So to get a GBean running in Geronimo, you need to write a deployment
plan for it.  If you look at the advanced plugin sample under
"Geronimo Deployment Plan", you'll see an example.

The plan should have a dependency element for any server module that
must be running in order for the GBean to work correctly (if it has
none, you're essentially saying that this module can run in a "server"
with literally nothing else running).  In the example, it requires
rmi-naming which is the 2nd root-most module in the hierarchy (after
j2ee-system).

It should also have a dependency element for each external JAR that
the GBean requires.  In the example it depends on the Quartz JAR.
This is how you should list all JAR dependencies.  (Normally any
Geronimo JAR dependencies are taken care of by the JARs used by the
parent server modules, which are also added to the classpath, but you
can list them individually if you like).

Then you create a gbean element like the one in the example but with
your class, a unique name of your choosing, and a port attribute for
your GBean (doesn't look like yours uses any references).

To deploy this, you can package the plan into a JAR with the GBean
classes (put the plan at META-INF/geronimo-service.xml), keep it as a
separate file alongside the JAR with the GBean classes, or if all the
GBean classes are in the JARs you listed as dependencies, you can just
deploy the plan "standalone" with no JAR.  The normal deploy tool (or
console deploy tool or Maven deploy plugin or etc.) will take the
JAR-including-plan, JAR-with-separate-plan, or plan-only as arguments
and deploy your service.

Before it will deploy, you'll need to manually install all the
dependency JARs into the repository, either by manual mkdir and file
copying, or using the common libraries screen in the console.

Once you get the GBean running, ping this thread again and we can get
it packaged as a plugin, which will mean the dependency JARs will be
downloaded and installed automatically and things like that.

Thanks,
     Aaron

On 6/23/06, Jason Dillon <jason@planet57.com> wrote:
> Can someone help explain what I need to do to get a GBean installed
> for GShell?
>
> I've looked over some of the other GBeans and created:
>
>      http://svn.apache.org/repos/asf/geronimo/sandbox/gshell/trunk/
> gshell-server/gshell-server-gbean/src/main/java/org/apache/geronimo/
> gshell/server/gbean/ShellServerDaemonGBean.java
>
> I think this code is okay, but any advise would be helpful.
>
> I've also looked over the Advanced Plugin Sample:
>
>      http://wiki.apache.org/geronimo/Advanced_Plugin_Sample
>
> But I am not sure how relevant any of this is.  There are a hand full
> of jars that need to be installed, and it would be nice to not have
> to have users manually install them.
>
> I'm looking for the best way to make it simple to install this
> component, which will allow (at the moment) Telnet-based access to a
> GShell running inside of Geronimo.
>
> I'd also like to add a new portlet to display some stats (like active
> shells) or to configure the port number and restart the component.
>
> Can someone drops some knowledge and/or point me at the latest
> relevant docs?
>
> Thanks,
>
> --jason
>

Mime
View raw message