Facts: (J2ME != MIDP) -and- (MIDP belongs to J2ME)

Let me explain what I mean and where am I coming from…

I keep encountering articles that keep confusing readers about what J2ME really is. For example, this morning I went over an article that said “The BlackBerry is a fully J2ME-compliant device”…

While that is true in some respects, it is not accurate to say that, and instead the author should have said that the “BlackBerry is a fully
MIDP-compliant device”.

This is important because J2ME is not only about MIDP. J2ME is an umbrella
technology, and it includes many Java technologies such as a subset of the core Java language, plus the concepts of configurations such as CLDC, and CDC, and profiles such as MIDP, Personal Profile, and others. From the BlackBerry perspective today, only one profile is supported: MIDP. In addition,
BlackBerry supports pure CLDC-based applications, that is, without using the MIDP APIs, and instead using the BlackBerry-specific proprietary APIs.

Last but not least, J2ME has been re-branded as Java ME, so all references to J2ME (such as references in my website) should now read Java ME instead.

So in summary, Java ME is not the same as MIDP… it is more than that!

  1. MIDP belongs to Java ME.
  2. MIDP implies Java ME — but
    not necessarily the other way.
  3. MIDP is a subset of J2SE CLDC runtime and APIs, and some MIDP APIs are a subset of J2SE.

Because the Personal Profile and CDC-based handsets will over time become more pervasive, it is important to make this distinction and to be accurate.

For some notes on BlackBerry development, go to J2MEDeveloper.com and scroll down to the BlackBerry section. Also you can read more about Java ME in general by reading A Survey of J2ME Today, which also is available through J2MEDeveloper.com.

ceo