Blocking issues for porting SCA to Android platform

This page is meant to detail blocking issues with Android. At the start of the project the main issue related to Android was its lack of support of Annotations. A suggested workaround for issues related to Annotations was to use retrotranslator. After succesfully translating the SCA modules and modified Android modules with retrotranslator the Annotation related errors ceased. These errors are mainly related to lack of RMI support. This will be the first blocking issue on the list. As issues are resolved they will be scratched off and any new issues that arise will be added.

Issues:

1. ClassNotFoundException for java.rmi.Remote
2. ClassNotFoundException for java.beans.Introspector
3. ClassNotFoundException for javax.jsw.WebService

Suggested workarounds:

Three workarounds have been suggested for issue 1.
  • a. Comment out all the code that uses the RMI API.
  • b. Backport java.rmi.Remote using retrotranslator.
  • c. Take sources of java.rmi from Apache Harmony. Then create a JAR package and retrotranslate it.
  • d. Remove RMI (tuscany-binding-rmi) dependency from host-android.
One workaround has been suggested for issue 2.
  • a. Comment out all the code that uses the Beans API.

Status of workarounds:

1. RMI related

  • a. RMI related errors have not appeared after using the newest version of retrotranslator. Beans API related errors appeared (first) instead.
  • b. As RMI related errors have not (yet) appeared there has been no need to use the backport option with the newest version of retrotranslator.
  • c. Same as 1 and 2.
  • d. Could not find host-android module. Even though it is found in trunk, it is not imported into the projects when following the latests steps for reproducing workspace

2. Beans related

  • a. CCommented java.beans.Introspector import and related code from JavaInstrospectionHelper.java (org.apache.tuscany.sca.implementation.java.introspect.impl) to successfully work around the Beans issue.

JIRA tickets:

1. Created JIRA ticket for issues 1 and 2.

https://issues.apache.org/jira/browse/TUSCANY-2440

  • No labels