4 Replies Latest reply on Feb 4, 2003 12:00 AM by glenn_dickson

    Cloudscape anyone?

    jasonhobbs

      Hi! I just started playing with JBoss yesterday after having already deployed some EJBs and a mini-web app using Sun's J2EE implementation. I was glad to see I could use Sun's deploytool for deploying to JBoss without too much trouble.

      My Question is regarding using a CloudScape DB with JBoss.. I followed the JDBC Driver instructions as per this web site, putting (what I thought) the appropriate classes in as my Cloudscape drivers (used the information from the server settings tab in deploytool for Sun's j2ee implementation - which is working well with Cloudscape)
      When I start JBoss, however, I get ClassNotFoundException:RmiJdbc.RJDriver
      followed by the usual smorgasbord of error info (bunch of "at blah... at blah" lines) followed by "Loaded JDBC-driver:COM.cloudscape.core.RmiJdbcDriver"
      which is a little confusing...

      At any rate, the thing won't start up... I won't go into all the error details since I figured I would throw this out there first to see if anyone can give me a step-by-step for getting CloudScape to work. Maybe it'd be worth adding this to the documentation at some point too, it might be nice to have some nice and easy instructions for a collection of DBs. There are a few right now, but Cloudscape isn't one of them.

      Thanks in advance!

      Jason Hobbs
      c-jhobbs@efficient.com

        • 1. Re: Cloudscape anyone?
          marc.fleury

          looks like you inverted the jdbcProvider XML stuff with the datasource declaration, try inverting them

          • 2. Re: Cloudscape anyone?
            jasonhobbs

            Okay it looks like I have this working now... For reference, here are my jboss.jcml entries:

            <!-- JDBC -->

            COM.cloudscape.core.JDBCDriver



            org.opentools.minerva.jdbc.xa.wrapper.XADataSourceImpl
            Cloudscape
            jdbc:cloudscape:CloudscapeDB;create=true
            databaseName=CloudscapeDB;createDatabase=create
            root



            Thanks! Hope this helps someone else too!

            • 3. Re: Cloudscape anyone?
              jschlesser

              Yesterday, I decided to see if I could create a J2EE development environment at home. I figured that I would install JBoss, install Cloudscape, start both of them up, create some tables and brew a bean or two. JBoss installed, no prob. Cloudscape on the other hand was a pain. After I finally got it installed (unzipped and classpaths set), it took a little while to find the Rmi/non-embedded start scripts, actually it took me many hours to figure out that I should be looking for the Rmi/non-embedded start scripts because the tutorials all assume that you will be embedding Cloudscape.


              Here is the less painful method.

              Starting Cloudscape:
              Make sure that all of your environment vars are set properly.

              Set $CLOUDSCAPE_INSTALL

              Add the following to your classpath: $CLOUDSCAPE_INSTALL/frameworks/cloudconnect/classes;$CLOUDSCAPE_INSTALL/frameworks/RmiJdbc/classes/RmiJdbc.jar;

              '$CLOUDSCAPE_INSTALL/frameworks/RmiJdbc/bin/startCS.ksh' Starts Cloudscape DB in standalone mode.

              '$CLOUDSCAPE_INSTALL/frameworks/RmiJdbc/bin/cview.ksh' Starts Cloudview. You are on your own with learning to use Cloudview, but it isn't too bad, really.

              Once you get the start scripts in there to work, you have a standalone DB, and you can manage it using Cloudview.

              Now you just need to make some databases using Cloudview, and you can connect to them from JBoss remotely with the configuration below.

              You will need both cloudscape.jar and cloudscape's RmiJdbc.jar in the $JBOSS_HOME/lib/ext directory or in your JBoss classpath.

              Here are my jboss.jcml settings

              <!-- naming -->

              1999


              <!-- JDBC -->

              COM.cloudscape.core.RmiJdbcDriver



              Cloudscape
              org.jboss.pool.jdbc.xa.wrapper.XADataSourceImpl
              jdbc:cloudscape:rmi://localhost:1099/CloudscapeDB


              Things to notice:

              The naming port had to be changed because when you run cloudscape in standalone RmiJdbc mode, it binds to port 1099, which is the default port for naming in JBoss. I would prefer to change the port of Cloudscape, but JBoss has much better configurability and docs.

              The driver is 'COM.cloudscape.core.RmiJdbcDriver' instead of 'COM.cloudscape.core.JDBCDriver'

              The DataSourceClass changed because I have a different version of JBoss (2.4.0). At least I think that this is the case, I have only had JBoss running for a day.

              The database connection URL semantics changed as well. If you use cloudview to make a new database instance called 'NewDB', you would replace 'jdbc:cloudscape:rmi://localhost:1099/CloudscapeDB' with 'jdbc:cloudscape:rmi://localhost:1099/NewDB'

              Your post helped me immensely in figuring out the remote configuration. Thanks jasonhobbs and marcf.

              I Hope this helps too.




              • 4. Re: Cloudscape anyone?
                glenn_dickson

                Yesterday, I decided to see if I could create a J2EE development environment at home. I figured that I would install JBoss, install Cloudscape, start both of them up, create some tables and brew a bean or two. JBoss installed, no prob. Cloudscape on the other hand was a pain. After I finally got it installed (unzipped and classpaths set), it took a little while to find the Rmi/non-embedded start scripts, actually it took me many hours to figure out that I should be looking for the Rmi/non-embedded start scripts because the tutorials all assume that you will be embedding Cloudscape.


                Here is the less painful method.

                Starting Cloudscape:
                Make sure that all of your environment vars are set properly.

                Set $CLOUDSCAPE_INSTALL

                Add the following to your classpath: $CLOUDSCAPE_INSTALL/frameworks/cloudconnect/classes;$CLOUDSCAPE_INSTALL/frameworks/RmiJdbc/classes/RmiJdbc.jar;

                '$CLOUDSCAPE_INSTALL/frameworks/RmiJdbc/bin/startCS.ksh' Starts Cloudscape DB in standalone mode.

                '$CLOUDSCAPE_INSTALL/frameworks/RmiJdbc/bin/cview.ksh' Starts Cloudview. You are on your own with learning to use Cloudview, but it isn't too bad, really.

                Once you get the start scripts in there to work, you have a standalone DB, and you can manage it using Cloudview.

                Now you just need to make some databases using Cloudview, and you can connect to them from JBoss remotely with the configuration below.

                You will need both cloudscape.jar and cloudscape's RmiJdbc.jar in the $JBOSS_HOME/lib/ext directory or in your JBoss classpath.

                Here are my jboss.jcml settings

                <!-- naming -->

                1999


                <!-- JDBC -->

                COM.cloudscape.core.RmiJdbcDriver



                Cloudscape
                org.jboss.pool.jdbc.xa.wrapper.XADataSourceImpl
                jdbc:cloudscape:rmi://localhost:1099/CloudscapeDB


                Things to notice:

                The naming port had to be changed because when you run cloudscape in standalone RmiJdbc mode, it binds to port 1099, which is the default port for naming in JBoss. I would prefer to change the port of Cloudscape, but JBoss has much better configurability and docs.

                The driver is 'COM.cloudscape.core.RmiJdbcDriver' instead of 'COM.cloudscape.core.JDBCDriver'

                The DataSourceClass changed because I have a different version of JBoss (2.4.0). At least I think that this is the case, I have only had JBoss running for a day.

                The database connection URL semantics changed as well. If you use cloudview to make a new database instance called 'NewDB', you would replace 'jdbc:cloudscape:rmi://localhost:1099/CloudscapeDB' with 'jdbc:cloudscape:rmi://localhost:1099/NewDB'

                Your post helped me immensely in figuring out the remote configuration. Thanks jasonhobbs and marcf.

                I Hope this helps too.