geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Lin Sun" <linsun....@gmail.com>
Subject Re: MySQL Database Pool problems
Date Mon, 25 Aug 2008 02:16:13 GMT
I agree that the error is very misleading.   But this problem (convert
the / in the artifactId to %2F) that happens only when pool name
contains a forward slash should be fixed in the upcoming 2.1.3
release.

Lin

On Sun, Aug 24, 2008 at 5:43 AM, Andrus Adamchik <andrus@objectstyle.org> wrote:
> 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 <andrus@objectstyle.org>
>> 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 <andrus@objectstyle.org>
>> 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>
>>
>>
>>
>>
>
>

Mime
View raw message