Перезапись соединения для Люси - PullRequest
0 голосов
/ 10 апреля 2020

У меня есть этот код, работающий для coldfusion, но когда я портирую его на lucee, он выходит из строя, я знаю, что macromedia не работает в lucee, как я могу сделать это возможным в lucee и хочу удалить строку подключения, но результат должен быть точно таким же, как функция, возвращающая меня

// open a connection to the database
            Class = createObject("java", "java.lang.Class");
            Class.forName("macromedia.jdbc.sqlserver.SQLServerDriver");
            manager = createObject("java", "java.sql.DriverManager");
            connectionURL = "jdbc:macromedia:sqlserver://"& SESSION.USER.dbServer &":"& SESSION.USER.dbPortNumber & ";EncryptionMethod=SSL;ValidateServerCertificate=false;";
            connection = manager.getConnection(connectionURL, SESSION.USER.dbUser, SESSION.USER.dbPass);

1 Ответ

1 голос
/ 10 апреля 2020

Вы можете определить этот источник данных в Admin, а не в коде приложения. Одна вещь, которая кричит «большой красный флаг» в вашем существующем коде, это то, что имя сервера базы данных определено в cook ie. Заставляет меня задуматься, что еще есть в значениях cook ie, которые необходимо изменить.

Прочтите документацию по , определяющему источник данных :

this.datasources["myds"] = {
    class: 'org.gjt.mm.mysql.Driver'
    , connectionString: 'jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&useLegacyDatetimeCode=true'
    , username: 'root'
    , password: "encrypted:5120611ea34c6123fd85120a0c27ab23fd81ea34cb854"
};

Пример приведен для MySQL, но вам нужно найти правильное имя драйвера для SQL Сервер, используемый Люси. Go администратору и создайте там DSN, чтобы найти имя драйвера.

...