db-derby-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Trejkaz <trej...@trypticon.org>
Subject Period in username when using a DataSource
Date Thu, 15 Dec 2011 00:51:26 GMT
Hi all.

If I do this (using version 10.8.2.2):

    ClientConnectionPoolDataSource ds = new ClientConnectionPoolDataSource();
    ds.setServerName("derby");
    ds.setPortNumber(2000);
    ds.setDatabaseName("db");
    ds.setUser("john.smith");

This eventually results in an error on the server side:

    ERROR 28502: The user name 'john.smith' is not valid.
           at org.apache.derby.iapi.error.StandardException.newException(StandardException.java:286)
           at org.apache.derby.iapi.util.IdUtil.getUserAuthorizationId(IdUtil.java:570)
           at org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.initialize(GenericLanguageConnectionContext.java:381)
           at org.apache.derby.impl.db.BasicDatabase.setupConnection(BasicDatabase.java:295)

After a bit of research, I read that usernames with a dot are fine in
a database *URL* as long as you quote them.  But I'm *not* using a URL
here, I'm using a setter on a bean.  So I would be expecting the
library to properly quote a string if it deems that the value I passed
in needs it.

Yet Derby doesn't appear to be doing this.  Is this a bug?

TX

Mime
View raw message