0
Android 프로젝트에 greenDAO을 사용하고 있습니다. 정말 행복합니다.greenDAO : 삽입시 NullPointerException
슬프게도, 나는 현재 아주 이상한 문제에 봉착 : NullPointerException이 새로 만든 LocationCoords 객체의, LocationCoordsDao를 사용하여 삽입을하는 동안. 예를 들어, 식사 엔터티에 삽입이 잘 작동하기 때문에이 특정 엔터티에서만 발생합니다.
public class MealsDiaryGenerator {
public static void main(String[] args) {
Schema schema = new Schema(2, "ch.cidzoo.journalibs.db");
addMeal(schema);
try {
new DaoGenerator().generateAll(schema, "../JournalIBS/src");
} catch (Exception e) {
e.printStackTrace();
}
}
private static void addMeal(Schema schema) {
Entity loc = schema.addEntity("LocationCoords");
loc.addIdProperty().autoincrement();
loc.addDoubleProperty("latitude").notNull();
loc.addDoubleProperty("longitude").notNull();
Entity meal = schema.addEntity("Meal");
meal.addIdProperty();
meal.addDateProperty("date");
Property locId = meal.addLongProperty("locationCoordsId").getProperty();
meal.addToOne(loc, locId);
}
}
그리고 지금은 실패 : 나는 아무런 영향으로 삽입 (전 식사)를 교환하기 위해 노력했습니다
@Override
public void onLocationChanged(Location location) {
double lat = location.getLatitude();
double lon = location.getLongitude();
Log.i("onLocationChanged", "got a location update: lat=" + lat + "/lon=" + lon);
LocationCoords loc = new LocationCoords(null, lat, lon);
locationCoordsDao.insert(loc); //NullPointerException
Log.d("DaoExample", "Inserted new coord, ID: " + loc.getId());
Meal meal = new Meal(null, new Date(), null);
mealDao.insert(meal);
Log.d("DaoExample", "Inserted new meal, ID: " + meal.getId());
((MealAdapter)getListAdapter()).updateMeals(mealDao.loadAll());
}
여기 내 설명이다. 나는 또한 더 이상 운이없는 LocationCoords 엔티티에 대한 모든 생성자를 시도했다.
도움이 될 것입니다.
당신의 스택 트레이스를 추가하십시오 할 수 있습니다. – AlexS
'locationCoordsDao'는 어디에서 초기화 했습니까? – Nizam