Ugh, the problem turned out to be in using forward slash in the pool name (converted to %2F by Geronimo on save). Once I renamed it to a letter-only string, I was able to create a database pool with no problems. Thanks Trygve for your help. Turned out we were looking in the wrong direction as the error was so misleading.

Thanks,
Andrus



On Aug 23, 2008, at 9:57 PM, Trygve Hardersen wrote:

I haven't used the console or the deployer much, but I use the car- maven-plugin to generate plans. The generated plan.xml typically looks like this:

<connector xmlns="http://geronimo.apache.org/xml/ns/j2ee/ connector-1.2">
  <!--The DB pool-->
<dep:environment xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.2 ">
    <dep:moduleId>
      <dep:groupId>mygroup</dep:groupId>
      <dep:artifactId>db-plugin</dep:artifactId>
      <dep:version>0.0.3-SNAPSHOT</dep:version>
      <dep:type>car</dep:type>
    </dep:moduleId>
    <dep:dependencies>
      <dep:dependency>
        <dep:groupId>org.apache.geronimo.configs</dep:groupId>
        <dep:artifactId>connector-deployer</dep:artifactId>
        <dep:version>2.1.3-SNAPSHOT</dep:version>
        <dep:type>car</dep:type>
      </dep:dependency>
      <dep:dependency>
        <dep:groupId>mysql</dep:groupId>
        <dep:artifactId>mysql-connector-java</dep:artifactId>
        <dep:version>5.1.6</dep:version>
        <dep:type>jar</dep:type>
      </dep:dependency>
      <dep:dependency>
        <dep:groupId>org.tranql</dep:groupId>
        <dep:artifactId>tranql-connector-mysql-local</dep:artifactId>
        <dep:version>1.2</dep:version>
        <dep:type>rar</dep:type>
      </dep:dependency>
      <dep:dependency>
        <dep:groupId>mygroup</dep:groupId>
        <dep:artifactId>db-sql</dep:artifactId>
        <dep:version>0.0.3-SNAPSHOT</dep:version>
        <dep:type>jar</dep:type>
      </dep:dependency>
    </dep:dependencies>
    <dep:hidden-classes/>
    <dep:non-overridable-classes/>
  </dep:environment>
  <resourceadapter>
    <outbound-resourceadapter>
      <connection-definition>
<connectionfactory-interface>javax.sql.DataSource</ connectionfactory-interface>
        <connectiondefinition-instance>
          <name>mydb</name>
<config-property-setting name="ServerName">localhost</ config-property-setting> <config-property-setting name="PortNumber">3306</config- property-setting> <config-property-setting name="DatabaseName">mydb</config- property-setting> <config-property-setting name="UserName">dbuser</config- property-setting> <config-property-setting name="Password">secret</config- property-setting>
          <connectionmanager>
            <local-transaction/>
            <single-pool>
              <max-size>20</max-size>
              <min-size>1</min-size>
<blocking-timeout-milliseconds>10000</blocking-timeout- milliseconds>
              <idle-timeout-minutes>5</idle-timeout-minutes>
              <match-one/>
            </single-pool>
          </connectionmanager>
        </connectiondefinition-instance>
      </connection-definition>
    </outbound-resourceadapter>
  </resourceadapter>
  <!--The DB schema initialization script-->
<gbean name="mydbschema" class="org.apache.geronimo.connector.DatabaseInitializationGBean">
    <attribute name="testSQL">show tables from mydb</attribute>
    <attribute name="path">META-INF/sql/create-mydb.sql</attribute>
    <reference name="DataSource">
      <name>mydb</name>
    </reference>
  </gbean>
</connector>

A shot in the wild but try using a simple artifactId for your plugin as well, just to see if jdbc%2FmyDB causes a problem.

Trygve

2008/8/23 Andrus Adamchik <[EMAIL PROTECTED]>
Thanks for the hint. I saved the plan, and then added the dep below, and then followed the instructions on the console page to do deployment. No luck with that either, but the error seems to be different. There is nothing in the logs, but the Mac terminal output looks like this:

$ java -jar bin/deployer.jar deploy /Users/andrus/Desktop/geronimo- pool.xml repository/org/tranql/tranql-connector-mysql-local/1.2/ tranql-connector-mysql-local-1.2.rar

Username: system
Password: *******
   Error: Unable to distribute tranql-connector-mysql-local-1.2.rar:

   Can not load activation spec class

       org.tranql.connector.mysql.LocalMCF in classloader
   console.dbpool/jdbc%2FwaiversDB/1.0/rar


Any ideas?

Thanks,
Andrus


On Aug 23, 2008, at 9:11 PM, Trygve Hardersen wrote:

I believe you're missing the dependency on tranql-connector-mysql- local:

     <dep:dependency>
       <dep:groupId>org.tranql</dep:groupId>
       <dep:artifactId>tranql-connector-mysql-local</dep:artifactId>
       <dep:version>1.2</dep:version>
       <dep:type>rar</dep:type>
     </dep:dependency>

Trygve

2008/8/23 Andrus Adamchik <[EMAIL PROTECTED]>
Hi there,

just got a vanilla install of Geronimo - geronimo-jetty6- javaee5-2.1.2. Tried to setup a Database Pool connecting to MySQL. I successfully downloaded the MySQL driver via the console, but when I am trying to save the pool with this driver I am getting an error below. Looks like some dependency is not accessible. Plan XML file is also shown below. Not sure whether I need to add something manually to it?

Thanks,
Andrus


Exception
-------------

Deployer operation failed: Can not load activation spec class
org.apache.geronimo.common.DeploymentException: Can not load activation spec class at org .apache .geronimo .connector .deployment .ConnectorModuleBuilder .setUpDynamicGBean(ConnectorModuleBuilder.java:646) at org .apache .geronimo .connector .deployment .ConnectorModuleBuilder .setUpDynamicGBeanWithProperties(ConnectorModuleBuilder.java:730) at org .apache .geronimo .connector .deployment .ConnectorModuleBuilder .getManagedConnectionFactoryInfoMap(ConnectorModuleBuilder.java:698) at org .apache .geronimo .connector .deployment .ConnectorModuleBuilder.initContext(ConnectorModuleBuilder.java:483) at org .apache .geronimo .j2ee .deployment .EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:595) at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:254) at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:133)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun .reflect .NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun .reflect .DelegatingMethodAccessorImpl .invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:585)
at org .apache .geronimo .gbean .runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java: 34) at org .apache .geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:124) at org .apache .geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:867) at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java: 239) at org .apache .geronimo .deployment .plugin .local.AbstractDeployCommand.doDeploy(AbstractDeployCommand.java:116) at org .apache .geronimo .deployment .plugin.local.DistributeCommand.run(DistributeCommand.java:61)
      at java.lang.Thread.run(Thread.java:613)
Caused by: java.lang.ClassNotFoundException: org.tranql.connector.mysql.LocalMCF in classloader console.dbpool/ jdbc%2FmyDB/1.0/rar at org .apache .geronimo .kernel .config .MultiParentClassLoader .loadOptimizedClass(MultiParentClassLoader.java:436) at org .apache .geronimo .kernel .config.MultiParentClassLoader.loadClass(MultiParentClassLoader.java: 278)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at org .apache .geronimo .connector .deployment .ConnectorModuleBuilder .setUpDynamicGBean(ConnectorModuleBuilder.java:643)
      ... 17 more

Plan XML File
-------------

<?xml version="1.0" encoding="UTF-8"?>
<connector xmlns="http://geronimo.apache.org/xml/ns/j2ee/ connector-1.2"> <dep:environment xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.2 ">
      <dep:moduleId>
          <dep:groupId>console.dbpool</dep:groupId>
          <dep:artifactId>jdbc%2FmyDB</dep:artifactId>
          <dep:version>1.0</dep:version>
          <dep:type>rar</dep:type>
      </dep:moduleId>
      <dep:dependencies>
          <dep:dependency>
              <dep:groupId>mysql</dep:groupId>
              <dep:artifactId>mysql-connector-java</dep:artifactId>
              <dep:version>3.1.12</dep:version>
              <dep:type>jar</dep:type>
          </dep:dependency>
      </dep:dependencies>
  </dep:environment>
  <resourceadapter>
      <outbound-resourceadapter>
          <connection-definition>
<connectionfactory-interface>javax.sql.DataSource</ connectionfactory-interface>
              <connectiondefinition-instance>
                  <name>jdbc/waiversDB</name>
<config-property-setting name="Password">********</ config-property-setting> <config-property-setting name="DatabaseName">mydb</ config-property-setting> <config-property-setting name="UserName">root</ config-property-setting>
                  <connectionmanager>
                      <no-transaction/>
                      <single-pool>
                          <max-size>5</max-size>
                          <min-size>1</min-size>
                          <match-one/>
                      </single-pool>
                  </connectionmanager>
              </connectiondefinition-instance>
          </connection-definition>
      </outbound-resourceadapter>
  </resourceadapter>
</connector>





Reply via email to