Browse Source

improved FAQ entry for J2ME, hurrah! at last!

tags/V1_5_1_final
aclement 18 years ago
parent
commit
09406a3699
1 changed files with 52 additions and 10 deletions
  1. 52
    10
      docs/faq/faq.xml

+ 52
- 10
docs/faq/faq.xml View File

@@ -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>

Loading…
Cancel
Save