Lost in J2ME

H

huy

An implementation of *what*? A *J2ME specification*. Is such a specification
a part of Java 2 Standard Edition? *No*. Therefore, no category error has
been made on my part. The category error was in Huy's referring to the CVM
as "the JVM".

Hi All,

This is a real question. I'm not trying to be smart.

Is the CVM not a JVM i.e Java Virtual Machine. When people talk about
JVM are they only referring to J2SE ? If so, then I have learn't
something, because I also talked about JVM as a generic term i.e Java
Virtual Machine.

I'm just a bit confused when Darryl refers to "the JVM" and what that
exactly means.


Thanks

Huy
 
D

Darryl L. Pierce

huy said:
This is a real question. I'm not trying to be smart.

Is the CVM not a JVM i.e Java Virtual Machine.

JVM refers to a *specific* virtual machine specification.
When people talk about
JVM are they only referring to J2SE ?
Yes.

If so, then I have learn't
something, because I also talked about JVM as a generic term i.e Java
Virtual Machine.

Then you should properly refer to them as a *virtual machine*, IMO.
I'm just a bit confused when Darryl refers to "the JVM" and what that
exactly means.

Specification for the JVM:
http://java.sun.com/docs/books/vmspec/2nd-edition/html/VMSpecTOC.doc.html

The JVM is the virtual machine that ships with J2SE. It is not a references
to *any* virtual machine that runs Java code, but a reference to a
*specific* virtual machine.
 
D

Darryl L. Pierce

huy said:
Straight from the horses mouth: http://java.sun.com/j2me/faq.html

What happens to PersonalJava and EmbeddedJava technologies?
The PersonalJava application environment was the *first Micro Edition
technology*.......

Take that how you like it, but I'll take it as *predecessor*.

Then I'll concede that perhaps there is a closer relationship between PJava
and the J2ME technologies than has been shown previously.
3. "Stay away form AWT if your application requires many
windows/frames, try

I have a much different view on *standard* vs *non-standard* in terms of
making decisions on implementations. I don't use things just because
they are *standard*.

Are you the OP's customer? What *you* view (or I, or anybody here for that
matter) view as "standard" and what we use as buying criteria are worlds
different from what your average technology customer is going to use as
criteria. Where we might have a better understanding of what is implemented
and how, customers generally tend to look for such things as
certifications, standards compliance and the like as indications that a
technology is viable.
I use things because they work best for me, and in
this particular case, SWT worked better for me on the Pocket PC then
AWT, hence my advice. This may cause fragmentation in the java
community, but this is not my area of concern.

Fragmentation in the community is irrelevant. My point is, you advised
someone to avoid standards and go with a specific implementation without
first trying to understand his requirements. You really don't see the
problem with this?
I agree. I like this defintion. I will use it in future. Thanks. It
might stop me from future dialogs like this, but I don't think it has
helped me understand J2ME any better then my original thoughts.

Then I'm sorry you're unable to grasp the difference.
When you care about something, it's always slightly personal. I'm not
sure also who made you Judge, Jury and Executioner in the trial of my
intentions/attitude on trying to help on c.l.j.p

Nobody has made me such, and I have not done as you say. I'm presenting my
*opinion* of what you have said, and have backed up that opinion with facts
that support my conclusion.

And, if you care about something, shouldn't you also care enough to make
sure you're doing the right thing? When answering a question, shouldn't you
care enough to answer accurately?
I use whatever means necessary to explain things as simple as I can to
people who admit to being *Lost* with the current available information
(meaning those authors have failed; with all their exactness, this
audience).

When someone uses the word "lost" in a message, to me that doesn't mean they
need to have the answers dumbed down to the point of being completely off
the mark. If they're lost, then to me that indicates they need to have
answers that are *more* precise, but with fewer points so that it's easier
to digest.

The OP didn't indicate that he couldn't understand a technically precise
answer. He indicated that he was new to the domain and had some confusion.
Adding more confusion didn't help him. Correcting his current
misunderstandings *did*.
However, I would accept my failing if Sebastian tells me I
did not help him what so ever and made him worse off (short or long term).

How would someone confused by X and given incorrect information about X be
able to tell the difference?
 
H

huy

Darryl said:
huy wrote:




JVM refers to a *specific* virtual machine specification.




Then you should properly refer to them as a *virtual machine*, IMO.




Specification for the JVM:
http://java.sun.com/docs/books/vmspec/2nd-edition/html/VMSpecTOC.doc.html

The JVM is the virtual machine that ships with J2SE. It is not a references
to *any* virtual machine that runs Java code, but a reference to a
*specific* virtual machine.

Thanks for the explanation. I really have learnt something here.

I have to say Darryl, you have prompted me to look more deeply into the
differences between the JVM, CVM, and EVM and I have learn't a great
deal about it. However, I feel that the details concerning specific
virtual machine implemenations would not be extremely relevant to
application programmers like myself (of course it's always good to
know). In fact, I think it clouds the issues we face as well as adding
additional confusion to the whole thing.

To me, java is a language I use and the JVM, CVM, EVM are just the
different runtime implementations (for diffrent platforms). That is my
dumbed down and simplistic understanding of all this java technology.

Cheers,

Huy
 
H

huy

Fragmentation in the community is irrelevant. My point is, you advised
someone to avoid standards and go with a specific implementation without
first trying to understand his requirements. You really don't see the
problem with this?

I do see your point (even if I may not agree with it). I would hope that
if the "OP"s intention was to follow standards, then he would have
ignored my advice. If he didn't know better or didn't care, I would have
gone with my advice which is IMO the better path at the moment. i.e SWT
vs AWT. Again I repeat, this is my opinion, based on my own experiences.
You can't expect me to ignore my experiences and recommend something
just because it's standard.

Then I'm sorry you're unable to grasp the difference.

That's ok.

And, if you care about something, shouldn't you also care enough to make
sure you're doing the right thing? When answering a question, shouldn't you
care enough to answer accurately?

That's my problem I think. I really think I'm doing the right thing,
although you disagree. I am in agreement with you that the exact words
"J2ME is J2SE with missing APIs" taken as they are is incorrect.
However, in terms of understanding from an applications point of view, I
truly think that's it's not as bad of a way of understanding it as you
make it sound. So we don't go around in circles, I do agree with your
basic premise that my original statement is *technically* incorrect.

When someone uses the word "lost" in a message, to me that doesn't mean they
need to have the answers dumbed down to the point of being completely off
the mark. If they're lost, then to me that indicates they need to have
answers that are *more* precise, but with fewer points so that it's easier
to digest.

That is one approach to teaching I guess. Another is by way of analogy,
and that's what I did. Might not have been the best analogy, but it's
how I understood it. Maybe I'm just too inexperienced in this whole J2ME
thing to be giving advice.
The OP didn't indicate that he couldn't understand a technically precise
answer. He indicated that he was new to the domain and had some confusion.
Adding more confusion didn't help him. Correcting his current
misunderstandings *did*.

Maybe on both counts. We'd have to ask him about this.

How would someone confused by X and given incorrect information about X be
able to tell the difference?

You have a point here, but that's the thing with getting information on
the internet. You better make sure you know how to sift the good from
the crap. Especially when good to one person might be crap to another
and vice versa.


Regards,

Huy
 
D

Darryl L. Pierce

huy said:
Thanks for the explanation. I really have learnt something here.

I'm glad to hear that! My only reason in answering questions is to help
someone else and, hopefully, myself in the process to have a better
understanding.
I have to say Darryl, you have prompted me to look more deeply into the
differences between the JVM, CVM, and EVM
EVM?

and I have learn't a great
deal about it. However, I feel that the details concerning specific
virtual machine implemenations would not be extremely relevant to
application programmers like myself (of course it's always good to
know). In fact, I think it clouds the issues we face as well as adding
additional confusion to the whole thing.

Implementation *details* may not be of much importance (i.e., *how* they
fulfilled the requirements of the specification) but the specification
*itself* (i.e., *what* was fulfilled) is of *great* importance. It is such
understanding that helps you to take into consideration such things as the
lack of support for floating points, serialization and reflection in the
KVM (and any profile built on the CLDC) when doing your design work.
To me, java is a language I use and the JVM, CVM, EVM are just the
different runtime implementations (for diffrent platforms).

Based on different specifications with different requirements that meet
different needs and are...different. Referring to them all as if they were
interchangeable is the incorrectness I've been talking about.
That is my
dumbed down and simplistic understanding of all this java technology.

I realize that, and it's why I suggested previously that you should attempt
to learn a bit more about the subject before attempting to offer advice to
someone. The blind cannot lead the blind, and someone who is confused on
the subject is not going to be helped by someone *else* who is confused on
the subject.
 
D

Darryl L. Pierce

huy said:
I do see your point (even if I may not agree with it).

So you disagree that you should first understand someone's requirements
before trying to offer them a solution?
I would hope that
if the "OP"s

OP = Original Poster
intention was to follow standards, then he would have
ignored my advice.

That's putting the cart before the horse. Your answering indicated nothing
*about* standards; *I* had to point that error in your advice out. I doubt
that he would have been aware that J9 wasn't a certified VM at this point,
considering his existing confusion.
If he didn't know better or didn't care, I would have
gone with my advice which is IMO the better path at the moment. i.e SWT
vs AWT.

So, if he doesn't understand the domain, then he should just take your
advice because it's better...how? How is your suggestion "better" when you
haven't the first clue what his requirements *are* in the first place?
That's quite a daft statement to make, that you know the better solution
when you don't even know the problem...
Again I repeat, this is my opinion, based on my own experiences.
You can't expect me to ignore my experiences and recommend something
just because it's standard.

Nobody said that. I said you can't recommend a course of action when you
don't know the requirements. You don't, you just pushed your *preference*
which is different from offering a recommendation, with the difference
being you pushed what you like rather than finding out what was *needed*
and then suggesting what would *work* for *that* problem.
That's ok.

Not really. It's such a simple thing, really, that I can't understand why
you don't get it. I can only guess that you don't get it because you don't
*want* to get it or because you don't care enough about understanding the
technology to invest the minimal time needed to learn the difference. But,
hey, that's your choice and your career. Mine has been built on gaining a
thorough understanding of the technologies that I work with so that I can
always provide the most accurate, educated solution that is based on
knowledge of the domain.
That's my problem I think.

No, it's also the problem of anybody who receives your advice.
I really think I'm doing the right thing,
although you disagree. I am in agreement with you that the exact words
"J2ME is J2SE with missing APIs" taken as they are is incorrect.

That's not the only thing I'm saying now. I'm also talking about your stated
lack of concern about whether your answers are accurate. I can't see how
you think it's the "right thing" to give someone an answer that's not an
answer.
However, in terms of understanding from an applications point of view, I
truly think that's it's not as bad of a way of understanding it as you
make it sound. So we don't go around in circles, I do agree with your
basic premise that my original statement is *technically* incorrect.

Whatever. At this point, it's boiled down to a case of you saying, "I know I
was wrong, but I don't care."
That is one approach to teaching I guess. Another is by way of analogy,
and that's what I did.

What analogy did you use? And, there is such a thing as a *bad* analogy.
Might not have been the best analogy, but it's
how I understood it. Maybe I'm just too inexperienced in this whole J2ME
thing to be giving advice.

You offered no analogies. You made a claim, and that claim was 100% wrong.
Maybe on both counts. We'd have to ask him about this.

Again, whatever. Accuracy is not based on popularity. As for whether your
post was helpful, feel free to ask him.
You have a point here, but that's the thing with getting information on
the internet. You better make sure you know how to sift the good from
the crap. Especially when good to one person might be crap to another
and vice versa.

We're not talking about good and bad, we're talking about accurate an
inaccurate. And at that *I* am talking not only about that, but about your
stated lack of concern whether the information you give is useful or not
and that it's up to the person receiving the information to check your
facts for you... That is, to me, an attempt to pump up your own ego at the
expense of those who really could use some help and not some bollocks.
 
H

huy

So you disagree that you should first understand someone's requirements
before trying to offer them a solution?

I disagree with the fact that you think I don't understand OPs
requirements.

"I have been asked to build a program that would allow our handheld
scanners (Symbol 81xx) to communicate directly with our ERP."

I have programmed the exact same thing on a similar device. We actually
looked at the Symbol device as well. Based on this, I would like to
think that I would know a little bit about his requirements.


So, if he doesn't understand the domain, then he should just take your
advice because it's better...how? How is your suggestion "better" when you
haven't the first clue what his requirements *are* in the first place?
That's quite a daft statement to make, that you know the better solution
when you don't even know the problem...

See above
Nobody said that. I said you can't recommend a course of action when you
don't know the requirements. You don't, you just pushed your *preference*
which is different from offering a recommendation, with the difference
being you pushed what you like rather than finding out what was *needed*
and then suggesting what would *work* for *that* problem.

See above.

Not really. It's such a simple thing, really, that I can't understand why
you don't get it. I can only guess that you don't get it because you don't
*want* to get it or because you don't care enough about understanding the
technology to invest the minimal time needed to learn the difference. But,
hey, that's your choice and your career. Mine has been built on gaining a
thorough understanding of the technologies that I work with so that I can
always provide the most accurate, educated solution that is based on
knowledge of the domain.

I am getting that impression; which is great, I guess for what you do.

No, it's also the problem of anybody who receives your advice.

I'm feeling this remark...ouch.

We're not talking about good and bad, we're talking about accurate an
inaccurate. And at that *I* am talking not only about that, but about your
stated lack of concern whether the information you give is useful or not
and that it's up to the person receiving the information to check your
facts for you... That is, to me, an attempt to pump up your own ego at the
expense of those who really could use some help and not some bollocks.

Well if I took you on your word, I wouldn't have found out PJava is a
*predecessor* of J2ME.


Huy Do
 
C

chris

Darryl said:
JVM refers to a *specific* virtual machine specification.


Then you should properly refer to them as a *virtual machine*, IMO.


Specification for the JVM:
http://java.sun.com/docs/books/vmspec/2nd-edition/html/VMSpecTOC.doc.html

The JVM is the virtual machine that ships with J2SE. It is not a
references to *any* virtual machine that runs Java code, but a reference
to a *specific* virtual machine.

O come off it Darryl.

From <http://java.sun.com/docs/>:
** As used on this web site, the terms "Java virtual machine" or "JVM" mean
a virtual machine for the Java platform.

So JVM is an acceptable shorthand for "a virtual machine for the Java
platform".

From
<http://java.sun.com/docs/books/vmspec/2nd-edition/html/Introduction.doc.html>:

The first prototype implementation of the Java virtual machine, done at Sun
Microsystems, Inc., emulated the Java virtual machine instruction set in
software hosted by a handheld device that resembled a contemporary Personal
Digital Assistant (PDA). Sun's current Java virtual machine
implementations, components of its JavaTM 2 SDK and JavaTM 2 Runtime
Environment products, emulate the Java virtual machine on Win32 and Solaris
hosts in much more sophisticated ways. However, the Java virtual machine
does not assume any particular implementation technology, host hardware, or
host operating system. It is not inherently interpreted, but can just as
well be implemented by compiling its instruction set to that of a silicon
CPU. It may also be implemented in microcode or directly in silicon.

So the "JVM spec" is not a specification for some particular existing piece
of software, it is a spec for a whole family of implementations, present
and future. That includes software-only VMs such as Creme, CVM, IKVM,
Jamaica, JamVM, Jaos, JC, Jikes RVM, Jupiter, J9, JBed, Kaffe, Kissme, KVM,
Mika, ORP, PERC, SableVM, Wonka, etc., mixed software/hardware solutions
such as the one we are currently working on together with Quest
Innovations, and the various hardware bytecode engines that have been made.
And of course it includes the "Hotspot Client VM", "Hotpot Server VM", amd
all the other implementations Sun have shipped in various JREs.

In fact the only reasonable interpretation of "the JVM" is "all of the
above".

Stop confusing specifications with implementations, and stop trying to
invent precision where none exists. It gets annoying. :)

Have fun.
 
C

chris

Darryl said:
I'll be glad to see where you show me the categorical error, since CDC/PP
are J2*M*E (category 1) and J2*S*E is a separate category of Java
technology.


An implementation of *what*? A *J2ME specification*. Is such a
specification a part of Java 2 Standard Edition? *No*. Therefore, no
category error has been made on my part. The category error was in Huy's
referring to the CVM as "the JVM".


None of that was in dispute. However, none of that shows where I've made a
categorical mistake. Can you show me where I've done so?

Yes: you confuse a specification (J2ME, J2SE) with an implementation (CDC
Hotspot, J9). Sure looks like a categorical error to me. Like confusing a C
standard with a C compiler, or the HTTP protocol with a web server. Or a
railway train, a railway timetable, and a railway accident.
 
H

huy

Based on different specifications with different requirements that meet
different needs and are...different. Referring to them all as if they were
interchangeable is the incorrectness I've been talking about.

Well whatever happened to Java's claim of write once run everywhere ? I
thought that was the essence of Java. As long as there was an
implementation of the java virtual machine on your target platform,
theoretically, I should be able to run my java code. The fact that I
can't, is not my own failing, but the failing of either the spec or the
implementation of those java virtual machines.



Huy
 
H

huy

O come off it Darryl.
From <http://java.sun.com/docs/>:
** As used on this web site, the terms "Java virtual machine" or "JVM" mean
a virtual machine for the Java platform.

Hang on a sec. I'm not sure who to believe now. Chris has provided an
explanation from the Java GOD themselves, but Darryl seems very
confident in his knowledge (maybe there is more then one Java GOD).

Seeing I also use *virtual machines* like vmware, I'll get confused if I
use the terminology suggested by Darryl, because people might complain
about being too vague about which type of virtual machine I am talking
about. I've also been advised against using JVM in the generic sense.
What is a man to do :)

Huy
 
D

Darryl L. Pierce

chris said:
O come off it Darryl.

Come off of what, exactly? Being precise? You said that Sun would have to
change "change every occurrence of JVM to read 'JVM, CVM, KVM, or any
compliant blah blah blah', which would make for pretty turgid prose." and
the best you've come up with is a footnote on a link that says, basically,
"for these pages, the term JVM refers to any virtual machine". That's
hardly showing the JVM is a generic term, mate. JVM refers specifically
(i.e., in technical papers) to the virtual machine that ships with the J2RE
and J2SDK. In the VM specification for core Java it says "[t]his book
specifies an abstract machine. It does not document any particular
implementation of the Java virtual machine, including Sun
Microsystems" (chapter 3) to let you know that *there* they're using the
term "JVM" in a *different* sense than normal, which is to refer to the VM
in J2RE.
From <http://java.sun.com/docs/>:
** As used on this web site, the terms "Java virtual machine" or "JVM"
mean a virtual machine for the Java platform.

So JVM is an acceptable shorthand for "a virtual machine for the Java
platform".

You forgot to mention that the above quote is a footnote to the link
referring to the Java virtual machine specification page. Did you happen to
go read what was being linked to with the above? Chapter 3 is interesting,
since in *that* place they refer to a generic Java virtual machine, which
they refer to *there* as "the JVM". Also look at the part where it says,
"This book specifies an abstract machine. It does not document any
particular implementation of the Java virtual machine, including Sun
Microsystems'" (chapter 3 intro). IN THAT PLACE they are using JVM and Java
Virtual Machine as short hand for any virtual machine, and they *tell* you
that it's being used different in the specification handbook.

Now, go take a look at what the name of the virtual machine that ships. What
is its designation? The JVM.
The first prototype implementation of the Java virtual machine, done at
Sun Microsystems, Inc., emulated the Java virtual machine instruction set
in software hosted by a handheld device that resembled a contemporary
Personal Digital Assistant (PDA). Sun's current Java virtual machine
implementations, components of its JavaTM 2 SDK and JavaTM 2 Runtime
Environment products, emulate the Java virtual machine on Win32 and
Solaris hosts in much more sophisticated ways. However, the Java virtual
machine does not assume any particular implementation technology, host
hardware, or host operating system. It is not inherently interpreted, but
can just as well be implemented by compiling its instruction set to that
of a silicon CPU. It may also be implemented in microcode or directly in
silicon.

So the "JVM spec" is not a specification for some particular existing
piece of software, it is a spec for a whole family of implementations,
present and future.

Did you read chapter 3 by any chance?
That includes software-only VMs such as Creme, CVM,
IKVM, Jamaica, JamVM, Jaos, JC, Jikes RVM, Jupiter, J9, JBed, Kaffe,
Kissme, KVM, Mika, ORP, PERC, SableVM, Wonka, etc., mixed
software/hardware solutions such as the one we are currently working on
together with Quest Innovations, and the various hardware bytecode engines
that have been made. And of course it includes the "Hotspot Client VM",
"Hotpot Server VM", amd all the other implementations Sun have shipped in
various JREs.

Apparently, you didn't. They tell you *in the book you're citing* that in
*that book* they're using the term JVM to refer to no specific
implementation. Why? Because they're giving you the overview of the virtual
machine's manner for handling the byte codes produced by the Java compiler.
This isn't *that* difficult to understand, really. This book even tells you
that this, if you read it.
In fact the only reasonable interpretation of "the JVM" is "all of the
above".

No, it's not. But, you'd have to take the time to read it first to realize
what is being said rather than assuming your conclusions.
Stop confusing specifications with implementations, and stop trying to
invent precision where none exists. It gets annoying. :)

Tell me, what is the designation for the virtual machine that ships with the
J2RE? Then tell me, what is the designation for the virtual machine that is
defined by the CDC? Then tell me if they're the same virtual machine, please?

Point: If they are not the same, then Huy's whole statement is factually wrong,
despite the hoops you may be jumping through now to claim that "JVM" refers to
the CVM and that by claiming such claiming that CDC/PP is the J2SE minus some
APIs, which is completely and utterly *WRONG*.
 
C

Chris Uppal

huy said:
Seeing I also use *virtual machines* like vmware, I'll get confused if I
use the terminology suggested by Darryl, because people might complain
about being too vague about which type of virtual machine I am talking
about. I've also been advised against using JVM in the generic sense.
What is a man to do :)

Easy! Remember that we are speaking and writing *English*, a human language
with much (and much-needed) built-in imprecision.

In some contexts "JVM" is used as an abbreviation for Java Virtual Machine,
meaning software (or hardware) that is intended to provide the runtime
execution environment for Java (etc) programs. That's the less precise use.

In other contexts "JVM" is used an abbreviation for Java Virtual Machine,
meaning software (or hardware) that provides an implementation the "The Java
Virtual Machine Specification, Second Edition" (or some other edition). That's
the more precise use.

The word "Java" is likewise used in several ways with different levels of
precision.

Working out which meaning a speaker has in mind, or which meaning a listener
will assume you refer to if you aren't specific, is just a human skill. Most
people can do it most of the time. When that breaks down they either they ask,
or they live with the resultant confusion ;-)

-- chris
 
D

Darryl L. Pierce

Chris Uppal wrote:

Working out which meaning a speaker has in mind, or which meaning a
listener
will assume you refer to if you aren't specific, is just a human skill.
Most
people can do it most of the time. When that breaks down they either they
ask, or they live with the resultant confusion ;-)

Or they point out the imprecision and suggest to the person that they should
try to be more precise in future, and spend the next week responding to
messages that try to rationalize or justify the imprecision. ;)
 
C

chris

huy said:
I actually have heard of two version of this. Your one (Exact VM), and
Embedded VM. Jeode for example uses Embedded VM to mean EVM.

I know. But Jeode is not God. :)
 
C

chris

Darryl said:
Tell me, what is the designation for the virtual machine that ships with
the J2RE?

The Java HotSpot Virtual Machine.
<http://java.sun.com/products/hotspo...tspot_v1.4.1/Java_HSpot_WP_v1.4.1_1002_1.html>
Sometimes the -client and -server versions are spoken of as two separate
VMs.
Then tell me, what is the designation for the virtual machine
that is defined by the CDC?

It doesn't really have one. The RI that ships with the CDC devkit is called
[J2ME] CDC HotSpot Implementation, alias CVM, alias Monty.
<http://java.sun.com/products/cdc-hi/overview.html>.
This is, as is stated on that page, "a fully compliant Java virtual
machine"; that is, it complies fully with the JVM Spec.
Then tell me if they're the same virtual
machine, please?

No, they are at least 2 different VMs: Monty is said to share no code with
its bigger brothers. (Why they're so proud of that I've no idea; but the
presentations from JavaOne made a big deal of it). Depending on how much
code is shared by the Client and Server HotSpot Virtual Machine(s), it may
or may not make sense to speak of 3 VMs.
Point: If they are not the same, then Huy's whole statement is factually
wrong, despite the hoops you may be jumping through now to claim that
"JVM" refers to the CVM and that by claiming such claiming that CDC/PP is
the J2SE minus some APIs, which is completely and utterly *WRONG*.

They are all different, but they all implement the same spec (The Java
Virtual Machine Specification), and they could all answer to the name of
"the JVM" in some context. Personally I prefer to talk of "the VM", because
(1) the Java part is usually understood, and (2) it's not a trademark.
Tradmarks make bad technical terms, because the owners are wont to play
Humpty Dumpty with them.

There is no difference between the VM spec for J2ME CDC and that for J2SE.
As far as the class libraries are concerned, if a given package is
implemented in a particular CDC profile then it is implemented with exactly
the same API as in J2SE. So if you proceed on the "completely and utterly
*WRONG*" assumption that CDC/PP is the J2SE minus some APIs your
applications will work; your customers will be happy; revenue will flow,
shareholder value will be enhanced, and you will never know just how
"completely and utterly *WRONG*" your assumptions were.

Life is hard sometimes. :)
 
R

Randy Faust

J9 is absolutely, positively a certified J2ME VM. I've personally
witnessed it pass TCK certification on over 25 different OS/processor
combinations.


Randy
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads

Lost in a sea of code 1
Lost in J2ME, please help me! 4
J2ME? 2
Eclipse and J2ME 0
wma api in j2me 1
J2ME Developer in Boston,MA 0
J2ME on PDA/cellphones 0
J2ME GUI map component 1

Members online

No members online now.

Forum statistics

Threads
473,785
Messages
2,569,624
Members
45,318
Latest member
LuisWestma

Latest Threads

Top