You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by Matt Hogstrom <ma...@hogstrom.org> on 2006/04/28 01:08:54 UTC

Some observations from a user perspective on deploying an application

All,

I was looking at Aaron's "Guiding Principals" doc and rmembered I meant to post some thoughts on the 
"Geronimo Experience."

I've been working on deploying daytrader and have noted a couple of things that I think are relevant 
from a user perspective.  Specifically these around the repository.

For my testing I've been using DB2 as the database as I wanted to use a commercial database that was 
external to the AppServer.  The same story is true for MySQL, PostGres, etc.

In order to deploy a dependent jar into the repo you have to add the group, artifact and version 
information.  So in the case of DB2 there are two jars you have to add.  They are the db2jcc.jar and 
the db2jcc_license_cu.jar.  Putting them into the repo I did the following:

mkdir -p ./geronimo-1.1-SNAPSHOT/repository/com/ibm/db2/db2jcc_license_cu/8.1/

mkdir -p ./geronimo-1.1-SNAPSHOT/repository/com/ibm/db2/db2jcc/8.1/

Then I copied the jars into the repo:

cp db2jcc.jar ./geronimo-1.1-SNAPSHOT/repository/com/ibm/db2/db2jcc/8.1/db2jcc-8.1.jar

cp db2jcc_license_cu.jar 
./geronimo-1.1-SNAPSHOT/repository/com/ibm/db2/db2jcc_license_cu/8.1/db2jcc_license_cu-8.1.jar

For the most part this is certainly doable but is actually pretty tedious.  Also, following the 
convention, the artifactname and the version are duplicated in the actual deployed jar; seems a bit 
redundant.

I wanted to validate that my usage is correct per the original design.  If it is I think we're 
probably missing one of the points in Aaron's doc about the server being simple to use.  At least 
this is not intuitive.

If my understanding is wrong or there is a better suggestion on how to handle this please post back. 
  I'm working on the documentation for how to deploy DayTrader.  Since this is a very visible use 
case for the server I want to make sure this is the direction we are going to recommend for users.

Perhaps another approach is to use the shared lib that was recently added (I have to go back through 
the e-mails to see how to set it up).  I think that paradigm is more in line with Tomcat users as 
well as other AppServers.

Thoughts?

Matt

Re: Some observations from a user perspective on deploying an application

Posted by Matt Hogstrom <ma...@hogstrom.org>.
Aaron,

The console works great.  For single installs this is a great way to do it.  I'm more accustomed to 
not using the GUI so perhaps I should reconsider.  For automated installs I imagine people are 
pretty much left to scripts to define and populate the repository.

I think the repo is still fairly redundant but if its an issue we can address that later on.

Aaron Mulder wrote:
> Do you want to try adding the files to the repository using the common
> libraries area of the console and see if you think that's more
> straightforward?  For example, it should suggest the different name
> parts to use.  We could probably stand to make that page a little more
> informative, so any suggestions you have would be great.
> 
> Thanks,
>     Aaron
> 
> On 4/27/06, Matt Hogstrom <ma...@hogstrom.org> wrote:
> 
>>All,
>>
>>I was looking at Aaron's "Guiding Principals" doc and rmembered I meant to post some thoughts on the
>>"Geronimo Experience."
>>
>>I've been working on deploying daytrader and have noted a couple of things that I think are relevant
>>from a user perspective.  Specifically these around the repository.
>>
>>For my testing I've been using DB2 as the database as I wanted to use a commercial database that was
>>external to the AppServer.  The same story is true for MySQL, PostGres, etc.
>>
>>In order to deploy a dependent jar into the repo you have to add the group, artifact and version
>>information.  So in the case of DB2 there are two jars you have to add.  They are the db2jcc.jar and
>>the db2jcc_license_cu.jar.  Putting them into the repo I did the following:
>>
>>mkdir -p ./geronimo-1.1-SNAPSHOT/repository/com/ibm/db2/db2jcc_license_cu/8.1/
>>
>>mkdir -p ./geronimo-1.1-SNAPSHOT/repository/com/ibm/db2/db2jcc/8.1/
>>
>>Then I copied the jars into the repo:
>>
>>cp db2jcc.jar ./geronimo-1.1-SNAPSHOT/repository/com/ibm/db2/db2jcc/8.1/db2jcc-8.1.jar
>>
>>cp db2jcc_license_cu.jar
>>./geronimo-1.1-SNAPSHOT/repository/com/ibm/db2/db2jcc_license_cu/8.1/db2jcc_license_cu-8.1.jar
>>
>>For the most part this is certainly doable but is actually pretty tedious.  Also, following the
>>convention, the artifactname and the version are duplicated in the actual deployed jar; seems a bit
>>redundant.
>>
>>I wanted to validate that my usage is correct per the original design.  If it is I think we're
>>probably missing one of the points in Aaron's doc about the server being simple to use.  At least
>>this is not intuitive.
>>
>>If my understanding is wrong or there is a better suggestion on how to handle this please post back.
>>  I'm working on the documentation for how to deploy DayTrader.  Since this is a very visible use
>>case for the server I want to make sure this is the direction we are going to recommend for users.
>>
>>Perhaps another approach is to use the shared lib that was recently added (I have to go back through
>>the e-mails to see how to set it up).  I think that paradigm is more in line with Tomcat users as
>>well as other AppServers.
>>
>>Thoughts?
>>
>>Matt
>>
> 
> 
> 
> 

Re: Some observations from a user perspective on deploying an application

Posted by Aaron Mulder <am...@alumni.princeton.edu>.
Do you want to try adding the files to the repository using the common
libraries area of the console and see if you think that's more
straightforward?  For example, it should suggest the different name
parts to use.  We could probably stand to make that page a little more
informative, so any suggestions you have would be great.

Thanks,
    Aaron

On 4/27/06, Matt Hogstrom <ma...@hogstrom.org> wrote:
> All,
>
> I was looking at Aaron's "Guiding Principals" doc and rmembered I meant to post some thoughts on the
> "Geronimo Experience."
>
> I've been working on deploying daytrader and have noted a couple of things that I think are relevant
> from a user perspective.  Specifically these around the repository.
>
> For my testing I've been using DB2 as the database as I wanted to use a commercial database that was
> external to the AppServer.  The same story is true for MySQL, PostGres, etc.
>
> In order to deploy a dependent jar into the repo you have to add the group, artifact and version
> information.  So in the case of DB2 there are two jars you have to add.  They are the db2jcc.jar and
> the db2jcc_license_cu.jar.  Putting them into the repo I did the following:
>
> mkdir -p ./geronimo-1.1-SNAPSHOT/repository/com/ibm/db2/db2jcc_license_cu/8.1/
>
> mkdir -p ./geronimo-1.1-SNAPSHOT/repository/com/ibm/db2/db2jcc/8.1/
>
> Then I copied the jars into the repo:
>
> cp db2jcc.jar ./geronimo-1.1-SNAPSHOT/repository/com/ibm/db2/db2jcc/8.1/db2jcc-8.1.jar
>
> cp db2jcc_license_cu.jar
> ./geronimo-1.1-SNAPSHOT/repository/com/ibm/db2/db2jcc_license_cu/8.1/db2jcc_license_cu-8.1.jar
>
> For the most part this is certainly doable but is actually pretty tedious.  Also, following the
> convention, the artifactname and the version are duplicated in the actual deployed jar; seems a bit
> redundant.
>
> I wanted to validate that my usage is correct per the original design.  If it is I think we're
> probably missing one of the points in Aaron's doc about the server being simple to use.  At least
> this is not intuitive.
>
> If my understanding is wrong or there is a better suggestion on how to handle this please post back.
>   I'm working on the documentation for how to deploy DayTrader.  Since this is a very visible use
> case for the server I want to make sure this is the direction we are going to recommend for users.
>
> Perhaps another approach is to use the shared lib that was recently added (I have to go back through
> the e-mails to see how to set it up).  I think that paradigm is more in line with Tomcat users as
> well as other AppServers.
>
> Thoughts?
>
> Matt
>

Re: Some observations from a user perspective on deploying an application

Posted by Hernan Cunico <hc...@gmail.com>.
Hi All,
today I got my first, and mostly functional, G 1.1 build and succeeded in deploying my first DB2 
data source through the console. I choose DB2 because of the multiple jars.

My impression at the end was, it is even more complicated than the previous version. The new naming 
convention is not exactly "charming"! :)

I think it is most likely that copying the jars to the repo will be a "command line" task since you 
already have to change (version) the name of the jars. Once you have the drivers in place then you 
move to the console and try to deploy the data source.

Using the console to install the jars is certainly better than doing it one-by-one manually but 
still there are 5 fields that need to be filled/verified for each jar to be installed. I think the 
option of choice for installing (copying) the drivers would still be the command line unless we can 
simplify the GUI process.

One way of simplifying it could be:

1- use the wizard to create a data source (first step as usual)
2- From the Driver Jar pull down menu...
      - it might be better to have a scroll down box where you can select (ctrl+) multiple
        jars if needed.
      - in the same scroll box have an option to install other drivers not listed
        other drivers not listed:
         - have a browse button to select multiple files to install in the same single operation
           if the files are already available locally (instead of going through the common
           libraries).  This option should keep to a minimum user
           required input.
           The multiple files selected serve one single purpose, hence it would be nice to have them
           treated (listed) as a block, for example *DB2 8.1 JARs*
         - provide a download option (already available)
      - once the driver is installed continue with the regular existing procedure.
3- Optionally configure some of the connection pool parameters (timeouts, min and max pool sz, etc)
4- Test and deploy

When editing an existing data source it would be nice to have the option for *Testing* the 
connection again.

Cheers!
Hernan

Matt Hogstrom wrote:
> All,
> 
> I was looking at Aaron's "Guiding Principals" doc and rmembered I meant 
> to post some thoughts on the "Geronimo Experience."
> 
> I've been working on deploying daytrader and have noted a couple of 
> things that I think are relevant from a user perspective.  Specifically 
> these around the repository.
> 
> For my testing I've been using DB2 as the database as I wanted to use a 
> commercial database that was external to the AppServer.  The same story 
> is true for MySQL, PostGres, etc.
> 
> In order to deploy a dependent jar into the repo you have to add the 
> group, artifact and version information.  So in the case of DB2 there 
> are two jars you have to add.  They are the db2jcc.jar and the 
> db2jcc_license_cu.jar.  Putting them into the repo I did the following:
> 
> mkdir -p 
> ./geronimo-1.1-SNAPSHOT/repository/com/ibm/db2/db2jcc_license_cu/8.1/
> 
> mkdir -p ./geronimo-1.1-SNAPSHOT/repository/com/ibm/db2/db2jcc/8.1/
> 
> Then I copied the jars into the repo:
> 
> cp db2jcc.jar 
> ./geronimo-1.1-SNAPSHOT/repository/com/ibm/db2/db2jcc/8.1/db2jcc-8.1.jar
> 
> cp db2jcc_license_cu.jar 
> ./geronimo-1.1-SNAPSHOT/repository/com/ibm/db2/db2jcc_license_cu/8.1/db2jcc_license_cu-8.1.jar 
> 
> 
> For the most part this is certainly doable but is actually pretty 
> tedious.  Also, following the convention, the artifactname and the 
> version are duplicated in the actual deployed jar; seems a bit redundant.
> 
> I wanted to validate that my usage is correct per the original design.  
> If it is I think we're probably missing one of the points in Aaron's doc 
> about the server being simple to use.  At least this is not intuitive.
> 
> If my understanding is wrong or there is a better suggestion on how to 
> handle this please post back.  I'm working on the documentation for how 
> to deploy DayTrader.  Since this is a very visible use case for the 
> server I want to make sure this is the direction we are going to 
> recommend for users.
> 
> Perhaps another approach is to use the shared lib that was recently 
> added (I have to go back through the e-mails to see how to set it up).  
> I think that paradigm is more in line with Tomcat users as well as other 
> AppServers.
> 
> Thoughts?
> 
> Matt
>