[ http://issues.apache.org/jira/browse/GERONIMO-2314?page=all ]

Vamsavardhana Reddy reassigned GERONIMO-2314:
---------------------------------------------

    Assignee: Vamsavardhana Reddy

> Can not create a datasource with the name "jdbc/EmployeeDatasource" from 
> console
> --------------------------------------------------------------------------------
>
>                 Key: GERONIMO-2314
>                 URL: http://issues.apache.org/jira/browse/GERONIMO-2314
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: console
>    Affects Versions: 1.1, 1.1.1, 1.1.2, 1.2
>            Reporter: Yunfeng Ma
>         Assigned To: Vamsavardhana Reddy
>             Fix For: 1.1.2, 1.2
>
>         Attachments: G2314-1.1.patch
>
>
> Follow the database pool wizard,  create a datasource with the name 
> "jdbc/EmployeeDatasource", the connection test is successful, but when click 
> on the button "deploy", see the following stacktrace in the server output 
> window:
> org.apache.geronimo.common.DeploymentException: 
> java.lang.IllegalArgumentException: Invalid id: 
> console.dbpool/jdbc/EmployeeDatasource/1.0/rar
>                at 
> org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:364)
>                at 
> org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:124)
>                at 
> org.apache.geronimo.deployment.Deployer$$FastClassByCGLIB$$734a235d.invoke(<generated>)
>                at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>                at 
> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
>                at 
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
>                at 
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:852)
>                at 
> org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:239)
>                at 
> org.apache.geronimo.deployment.plugin.local.AbstractDeployCommand.doDeploy(AbstractDeployCommand.java:106)
>                at 
> org.apache.geronimo.deployment.plugin.local.DistributeCommand.run(DistributeCommand.java:60)
>                at java.lang.Thread.run(Thread.java:797)
> Caused by: 
> java.lang.IllegalArgumentException: Invalid id: 
> console.dbpool/jdbc/EmployeeDatasource/1.0/rar
>                at 
> org.apache.geronimo.kernel.repository.Artifact.create(Artifact.java:49)
>                at 
> org.apache.geronimo.deployment.Deployer.notifyWatchers(Deployer.java:376)
>                at 
> org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:325)
>                ... 10 more
> This error just happens in the condition of the database pool name includes 
> the character "/", such as "jdbc/EmployeeDatasource". If database pool name 
> is "EmployeeDatasource", then everything is OK.
> Have a look at the souce codes of Artifact.java, the snippet of create method 
> as following:
>     public static Artifact create(String id) {
>         String[] parts = id.split("/", -1);
>         if (parts.length != 4) { 
>             throw new IllegalArgumentException("Invalid id: " + id);
>         }
>         for (int i = 0; i < parts.length; i++) {
>             if (parts[i].equals("")) {
>                 parts[i] = null;
>             }
>         }
>         return new Artifact(parts[0], parts[1], parts[2], parts[3]);
>     }
> If database pool name is "jdbc/EmployeeDatasource", the parts.length would be 
> 5 and IllegalArgumentException would be throwed.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to