aboutsummaryrefslogtreecommitdiffstats
path: root/docs/faq
diff options
context:
space:
mode:
authoraclement <aclement>2006-03-28 16:11:01 +0000
committeraclement <aclement>2006-03-28 16:11:01 +0000
commit09406a36994865a841d9b40dff734975dd75f4d2 (patch)
treea9622775d5cb91762a4939e03329fb9071eed4e4 /docs/faq
parent91b4e7aa93d3a0b817a598e6aef81310671475f8 (diff)
downloadaspectj-09406a36994865a841d9b40dff734975dd75f4d2.tar.gz
aspectj-09406a36994865a841d9b40dff734975dd75f4d2.zip
improved FAQ entry for J2ME, hurrah! at last!
Diffstat (limited to 'docs/faq')
-rw-r--r--docs/faq/faq.xml62
1 files changed, 52 insertions, 10 deletions
diff --git a/docs/faq/faq.xml b/docs/faq/faq.xml
index 8001b6a0f..388ddf8cb 100644
--- a/docs/faq/faq.xml
+++ b/docs/faq/faq.xml
@@ -22,7 +22,7 @@
2003-2006 Contributors. All rights reserved.
</para>
<!-- todo Update me! -->
- <para>Last updated February 2, 2006
+ <para>Last updated March 28, 2006
</para>
<para>
For a list of recently-updated FAQ entries, see <xref linkend="q:faqchanges"/>
@@ -1402,15 +1402,57 @@ aspect PublicErrorLogging {
<para>Can I use AspectJ with J2ME?</para>
</question>
<answer>
- <para>We have not tested with J2ME, but we understand that users
- are deploying AspectJ-compiled programs successfully in J2ME.
- It should work if your program is otherwise J2ME-compatible
- and if you avoid using <literal>cflow</literal>-based pointcuts
- or <literal>thisJoinPoint</literal>.
- To ensure that the program is limited to J2ME API's,
- you should supply the runtime on the bootclasspath.
- (Fair warning: there was an email about this not working,
- but there has been no bug report.)
+ <para>The J2ME platform has several different components.
+ The diagram below shows how the different profiles
+ build on top of the two configurations CDC (Connected Device
+ Configuration) and CLDC (Connected Limited Device Configuration):
+ <programlisting>
+ --------------
+ | Personal |
+ -------------- --------
+ | Foundation | | MIDP |
+ ------------------ ------------------
+ | CDC | | CLDC |
+------------------------------------------
+| Java |
+------------------------------------------
+ </programlisting>
+ Which configuration you have dictates the restrictions when
+ running AspectJ compiled programs.
+ </para>
+ <para>
+ If you're running with a profile which sits on top of CDC then
+ there are not, as far as we are aware, any restrictions when
+ running AspectJ compiled code on this flavour of J2ME.
+ </para>
+ <para>
+ If you're running with a profile sitting on top of CLDC 1.1
+ you are currently unable to use the <literal>thisJoinPoint,
+ thisJoinPointStaticPart</literal> and <literal>
+ thisEnclosingJoinPointStaticPart</literal> variables, the
+ <literal>cflow</literal> and <literal>cflowbelow</literal>
+ pointcuts and the <literal>percflow</literal> and <literal>
+ percflowbelow</literal> perClauses.
+ </para>
+ <para>
+ Finally, if you're running with a profile which sits on top
+ of CLDC 1.0 you have all the restrictions of CLDC 1.1. There may
+ be further restrictions due to the lack of types corresponding
+ to the primitive types (e.g. Integer.TYPE), however, at the
+ time of writing we have been unable to do any extensive testing
+ on this.
+ </para>
+ <para>
+ Note that the aspectj runtime jar is now (as of AspectJ5) quite
+ large but only a small subset is required for executing code
+ in J2ME environments. We plan to ship a second aspectjrt.jar
+ built for the J2ME environment at some point.
+ </para>
+ <para>
+ For more discussion and to raise any issues you have with
+ AspectJ and J2ME, refer to
+ <ulink url="https://bugs.eclipse.org/bugs/show_bug.cgi?id=92933">
+ bugzilla entry 92933</ulink>.
</para>
</answer>
</qandaentry>