Ошибка открытия соединения с базой данных через JNDI в WAS 8.5 - PullRequest
0 голосов
/ 25 апреля 2018

У нас есть приложение AQS, которое необходимо перенести с WAS 7 на WAS 8.5.

У меня есть этот JNDI, определенный в нашем коде,

 private static final String JNDI_NAME_AQSSERVICE = "java:comp/env/jdbc/aqsservice/AQS";

Также тот же URL JNDIопределено в консоли администратора WAS 8.5, и тестовое соединение прошло успешно.

Ниже приведен метод, который мы используем для открытия соединения с БД:

    public Connection getAQSDBConnection() throws ConnectionManagerException
{
    try
    {
        Connection con = DataSourceManager.getConnection(JNDI_NAME_AQSSERVICE);


         if(log.isEnabledFor(Priority.INFO))
                log.info("DB Connection retrieved in ConnectionManager.getAQSDBConnection()");

        if (con != null)
            con.setAutoCommit(false); // turn auto-commit OFF

        return con;
    }
    catch (Exception e)
    {
        System.out.println("Exception while retrieving DB Connection in ConnectionManager.getAQSDBConnection() is :" + e);
        throw new ConnectionManagerException("ConnectionManager.getDBConnection(): Exception occurred while opening database connection.", e);
    }
}

При попытке открыть соединение с БД через наш код, мы получаем исключение времени выполнения, как показано ниже:

[4/24/18 11:25:45:298 CDT] 00000070 SystemOut     O Exception while retrieving DB Connection in ConnectionManager.getAQSDBConnection() is :javax.naming.ConfigurationException: Malformed provider URL ""

Мы дважды проверили, что URL JNDI одинаков в Code и консоли администратора WAS 8.5, но при открытии соединения он становится пустым.Тот же код работает в среде WAS 7.

Может кто-нибудь помочь, пожалуйста?

...