Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
alexmx
0 / 0 / 0
Регистрация: 19.01.2014
Сообщений: 51
1

Экземпляры классов

07.03.2014, 17:36. Просмотров 397. Ответов 0
Метки нет (Все метки)

Доброго времени суток))
Есть сервис в котором создается экземпляр класса бд
Java
1
2
DBHelper db = new DBHelper(this);
    SQLiteDatabase database;
Используется для вставки данных

Есть класс BaseAdapter в котором то же создается экземпляр класса бд но подругому:
Java
1
2
3
4
5
private void init() {
        dbOpenHelper = new DBHelper(context);
        database = dbOpenHelper.getWritableDatabase();
        cursor = getAllEntries();
    }
Беда в том что в адаптере есть метод который возвращает новый курсор
Java
1
2
3
4
public void refresh() {
        cursor = getAllEntries();
        notifyDataSetChanged();
    }
который я пытаюсь вызвать во время вставки но при создании экземпляра класса BaseAdapter для вызова не статического метода refresh() эклипс выкидывает портянку
Лог:
Кликните здесь для просмотра всего текста
03-06 12:58:34.219: E/AndroidRuntime(1055): FATAL EXCEPTION: main
03-06 12:58:34.219: E/AndroidRuntime(1055): java.lang.RuntimeException: Unable to instantiate service ru.myscanner.scannerth.CatalogService: java.lang.NullPointerException
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.app.ActivityThread.handleCreateService(ActivityThread.java:2347)
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.app.ActivityThread.access$1600(ActivityThread.java:130)
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1277)
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.os.Handler.dispatchMessage(Handler.java:99)
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.os.Looper.loop(Looper.java:137)
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.app.ActivityThread.main(ActivityThread.java:4745)
03-06 12:58:34.219: E/AndroidRuntime(1055): at java.lang.reflect.Method.invokeNative(Native Method)
03-06 12:58:34.219: E/AndroidRuntime(1055): at java.lang.reflect.Method.invoke(Method.java:511)
03-06 12:58:34.219: E/AndroidRuntime(1055): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
03-06 12:58:34.219: E/AndroidRuntime(1055): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
03-06 12:58:34.219: E/AndroidRuntime(1055): at dalvik.system.NativeStart.main(Native Method)
03-06 12:58:34.219: E/AndroidRuntime(1055): Caused by: java.lang.NullPointerException
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:221)
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:224)
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:164)
03-06 12:58:34.219: E/AndroidRuntime(1055): at ru.myscanner.scannerth.SqlAdapter.init(SqlAdapter.java:37)
03-06 12:58:34.219: E/AndroidRuntime(1055): at ru.myscanner.scannerth.SqlAdapter.<init>(SqlAdapter.java:32)
03-06 12:58:34.219: E/AndroidRuntime(1055): at ru.myscanner.scannerth.CatalogService.<init>(CatalogService.java:16)
03-06 12:58:34.219: E/AndroidRuntime(1055): at java.lang.Class.newInstanceImpl(Native Method)
03-06 12:58:34.219: E/AndroidRuntime(1055): at java.lang.Class.newInstance(Class.java:1319)
03-06 12:58:34.219: E/AndroidRuntime(1055): at android.app.ActivityThread.handleCreateService(ActivityThread.java:2344)
03-06 12:58:34.219: E/AndroidRuntime(1055): ... 10 more
03-06 13:02:23.353: I/Choreographer(4287): Skipped 214 frames! The application may be doing too much work on its main thread.


Как это обмануть?

Добавлено через 21 час 57 минут
Сделал так:
Java
1
SqlAdapter adapter;
и сделал вызов метода класса SqlAdapter:
Java
1
adapter.refresh()
Теперь выкидывает:
Лог
Кликните здесь для просмотра всего текста
03-06 16:03:13.768: E/AndroidRuntime(27801): FATAL EXCEPTION: Timer-0
03-06 16:03:13.768: E/AndroidRuntime(27801): java.lang.NullPointerException
03-06 16:03:13.768: E/AndroidRuntime(27801): at ru.myscanner.scannerth.CatalogService.ScnCatalog(CatalogService.java:65)
03-06 16:03:13.768: E/AndroidRuntime(27801): at ru.myscanner.scannerth.CatalogService$1.run(CatalogService.java:26)
03-06 16:03:13.768: E/AndroidRuntime(27801): at java.util.Timer$TimerImpl.run(Timer.java:284)

Подскажите с чем это может быть связанно?
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.03.2014, 17:36
Ответы с готовыми решениями:

Объекты и экземпляры классов
Здравствуйте, я читаю книгу &quot;Изучаем C#&quot; 3-e издание, Эндрю Стиллмена и Дженнифер Грина, так же...

Экземпляры классов типов
Помогите мне пожалуйста. Никак не могу разобраться... Задание звучит так: &quot;&quot;&quot;&quot; Нужно определить...

Работа с указателями на экземпляры классов
чтото не пойму. Я могу както создать указатель, который указывал бы ка экземпляр класса (а не...

Где создавать экземпляры классов?
Здравствуйте! Начал изучать WPF и появился у меня вопрос о переносе. Вот есть у меня класс, в...

Объекты и экземпляры абстрактных классов
Здравствуйте, помогите, пожалуйста, разобраться: Суть в чем - экземпляры абстрактных классов...

0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.03.2014, 17:36

Как использовать экземпляры классов МFC?
Такая проблема: С помощью MFC AppWizard создал проект, в котором редактируется некая...

Как положить в массив экземпляры классов?
Здравствуйте! Есть задача. У меня есть 2 класса FixedMonthlyCostPaidService и ...

Как сериализовать/десериализовать экземпляры классов в файл
Проблема следующая: Имеется три класcа: class Class1 { // Список полей и методов } class...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.