February Updates to the Windows Azure Toolkit for Eclipse – SSL Support, plus new JDKs, Windows Azure configurations and more

Microsoft Open Technologies, Inc., has released the February preview of the Windows Azure Toolkit for Eclipse. This release includes multiple updates since our October 2013 release, including SSL support, additional support for the latest versions of GlassFish and the Azul Zulu OpenJDK package, a new option to choose the A5 instance on Windows Azure, Windows Server 2012 R2, some tweaks to the menu, and a new “Auto” option for private endpoints. Have a look at the documentation update for full details.

Support for SSL

Instead of having the user manually configure every Java-based Web Application Server running on Windows Azure to accept SSL certificates and authentication, which varies from server to server, our Engineering team has developed what we call SSL Offloading. Offloading allows you to easily enable HTTPS support (one of our most requested features) without requiring configuration of SSL on your Java application server. Instead, SSL authentication is handled set up by the Toolkit automatically, using IIS + and Application Request Routing (ARR) under the hood in your VM. So after the decryption, your Java Web application Server receives (and responds with) just standard HTTP. This also works in conjunction with sticky sessions for session persistence and the ACS filter for user authentication.

To enable SSL offloading, select the Worker Role you want to work with in Role Properties, then click on Enable SSL Offloading (HTTPS) , as shown below. You will be asked to confirm an endpoint change to 443 (HTTPS) and provide a certificate. Note that this change will only happen for this role. This allows you to have some roles without SSL, for example for a Website home page, but other roles with SSL enabled for access only by authenticated users or requiring more secure communication.

clip_image001

Customizable certificate name (CN) in the self-signed certificate creation UI

You may already be familiar with the Toolkit’s UI to easily generate self-signed certificates for testing purposes. (It’s recommended that you use a certificate verified by a recognized SSL certificate provider for staging and production to avoid users seeing browser warnings about untrusted connections and unsigned certificates).

Previously, you could generate certificates with the same hard-coded Common Name (CN) for all new certificates. Specifying your own name helps track and manage multiple certificates in the Windows Azure portal used for different purposes (like SSL vs Remote Desktop). Here’s a sample of the enhanced UI in action:

clip_image002

Support for GlassFish OSE 4

Glassfish OSE 4 joins the multiple versions of Tomcat, Jetty, JBoss and Glassfish OSE 3 as the latest option to include as part of your deployment package. As before, you can test your deployments locally in Eclipse before you deploy with full emulation.

Here’s the full list of Application Servers recognized by the Toolkit in this release:

clip_image003

More Options for Azul’s Zulu Open JDK package

In July we announced a partnership with Azul Systems, and in September Azul Systems released Zulu, an OpenJDK Build for Windows Azure leveraging the latest advancements from the open source community. Zulu has been an option under the 3rd party JDK Deployment Project options since September’s announcement, and since then Zulu v7 update 40 and now update 45 are available options that the Toolkit knows how to deploy automatically under the hood in Windows Azure, without you having to download them to your local computer first.

Here’s an example of the new JDK selection, showing a deployment being configured with the latest version of Zulu selected to be part of the deployment package:

clip_image004

In other OpenJDK news, Java developers working with the latest Azul Zulu OpenJDK v1.7 package on 64 bit Windows Server machines can now automate the process using the Microsoft Web Platform Installer (WebPI). Full details here.

New Features when Publishing: Select a Target OS

In the October release we moved the target OS from the project properties a more prominent place in the publishing process. In this release we’ve added Windows Server 2012 R2 support for the target OS:

clip_image005

A5 VM support

In this release we’ve also added support for the Windows Azure A5 instance configuration. The A5, A6, and A7 instances provide larger amounts of memory more suited for high-throughput applications. Detailed configurations of these instances are available here.

clip_image006

A new Toolbar button look, and a new button for creating Self-Signed Certificates

The engineering team engaged a designer to create new menu icons to match the standard eclipse “flat” look. They’re still all there in the same place, but they look a little different now. We’ve also added a button to the self-signed certificate creation wizard. The graphical face lift of the Toolkit is still a work in process with more coming later, primarily motivated by Windows Azure’s own latest graphical scheme updates.

clip_image007

clip_image008

Set private endpoint ports to Auto

Now you can set a private port to “auto” for input endpoints and internal endpoints, the equivalent of using “*” as the private port number in CSDEF. Previously, you could only assign a specific port number. The auto setting lets you rely on Windows Azure, when appropriate, to assign a free port number to that endpoint.

clip_image009

Getting the Toolkit

Here are the complete instructions to download and install the Windows Azure Toolkit for Eclipse, as well as updated documentation.

Ongoing Feedback

We listen and respond to the community, you are our compass to know we’re going in the right direction! We value your feedback on how we can make it make it easier to test and deploy your Java applications on Windows Azure and we appreciate code contribution proposals. As always, let us know how the latest release works for you and how you like the new features!  To send feedback or questions, just use MSDN Forums or Stack Overflow.