| By Jonas Martinsson | Article Rating: |
|
| May 22, 2008 07:30 AM EDT | Reads: |
9,489 |
Have you ever wished you could run ASP.NET applications on Linux, without having to rewrite your code or leave the Visual Studio development environment? In this article, I show you how to port Steve Clements’ AJAX ASP.NET RSS Reader to native Java and deploy it to Apache Tomcat on Linux. I also show you how to add an AnimationExtender and a HoverMenu from the AJAX Control Toolkit in Visual Studio, while targeting Java.
How is this possible? The answer is to use Grasshopper, a free Visual Studio-based SDK built by Mainsoft in collaboration with the Mono open source community. Grasshopper 2.2 introduces full support for AJAX and seamlessly integrates with ASP.NET 2.0 AJAX Extensions and AJAX Control Toolkit, so you can add popular features such as partial-page rendering, Accordion navigation, and rounded corners by simply adding a few server controls.
In this article, I’ll show you how to:
- Analyze the source code to identify possible porting issues.
- Convert the RSS Reader and RSS Toolkit to Grasshopper project types.
- Build the ASP.NET solution for Java.
- Use the AJAX Control Toolkit to add rich client-side functionality.
- Deploy the ASP.NET application on Linux.
Analyzing the Source Code
First, identify the third-party dependencies in the source code. The RSS Reader has two: the AJAX Control Toolkit and ASP.NET RSS Toolkit, both of which are open source projects hosted on CodePlex. Since these are .NET libraries, they won’t run on Java until you cross-compile them to the Java platform.
There are various strategies for porting third-party dependencies to Java. You can:
- Check Mainsoft’s samples and code blocks to see if the component has already been ported.
- Port the component to Java EE yourself, if the source code has a permissive license.
- Check if the vendor has a Java EE alternative. Many third-party components are available for both the .NET and Java platforms, including Crystal Reports, Corda OptiMap, and Software FX.
The AJAX Control Toolkit belongs to the first category; port the RSS Toolkit, licensed under the permissive Microsoft Public License (Ms-PL), next.
Converting the Web Application
Let the porting process begin! First install Grasshopper, a free Visual Studio add-on from Mainsoft that allows all the magic between .NET and Java to happen. Grasshopper is in essence a cross-compiler that turns .NET bytecode (MSIL) into Java bytecode. The build output is a binary .jar file, not Java source code, although you could run the bytecode through a Java disassembler if you wanted to. Grasshopper integrates seamlessly with Visual Studio’s build system and triggers its own code validation, code generation, and deployment build steps after Microsoft’s regular build to MSIL is finished. On top of that, Grasshopper comes bundled with the Apache Tomcat Web application server, so there is no need to deploy test builds on a remote Web server during development.
Published May 22, 2008 Reads 9,489
Copyright © 2008 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Jonas Martinsson
Jonas Martinsson is an entrepreneur and a member of Mainsoft's development team. He helped to integrate Mainsoft's .NET-Java EE interoperability products with the Visual Studio IDE.
![]() |
Jonas Martinsson 05/27/08 04:24:47 AM EDT | |||
Prasanna, you can download the project source code at http://dev.mainsoft.com/Portals/0/Downloads/RSSReader.zip |
||||
![]() |
Prasanna 05/22/08 09:22:37 AM EDT | |||
Liked the article "Deploying an ASP.NET AJAX RSS Reader on Linux", if you could provide the document a little more detailed with sample examples, that might have been a great value add |
||||
- The Importance of Abstraction in Cloud Computing
- Reality Check at the Cloud Expo
- Whatever the Apple iPad Is, It Apparently Leaks Like a Sieve
- Microsoft’s First Step Toward Cloud Computing
- Six Enterprise Megatrends to Watch in 2010
- Economy Drives Adoption of Virtual Lab Technology
- My Personal 2010 Predictions
- How PowerBuilder Got Its Groove Back
- Cloud Computing Was the Big News of 2009
- Adaptivity “Platinum Plus Sponsor” of Cloud Expo
- UPDATE: Adobe & IE Implicated as China’s Spy Holes
- Top Ten Reasons To Use "Real" Outlook On Your iPhone
- Kindle 2 vs Nook
- Cloud Expo New York Call for Papers Now Open
- The Importance of Abstraction in Cloud Computing
- Reality Check at the Cloud Expo
- Whatever the Apple iPad Is, It Apparently Leaks Like a Sieve
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- Microsoft’s First Step Toward Cloud Computing
- Six Enterprise Megatrends to Watch in 2010
- Economy Drives Adoption of Virtual Lab Technology
- My Personal 2010 Predictions
- How PowerBuilder Got Its Groove Back
- Cloud Computing Was the Big News of 2009
- Google Maps and ASP.NET
- Crystal Reports XI & How It Has Changed
- Converting VB6 to VB.NET, Part I
- Creating Controls for.NET Compact Framework in Visual Studio 2005
- Where Are RIA Technologies Headed in 2008?
- How to Write High-Performance C# Code
- AJAX World RIA Conference & Expo Kicks Off in New York City
- Implementing Tab Navigation with ASP.NET 2.0
- i-Technology Photo Exclusive: Bill Gates & Steve Jobs In "Nerds"
- .NET Archives: Getting Reacquainted with the Father of C#
- Programmatically Posting Data to ASP .NET Web Applications
- i-Technology Viewpoint: "SOA Sucks"




















