I'm using a tree structure in my application, which has to be passed
to a service. All nodes in the tree are of the type ExpressionTree,
which is an interface.
All nodes are also Parcelable.

Now in my setup I have these types (all implement ExpressionTree and
Parcelable):
- ExpressionTreeRoot, a class with a reference to an ExpressionTree.
- AndTree, a class with two ExpressionTree references.
- StringCondition, a leafnode in the tree

Now I'm passing a tree with an ExpressionTreeRoot referencing an
AndTree referencing two StringConditions to a service, running in
another process.

ExpressionTreeRoot -> AndTree -> 2 StringConditions
The parcel that is sent to the service is thus a flattened version of
this tree, containing 3 parcels.

When unmarshalling, the service process throws a
ClassNotFoundException:

07-20 10:44:16.431: ERROR/Parcel(1355): Class not found when
unmarshalling: nl.vu.contextframework.conditions.AndTree, e:
java.lang.ClassNotFoundException:
nl.vu.contextframework.conditions.AndTree

I can see in my log output that ExpressionTreeRoot.readFromParcel() is
called, which in its turn calls parcel.readFromParcel to read the
included parcel, which is in this case a parceled AndTree. This is
where the ClassNotFoundException is thrown.
The parcel seems to be reading the class type correctly from the
parcel,  otherwise it wouldn't be printing the name
"nl.vu.contextframework.conditions.AndTree". But somehow it is unable
to find this class, even though I'm sure it exists.

Can anyone tell me what's going on, or give me some tips on how to
investigate further?
I'm using the default classloader by the way.

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to