A system and method for delivering application data to both constrained and non-constrained
devices. In a Java implementation, the Abstract Window Toolkit (AWT) is used when
a client computer system is not constrained and is running the Java Virtual Machine.
When the client computer is constrained and, therefore, is unable to execute the
Java Virtual Machine, the server computer uses a second library called a Markup
Language Window Toolkit (MLWT) with the same API names as in the AWT. The result
of the Java Virtual Machine executing APIs from the AWT within a browser on the
client computer system are graphics that appear on the client's browser display.
Correspondingly, the result of a server executing a Java Virtual Machine executing
APIs from the MLWT is HTML and/or JavaScript that is capable of being processed
and displayed by a client computer system without using a Java Virtual Machine.
The system and method further determines whether a client computer system is constrained
resulting in the use of either the AWT or the MLWT.