J#

Microsoft J#

What you get …
Full access to the .NET framework
Native support for XML WebServices
Windows Forms, WebForms, Datadesigners
Creation of class libraries
etc.
JBImp: A tool for importing Java byte code into MSIL, (if you do not have source code for parts of the application)

Reasons
Migration from J++ (Microsoft customers)
Simplify things for Java developers
Academic Area
Prepare for WinFX (LongHorn)

Not available
RMI (Remote Method Invocation)
JNI (Java Native Interface)
Bytecode generation
Support for .NET Compact Framework (yet)
Under Consideration:
http://www.smartphonethoughts.com/forums/viewtopic.php?t=6111

Java Applications
Applets: J# Web Browser Controls
Swing Applications: Supplemental UI Library
Mobile Devices: J# ASP.NET & Mobile Forms
J# 2005: New Features:
Passing method parameters by reference
Consuming .NET Generics
Support for Java-Beans style properties.
Capabilities of other MS languages (Value types, Custom attributes, Enumerations)

Practical examples today
Applet in web browser
Java Swing Application
Mobile Virtual Classroom (subset) for MS Pocket PCs/SmartPhones

Applet
Class Library
TagConvert.exe

Slide 9

Swing Application

Swing Application
“ … much of the functionality described in the Java 2 JFC Swing specification. It also adds support for much of the functionality found in the JDK 1.2 java.util package ”

Mobile Virtual Classroom
Idea: Access to the VCR from devices running Windows CE >=3.0 (2002)
Requirement: Thin client
No J# support for .NET CF
Approach:
J# ASP.NET Mobile Web Apps
JScript
Pocket Internet Explorer

Mobile Virtual Classroom
Current VCR: Use of Sockets
Solution:
Creation of “middle layer”
.NET Remoting to the rescue:
Single Call
Singleton
Client-Activated Objects (CAO)

Slide 14

Mobile Virtual Classroom
Demo

Mobile Virtual Classroom

Mobile Virtual Classroom
Demo