Migrating Java Applications to the .NET Framework

Download Report

Transcript Migrating Java Applications to the .NET Framework

Session Code: TLS330
Migrating Java Applications
to the .NET Framework
Andrew Jenks
Program Manager
Visual Studio .NET
[email protected]
Brian Keller
Product Manager
Visual J#.NET
[email protected]
Agenda
MSJVM Situation
Transition Options
Transition Tools and Resources
The Road to Whidbey
MSJVM Situation
Microsoft JVM Situation
In a settlement agreement reached in
January 2001 to resolve a dispute
over Microsoft's distribution of its Java
implementation, Sun and Microsoft
agreed to limit the duration of
Microsoft's use of Sun's source code
and compatibility test suites to support
the MSJVM until January 2004
Microsoft/Sun Extension
Sun and Microsoft have agreed to
extend Microsoft's license to use
Sun's Java source code and
compatibility test suites until
September 30, 2004, and gives
Microsoft the ability to address
potential security issues, effectively
giving customers another year to
manage the transition
Transition Options
Transition Options
Infrastructure/Desktop
Custom Applications
Vendor Applications
No action
IE trusted zone
lockdown
Desktop
MSJVM
removal
Desktop thirdparty JRE
replacement
OS deployment
No action
Retire
application
.NET migration
Other rendering
technologies
Third-party JRE
development
No action
ISV product
service pack or
upgrade
MS product
service pack or
upgrade
Systems Engineer
Developers
Application Support
No Action
Custom Applications
No action
Retire
Application
.NET migration
Other Rendering
Technologies
Third-party JRE
development
No Action
•No unexpected surprises
•No development effort
•The MSJVM will continue
to run Java applications
However
•The MSJVM is exposed as
unsupported software
Retire Application
Custom Applications
No action
Retire
Application
.NET migration
Other Rendering
Technologies
Third-party JRE
development
Retire Application
•Requires that there is no
longer a need for the
application
.NET Migration
Custom Applications
No action
Retire
Application
.NET migration
Other Rendering
Technologies
Third-party JRE
development
.NET Migration
•Supported development
platform
•Leverages new
technologies
•Same vendor support
with conversion tools
However
•Re-engineering effort
•Development Team and
readiness for .NET
Other Rendering Technologies
Custom Applications
No action
Retire
Application
.NET migration
Other Rendering
Technologies
Third-party JRE
development
Other Rendering
Technologies
•DHTML, ASP, Flash, etc.
•Well suited for visual web
presentation
However
•Re-engineering effort
•Development Team and
readiness for other
technologies
•Potential new vendor
support
Third-Party JRE Development
Custom Applications
No action
Retire
Application
.NET migration
Other Rendering
Technologies
Third-party JRE
development
Third-party JRE
development
•Runs Java applications
However
•Re-engineering effort
•Development Team and
readiness for third-party
JRE development
•New vendor platform
Transition Tools and Resources
Transition Tools
Infrastructure
Group Policy
settings for IE
lockdown with
trusted zones
MSJVM
removal tool
SMS and SUS
for deployment
and upgrades
Systems Engineer
Custom Applications
Diagnostic Tool for
the Microsoft VM
.NET migration
Visual C# - Java
Language
Conversion
Assistant (JLCA)
Visual J# - J#
Browser
Controls
Training webcasts
on tool usage
Developers
Vendor Applications
ISV product
transition
inventory
MS product
transition
inventory
Application Support
Diagnostic Tool for the Microsoft VM
Helps developers and IT pros determine
the extent of their reliance on the MSJVM
Search local or distributed machines for
Instances of the MSJVM
EXEs, DLLs, and OCXs which link to the
MSJVM
Class files
Uses of the Microsoft extensions for the Java
language (JavaCOM, J/Direct, etc.)
Web files and URLs with applet tags or Object
or Embed tags which point to the MSJVM
Beta available in early November ‘03
Diagnostic Tool for the
Microsoft VM
Java Language Conversion
Assistant
Convert Java language and API calls to C#
and the .NET Framework
Helps developers move; does not move for
developers
Fastest way to move Java application to C#
Easiest way to take advantage of new
features of the .NET Framework
Additional MSJVM-specific features in JLCA
2.0
Converting Applets with
JLCA
Visual J# .NET
Brings the Java language syntax to the
.NET framework
Maintains the simplicity and familiarity of
the Java language
Supports most of the JDK functionality
and MS Extensions found in J++
Can fully target the .NET Framework
Carry forward existing skills and code
investments
J# Browser Controls
Provides migration path for applet
source code to J#
Requires little or no source code
modification
Available for download today!
http://msdn.microsoft.com/vjsharp/
browsercontrols
Send feedback to
[email protected]
J++ Upgrade Wizard and
J# Browser Controls
Transition Aids and Services
Infrastructure
Custom Applications
Vendor Applications
Microsoft MSJVM Transition Guide
Business Technology Reviews to assist in
identifying dependencies and migration options
Free PSS incident support for transition tools and
MSJVM migration to .NET
Case Study examples on migration
Supported public newsgroups
Prepared Service Consultants and Partners
Additional information on
http://www.microsoft.com/Java
MSJVM Transition Guide
Walks developers and IT pros through all
stages transition
Assessing your situation
Analyzing your results
Locking down now
Migrating to .NET
Rewriting using other rendering technologies
Moving to another JRE
www.microsoft.com/java
Summary
Awareness – review the available
materials at http://www.microsoft.com/Java
Assess – determine your reliance on the
MSJVM
Planning – find the best solution(s) that
meet your company’s requirements
Transition – begin the process sooner
rather than later
Road to “Whidbey”
J# “Whidbey”
J# Browser Controls integrated
into runtime
Swing functionality integrated into
runtime
APTC enabled
Full CLS Extender
Author enum types
Author value types
CLSCompliant attribute
Support for strictfp and volatile
JLCA 2.0 – JSP and Servlets
Huge community request to offer JSP and
Servlet migration
Support present in JLCA 2.0
JSP pages converted to ASP.NET inline
code files
Servlets converted to code-behind solutions
Conversion success nearly 90%
JSP to ASP.NET
Conversion Guide
The guide contains
Guidance on how to use the JLCA
Video presentations
White Papers
Sample code
The guide was built around a
single case study
www.codenotes.com
A Random House website
A Conversion Case Study
The website (www.codenotes.com)
Random House's Developer Portal
Built in support of the CodeNotes® book
series
The Conversion
Entire website migrated to ASP.NET
Before and after code is available
Detailed presentations and white
papers in guide
JLCA 3.0
In development now
Adds support for
J2EE 1.3
JDK 1.3
Extensibility of the JLCA
Beta available early 2004
Currently seeking EAP customers
interested in evaluating early builds
JLCA 3.0: Swing
Conversion
PDC Resources
Product Pavilion
Java and .NET: Migration and Interop
Ask the Experts
Tuesday, Oct. 28th 6:30-9PM, Halls
F&G
Hands-On Labs
Party
Wednesday, Oct. 29th 7:30PM,
Universal Studios
Resources
JLCA 2.0
http://msdn.microsoft.com/vstudio/
downloads/tools/jlca/default.aspx
Visual J# and J# Browser Controls
http://msdn.microsoft.com/vjsharp
http://msdn.microsoft.com/vjsharp/
browsercontrols
MSJVM Transition Guide
http://www.microsoft.com/java
JSP to ASP.NET Migration Guide
http://msdn.microsoft.com/asp.net/using/mi
grating/jspmig/default.aspx
© 2003-2004 Microsoft Corporation. All rights reserved.
This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.