Oracle от .NET с клиентом на 64 бита

Исключение нулевого указателя - это индикатор того, что вы используете объект, не инициализируя его.

Например, ниже - класс ученика, который будет использовать его в нашем коде.

public class Student {

    private int id;

    public int getId() {
        return this.id;
    }

    public setId(int newId) {
        this.id = newId;
    }
}

Приведенный ниже код дает вам исключение с нулевым указателем.

public class School {

    Student obj_Student;

    public School() {
        try {
            obj_Student.getId();
        }
        catch(Exception e) {
            System.out.println("Null Pointer ");
        }
    }
}

Поскольку вы используете Obj_Student, но вы забыли инициализировать его, как в правильном коде, показанном ниже:

public class School {

    Student obj_Student;

    public School() {
        try {
            obj_Student = new Student();
            obj_Student.setId(12);
            obj_Student.getId();
        }
        catch(Exception e) {
            System.out.println("Null Pointer ");
        }
    }
}
5
задан Nick Randell 30 December 2008 в 16:53
поделиться

3 ответа

Необходимо использовать 11.1.0.7 выпуска. Это имеет поддержку UDT и работает с 32 и 64 битами.

2
ответ дан 15 December 2019 в 06:38
поделиться

Возможность UDT только перечислена в 11-граммовых клиентах, и последний клиент на 64 бита 10.2.0.3.

Не ответ, который Вы хотели, но тот, который Oracle, кажется, дает.

На самом деле я рад, что Вы задали этот вопрос. Мы работаем над миграцией на серверный код на 64 бита, и я не думал бы для проверки на это.

1
ответ дан 15 December 2019 в 06:38
поделиться

Я пытался в течение некоторого времени заставить 64-разрядный выпуск Windows Server 2003 соединяться с Oracle 8i экземпляр. Это, кажется, не возможно кроме выполнения его через 32-разрядный VM.

Принудительное обновление может действительно высосать!

0
ответ дан 15 December 2019 в 06:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: