Closed GoogleCodeExporter closed 8 years ago
upgraded phone to froyo. problem still exists - phone address book is/was empty.
Original comment by mathias....@gmail.com
on 9 Dec 2010 at 6:06
Hi!
Can you provide an "adb logcat"?
When does this happens exactly? In the settings screen? During Sync?
Original comment by arthur.z...@gmail.com
on 9 Dec 2010 at 6:23
Hi,
so, here's what I did (I just repeated it):
1) deleted all items
=> success
2) clicked on 'sync all'
=> processing meassage 3...301
=> error while synchronizing: java.lang.IllegalArgumentException: the bind
value at one is null
3) opened 'contacts'
=> it now contains two entries ! (hm, didn't notice them before)
=> only email address and birthday appear to be present
=> phone numbers are missing
4) clicked on 'sync all' again
=> same error message as above
5) clicked on 'sync calendar only'
=> success
How do I run 'adb logcat' ?
As fas as Android is concerned, I'm just a dumb user :)
Cheers,
Mathias
Original comment by mathias....@gmail.com
on 9 Dec 2010 at 9:01
forgot to mention, importing the contacts via a vcard v3 file works fine
(exported with kmail).
Original comment by mathias....@gmail.com
on 9 Dec 2010 at 9:04
Please upgrade to 0.0.5 and send an error report.
Original comment by arthur.z...@gmail.com
on 19 Dec 2010 at 1:59
I got a similar error message with version 0.0.5:
W/System.err(23332): java.lang.IllegalArgumentException
W/System.err(23332): at
javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:154)
W/System.err(23332): at at.dasz.KolabDroid.Utils.getDocument(Utils.java:236)
W/System.err(23332): at
at.dasz.KolabDroid.ContactsContract.SyncContactsHandler.createLocalItemFromServe
r(SyncContactsHandler.java:181)
W/System.err(23332): at
at.dasz.KolabDroid.Sync.SyncWorker.sync(SyncWorker.java:257)
W/System.err(23332): at
at.dasz.KolabDroid.Sync.SyncWorker.runWorker(SyncWorker.java:101)
W/System.err(23332): at
at.dasz.KolabDroid.Sync.BaseWorker.start(BaseWorker.java:65)
W/System.err(23332): at
at.dasz.KolabDroid.Sync.SyncService.doWakefulWork(SyncService.java:61)
W/System.err(23332): at
com.commonsware.cwac.wakeful.WakefulIntentService.onHandleIntent(WakefulIntentSe
rvice.java:79)
W/System.err(23332): at
android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:30)
W/System.err(23332): at android.os.Handler.dispatchMessage(Handler.java:99)
W/System.err(23332): at android.os.Looper.loop(Looper.java:123)
W/System.err(23332): at android.os.HandlerThread.run(HandlerThread.java:60)
I/Service (23332): sync finished
I/Service (23332): Service stopped
And i found several lines like this:
D/sync (23332): 2. Checking message KRxNJvti9J
I/sync (23332): 6. found no local entry => save
D/sync (23332): Downloading item ...
W/sync (23332): createLocalItemFromServer returned a null object! See
Logfile for parsing errors
Cheers,
Andreas
Original comment by rot...@gmail.com
on 19 Dec 2010 at 3:42
It looks like, that the XML documents have another format as expected. Can you
post some? Without anonymous content?
Thx!
Original comment by arthur.z...@gmail.com
on 19 Dec 2010 at 3:56
<?xml version="1.0" encoding="UTF-8"?>
<contact version="1.0" >
<product-id>KAddressBook 3.3, Kolab resource</product-id>
<uid>KRxNJvti9J</uid>
<creation-date>2005-12-04T20:12:00Z</creation-date>
<last-modification-date>2005-12-04T20:12:00Z</last-modification-date>
<sensitivity>public</sensitivity>
<name>
<given-name>Chip</given-name>
<last-name>support</last-name>
<full-name>Chip support</full-name>
</name>
<email>
<display-name>Chip support</display-name>
<smtp-address>support@chip.de</smtp-address>
</email>
<preferred-address>home</preferred-address>
</contact>
Original comment by rot...@gmail.com
on 19 Dec 2010 at 4:39
problems persist with 0.0.5.
calendar sync works. contact sync fails as described before.
example XML contact:
<?xml version="1.0" encoding="UTF-8"?>
<contact version="1.0" >
<product-id>KAddressBook 3.3, Kolab resource</product-id>
<uid>FFFE9nsq0K</uid>
<creation-date>2007-12-26T10:32:40Z</creation-date>
<last-modification-date>2007-12-26T10:32:40Z</last-modification-date>
<sensitivity>public</sensitivity>
<name>
<given-name>AAA</given-name>
<last-name>BBB</last-name>
<full-name>AAA BBB</full-name>
</name>
<birthday>9999-08-30</birthday>
<preferred-address>home</preferred-address>
</contact>
Original comment by mathias....@gmail.com
on 19 Dec 2010 at 5:49
OK. Finally got around to install the SDK. Android version is now 2.2.1.
Any other info I can provide to help tracking this ?
Happy New Year,
Mathias
D/sync ( 4463): 2. Checking message null
W/System.err( 4463): java.lang.IllegalArgumentException: the bind value at
index 1 is null
W/System.err( 4463): at
android.database.sqlite.SQLiteProgram.bindString(SQLiteProgram.java:234)
W/System.err( 4463): at
android.database.sqlite.SQLiteQuery.bindString(SQLiteQuery.java:182)
W/System.err( 4463): at
android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.
java:48)
W/System.err( 4463): at
android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1
454)
W/System.err( 4463): at
android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:330)
W/System.err( 4463): at
android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:280)
W/System.err( 4463): at
at.dasz.KolabDroid.Provider.LocalCacheProvider.getCursor(LocalCacheProvider.java
:93)
W/System.err( 4463): at
at.dasz.KolabDroid.Provider.LocalCacheProvider.getEntry(LocalCacheProvider.java:
127)
W/System.err( 4463): at
at.dasz.KolabDroid.Provider.LocalCacheProvider.getEntryFromRemoteId(LocalCachePr
ovider.java:113)
W/System.err( 4463): at
at.dasz.KolabDroid.Sync.SyncWorker.sync(SyncWorker.java:252)
W/System.err( 4463): at
at.dasz.KolabDroid.Sync.SyncWorker.runWorker(SyncWorker.java:101)
W/System.err( 4463): at
at.dasz.KolabDroid.Sync.BaseWorker.start(BaseWorker.java:65)
W/System.err( 4463): at
at.dasz.KolabDroid.Sync.SyncService.doWakefulWork(SyncService.java:61)
W/System.err( 4463): at
com.commonsware.cwac.wakeful.WakefulIntentService.onHandleIntent(WakefulIntentSe
rvice.java:79)
W/System.err( 4463): at
android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:59)
W/System.err( 4463): at android.os.Handler.dispatchMessage(Handler.java:99)
W/System.err( 4463): at android.os.Looper.loop(Looper.java:123)
W/System.err( 4463): at android.os.HandlerThread.run(HandlerThread.java:60)
I/Service ( 4463): sync finished
I/Service ( 4463): Service stopped
Original comment by mathias....@gmail.com
on 31 Dec 2010 at 10:19
Hi Mathias,
do you have a logcat from that run?
Right before that exception occurs there is:
Log.d("sync", "2. Checking message " + subject);
And "subject" is the id of the entry the cache is looking for, maybe there is
something wrong with that one.
Regards,
Stefan
Original comment by STrille...@googlemail.com
on 31 Dec 2010 at 10:30
Hi Stefan,
the subject is "null":
D/sync ( 6170): 2. Checking message null
hm.....
I can mail you the log. It's a bit long for a post....
Original comment by mathias....@gmail.com
on 31 Dec 2010 at 12:45
Upps.
Null isn't any good, this is supposed to be the subject of the email and
according to:
http://www.kolab.org/doc/kolabformat-2.0rc7-html/c99.html#AEN105
it should be:
"The subject of the mail must be set to the UID of the object."
So can you please check why your email subject is null (empty)?
I agree that she should catch that error and present a proper error message,
but for now it looks to me that it's a bug in your kolab program on the "other
side", i.e. the one which created that email.
Regards,
Stefan
Original comment by STrille...@googlemail.com
on 31 Dec 2010 at 12:56
Hi Stefan,
ok. I thought subject 'null' was kind of strange.
I haven't really looked into my 'Contacts' folder in ages (as a mail folger), I
only used the 'Contacts' component of 'kontact'.
Anyway, I found five messages with '(no subject)' there. After deleting them,
'sync all' made it up to item 101 of 300 and failed with a different error.
Will send you the logs soon.
It might make sense to just ignore 'no subject' items and to print an
error/warning message so that people get a hint what to look for.
-Mathias
Original comment by mathias....@gmail.com
on 31 Dec 2010 at 12:57
Great that this is sorted out.
BUT, I _really_ recommend you NOT to use the 0.0.5 version from trunk for
production use on your phone if you're not familiar with sqlite databases and
haven't rooted your phone (yet).
Since we are not yet using android syncadapters the whole contacts2.db gets
messed up at the moment. There's already a working version in the froyo-branch
which "just" needs some testing and an account manager to help users fixing
their db.
Regards,
Stefan
Original comment by STrille...@googlemail.com
on 31 Dec 2010 at 1:10
Hi Stefan,
just to bring this to an end. I could finally sync from kolab and back !
On the way, I lost 13 contacts...well, I have a backup :)
At some point 'kolab-android' got confused and created items with the name
'null, null' locally which also got pushed back to kolab - so it seems.
After deleting them on the kolab side and a fresh 'reset' on the phone, the
sync went through.
I guess, I won't touch the contacts again for now :)
Let me know, when you have new version and need someone to test ist.
And, yes, my phone is rooted by now. And, also yes, I could figure figure out
how to fix sqlite. But, I don't have the time for really getting into android
development...although, rooting the phone was the first step into that
direction :)
Cheers,
Mathias
Original comment by mathias....@gmail.com
on 31 Dec 2010 at 1:50
Fixed in newest version of branch on gitorious: we ignore messages with no
subject
Original comment by STrille...@googlemail.com
on 10 Jan 2011 at 10:37
Original issue reported on code.google.com by
mathias....@gmail.com
on 7 Dec 2010 at 7:41