Я пытаюсь добавить запись в таблицу в базе данных, и я получаю Nullpointerexception
NullPointerException при использовании insertRow() АПД
при выполнении оператора вставки с помощью insertRow()
.
Использование регистра:
В таблице базы данных, что я пытаюсь вставить записи, чтобы она называется someTable
.
эта таблица содержит следующие атрибуты: A, B, C, D, E
первичный ключ представляет собой комбинацию из трех полей, которые являются: A, B, C
Я, выполнив следующий код для вставки новой записи в таблице someTable
:
AppModuleImpl appModule = (AppModuleImpl)(JSFUtils.getApplicationModule("AppModuleDataControl"));
ViewObject someTableVO =appModule.findViewObject("someTableView1");
Row row= someTableVO.createRow();
row.setAttribute("A", varable1);
row.setAttribute("B", varable2);
row.setAttribute("C", varable3);
row.setAttribute("D", varable4);
someTableVO.insertRow(row); // This statement cause the NullPointerException
appModule.getDBTransaction().commit();
someTableVO.executeQuery();
Примечание:
Там нет
Not Null constrains
для первичного ключа, конечно, за исключением того, и я добавляю данные для всех полей первичного ключа, которые являются (A
,B
иC
).Я не вставляю данные для поданной
E
, как вы можете видеть, из примера кода выше. Но даже когда я пытался добавить к нему какое-то значение, я все равно получаю такую же ошибку.Я уверен, что переменные (
variable1
......variable4
) не являютсяnull
.Я получаю правильный вид объекта
someTableView1
Я использую
ADF
с технологиейJdevelopr 11.1.2.3
Спасибо, что было полезно. это было вашим вторым моментом, я должен проверить строку перед тем, как совершить другой разумный вариант, который дает исключение нулевого указателя. – Salman