[
https://issues.apache.org/jira/browse/CAY-1604?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
John Huss closed CAY-1604.
--------------------------
Resolution: Abandoned
> Android support for ROP apps
> ----------------------------
>
> Key: CAY-1604
> URL: https://issues.apache.org/jira/browse/CAY-1604
> Project: Cayenne
> Issue Type: Improvement
> Components: ROP
> Affects Versions: 3.1M2
> Environment: Tested Android 2.3, Cayenne 3.1
> Reporter: John Huss
> Priority: Minor
> Labels: patch
> Attachments: android java beans.patch, cayenne-android-support.patch,
> tutorial-rop-android.zip
>
> Original Estimate: 168h
> Remaining Estimate: 168h
>
> I tried out Cayenne ROP on Android and this is what I found: it doesn't work
> out of the box, but it can be made to work with a bit of effort.
> The Hessian library refers to a few classes that are not present in Android:
> java.rmi.Remote
> java.rmi.RemoteException
> Cayenne itself refers to a few other classes missing in Android:
> java.beans.PropertyDescriptor
> java.beans.IntrospectionException
> So references to these need to be dealt with. Here is what I did:
> 1) Use the existing open source"hessdroid" library instead of the regular
> hessian library
> 2) Remove reference to java.rmi.Remote from
> org.apache.cayenne.remote.RemoteService
> 3) Change RemoteException to IOException in
> org.apache.cayenne.remote.RemoteService
> 4) Use the java.beans code from Apache Harmony repackaged as
> com.googlecode.openbeans. I created the "openbeans" project on Google Code to
> host this code.
> Only the cayenne-client library needs to be changed in this way. The server
> can stay the same, but it needs to have access to the openbeans library so
> that those classes are defined.
> With these changes I was able to run the ROP client tutorial code in an
> Android app. I've attached the patch so you can see exactly what was needed.
> I don't know what the proper course of action would be to integrate
> something like this; presumably these aren't the kind of changes you would
> want to make to the core library, just to an android-only version. So maybe
> you have an idea.
> I've attached the patch and the example project.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)