Не может для меня жизнь понять это. Так что в моем объекте запроса у меня естьИдентификатор ORMLite всегда имеет значение null (не имеет поля id)
@DatabaseField(id = true, columnName = "ID", canBeNull = false, generatedId = true)
private int entityId;
Всякий раз, когда я делаю метод вставки, как это:
public void insert(T object) throws SQLException {
DatabaseConnection connection = objectDao.startThreadConnection();
Savepoint savepoint = null;
try {
savepoint = connection.setSavePoint(null);
objectDao.createOrUpdate(object);
} finally {
connection.commit(savepoint);
objectDao.endThreadConnection(connection);
}
}
Я всегда получаю ошибку, как этот
Class class UnsyncTripRequest does not have an id field
Я не уверен, почему я получаю это от того, что, как я понимаю, идентификатор должен быть создан автоматически? я вижу в классе OrmLites BaseDaoImpl есть метод extractId, который имеет следующую строку:
FieldType idField = tableInfo.getIdField();
Который всегда нуль. У кого-нибудь есть представление о том, как я могу исправить эту проблему. Спасибо
Я по-прежнему получаю ту же ошибку, к сожалению – goodgamerguy
'generatedId' подразумевает' id'. – Gray
У вас есть объект ассоциации? Как насчет этого? @ForeignCollection (id = true) См. Здесь: http://ormlite.com/javadoc/ormlite-core/com/j256/ormlite/field/ForeignCollectionField.html – SISLAM