You are here:

I am trying to determine the most effective way to incorporate Java ME into an existing ARM-based project/environment. I have downloaded and read the CDC Build System Guide (dated November 2005, prior to what I believe was your Java->OSS decision/launch), the CDC Porting Guide (same date), and both of the most current zip archives of the CDC and CLDC Java sources. I've also scoured the FAQs I could find on the Sun site, but I remain in need of answers or hints to the following questions:

1. When or how will Optimized Implementations (OIs) for non-x86/non-sparc architectures be made available? The build and porting guides both mention CPU-specific code (c.f. section 3.1, page 3-2 in the Build System Guide, and section 2.3.2, page 2-6 in the Porting Guide), but neither of the zip archives for the Reference Implementation (RI) seem to contain these sub-directories.
2. I could not find the email or other contact info for getting an OI from Sun. The link in the guides pointed to a page with no other "contact me" links or information.
3. The guides both mentions the use of gcc for cross-compilation. Does Sun have experience with using ARM's compiler and linker tools?
4. What other OS choices have the Sun CDC/CLDC team encountered? E.g., I see mention of VXWorks; what of ThreadX and other RTOS? Kaffe is an obvious alternative to Java ME, but I am interested in the "official" level of support from Sun and the Sun-specific Java community.
5. Is there a specific forum where platform-specific [G]UI issues are discussed? I have custom and semi-custom display hardware and input devices and I'd like to get a better sense of the Best Practice for porting Java to support these.

Some of my questions/issues may be with a disconnect between the "formal" documentation and the recently-released code. Is there any specific plan by Sun to update the build and porting guides?

I am willing to roll with some development effort, but I also don't want to reinvent the wheel. Thanks in advance for any answers or pointers you can offer!

These stacks include much more than simply a configuration, and as such, we felt it was appropriate to come up with a name that covered the entire bundle.

Additionally, there are a number of branding restrictions that can further complicate naming. To prevent confusion in the market around compatibility and/or compliance of Java implementations, there is a requirement to pass certain compatibility tests prior to using any of the Java trademarks or claim (or imply) compatibility to any of the associated specifications. You can read more about this in the FAQ:

> ...one of these is more likely to be of interest:
>
> phoneme_advanced-mr1-rel-bin-b06-linux-10_nov_2006.zip
>
> phoneme_advanced-mr1-rel-src-b06-10_nov_2006.zip
> phoneme_advanced-mr2-dev-bin-b02-linux-x86-04_dec_2006
> .zip
> phoneme_advanced-mr2-dev-src-b02-04_dec_2006.zip
> phoneme_feature-mr1-rel-bin-b04-linuxarm-09_nov_2006.z
> ip
> phoneme_feature-mr1-rel-src-b04-09_nov_2006.zip
>
> Notice that none of the "phoneme" archives have "CDC"
> or "CLDC" in their names. Unfortunate if you are
> trying to understand the history in a short period of
> time.
>
> The current rubs are that:
>
> 1) mr1 wants JDK 1.4.x; it won't compile cleanly
> under 1.5 ("enum" is now a reserved word; we won't
> comment on the fact that "enum" was probably a pretty
> dumb variable name to start with...). Growing pains;
> go figure. At least I now have the source, so it's
> easy enough to edit the relevant files
>
> 2) ARM support is throughout mr1, but not yet in mr2.
> At least that is documented; yay!

Sorry we haven't been prompt with answering your questions and concerns. For your questions on phoneME Advanced, the better forum to post to is:

I think we answered your question on JDK 1.5 on that forum, since you posted the answer on this thread. You should be able to build on ARM now in the current components/cdc/trunk (phoneME Advanced). Please post over on the pMEA forum if you do have any follow-up questions or have any future problems with pMEA.

Thanks. I think it remains the case that, depending on how you first start looking, you can get a different set of answers as to what is what here. This is probably a result of the change from closed source to OSS and a latency in getting all the older documentation up to speed. For my needs, I wouldn't have initially thought I was looking for "phone ME advanced", but on closer inspection, that's the case. So the CDC source I had downloaded earlier:

j2me_cdc_fp-1_0_2-src.zip
j2me_cldc-1_1-fcs-src-winunix.zip

Really wasn't what I wanted. Instead, one of these is more likely to be of interest:

Notice that none of the "phoneme" archives have "CDC" or "CLDC" in their names. Unfortunate if you are trying to understand the history in a short period of time.

The current rubs are that:

1) mr1 wants JDK 1.4.x; it won't compile cleanly under 1.5 ("enum" is now a reserved word; we won't comment on the fact that "enum" was probably a pretty dumb variable name to start with...). Growing pains; go figure. At least I now have the source, so it's easy enough to edit the relevant files

2) ARM support is throughout mr1, but not yet in mr2. At least that is documented; yay!

> 1) mr1 wants JDK 1.4.x; it won't compile cleanly under 1.5 ("enum" is
> now a reserved word; we won't comment on the fact that "enum" was
> probably a pretty dumb variable name to start with...). Growing
> pains; go figure. At least I now have the source, so it's easy
> enough to edit the relevant files

The command-line options '-source 1.4 -target 1.4' will fix this without
the need to edit any files...

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email tolistserv@java.sun.com and include in the body of the message "help".