Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NullPointerException in BaseModelProvider.setMatcher(Uri) #225

Closed
kasim1011 opened this issue Sep 20, 2016 · 2 comments
Closed

NullPointerException in BaseModelProvider.setMatcher(Uri) #225

kasim1011 opened this issue Sep 20, 2016 · 2 comments

Comments

@kasim1011
Copy link
Contributor

I sometime get the NullPointerException in BaseModelProvider's setMatcher method when I call select() method on model. I don't what's the reason behind it.

Here's the uses:

StandardStandard standardStandard = new StandardStandard(mActivity, mActivity.user());
/// NullPointerException
List<ODataRow> standardStandardDataRows = standardStandard.select();

Here's the log:

java.lang.RuntimeException: An error occured while executing doInBackground()
    at android.os.AsyncTask$3.done(AsyncTask.java:300)
    at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355)
    at java.util.concurrent.FutureTask.setException(FutureTask.java:222)
    at java.util.concurrent.FutureTask.run(FutureTask.java:242)
    at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
    at java.lang.Thread.run(Thread.java:848)
Caused by: java.lang.NullPointerException
    at com.serpentcs.saltracker.core.orm.provider.BaseModelProvider.setMatcher(BaseModelProvider.java:86)
    at com.serpentcs.saltracker.core.orm.provider.BaseModelProvider.query(BaseModelProvider.java:93)
    at android.content.ContentProvider.query(ContentProvider.java:922)
    at android.content.ContentProvider$Transport.query(ContentProvider.java:213)
    at android.content.ContentResolver.query(ContentResolver.java:462)
    at android.content.ContentResolver.query(ContentResolver.java:405)
    at com.serpentcs.saltracker.core.orm.OModel.select(OModel.java:648)
    at com.serpentcs.saltracker.core.orm.OModel.select(OModel.java:636)
    at com.serpentcs.saltracker.addons.employees.fragments.StudentFragment$SetupGrade.doInBackground(StudentFragment.java:981)
    at com.serpentcs.saltracker.addons.employees.fragments.StudentFragment$SetupGrade.doInBackground(StudentFragment.java:968)
    at android.os.AsyncTask$2.call(AsyncTask.java:288)
    at java.util.concurrent.FutureTask.run(FutureTask.java:237)
    ... 4 more

Here's the another uses:

AbsentReason absentReason = new AbsentReason(mActivity, mActivity.user());
/// NullPointerException
List<ODataRow> absentReasonDataRows = absentReason.select();

Here's its log:

java.lang.NullPointerException
    at com.serpentcs.saltracker.core.orm.provider.BaseModelProvider.setMatcher(BaseModelProvider.java:86)
    at com.serpentcs.saltracker.core.orm.provider.BaseModelProvider.query(BaseModelProvider.java:93)
    at android.content.ContentProvider.query(ContentProvider.java:922)
    at android.content.ContentProvider$Transport.query(ContentProvider.java:213)
    at android.content.ContentResolver.query(ContentResolver.java:462)
    at android.content.ContentResolver.query(ContentResolver.java:405)
    at com.serpentcs.saltracker.core.orm.OModel.select(OModel.java:648)
    at com.serpentcs.saltracker.core.orm.OModel.select(OModel.java:636)
    at com.serpentcs.saltracker.addons.employees.fragments.TeacherAttFragment.setupAbsentReason(TeacherAttFragment.java:459)
    at com.serpentcs.saltracker.addons.employees.fragments.TeacherAttFragment.onActivityCreated(TeacherAttFragment.java:187)
    at android.support.v4.app.Fragment.performActivityCreated(Fragment.java:2089)
    at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1133)
    at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1290)
    at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:801)
    at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1677)
    at android.support.v4.app.FragmentManagerImpl$1.run(FragmentManager.java:536)
    at android.os.Handler.handleCallback(Handler.java:808)
    at android.os.Handler.dispatchMessage(Handler.java:103)
    at android.os.Looper.loop(Looper.java:193)
    at android.app.ActivityThread.main(ActivityThread.java:5299)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:515)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:829)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:645)
    at dalvik.system.NativeStart.main(Native Method)

I want to know what's the possible reasons behind happening this.

@dpr-odoo
Copy link
Collaborator

@kasim1011 Due to null BASE_PROVIDER in OModel constant BaseModelProvider not able to find proper authority string mapped with your model class. Fix done in f691971 commit.

@kasim1011
Copy link
Contributor Author

Thanks @dpr-odoo for fixing this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants