1. What is Windows Azure SDK for Java Developers?
As part of Microsoft's commitment to Interoperability, this open source project is an effort bridge Java developers to Windows Azure. This is an open source project to provide software development kit for Windows Azure and Windows Azure Storage - Blobs, Tables & Queues
- Overview
- Enables Java developers to take advantage of the Microsoft Cloud Services Platform - Windows Azure.
- Provides consistent programming model for Windows Azure Storage (Blobs, Tables & Queues)
- Features
- Java classes for Windows Azure Blobs, Tables & Queues (for CRUD operations)
- Helper Classes for HTTP transport, AuthN/AuthZ, REST & Error Management
- Manageability, Instrumentation & Logging support
- Support for storing Java sessions in Azure Table Storage
Read the Getting Started guide for more info on developing with the Windows Azure SDK for Java and learn more about the Windows Azure SDK for Java Architecture below.
2. Project contributors
Windows Azure SDK for Java is an open source collaboration project driven by Soyatec and Microsoft,

Soyatec, located in Paris France, Xi'An and ShenZhen China, is an international software company and one of major Eclipse solution providers. It was Founded in 2006 by a group of Java engineers who had worked on Eclipse since 2002. As Eclipse Foundation Member, it has contributed to several Eclipse projects: Visual Editor, BPMN2 and e4. It develops and markets a world wide first XAML solution for Java: eFace, and provides OutSourcing Eclipse development in China
Microsoft is the project sponsor and provides Architectural & Technical Guidance on its Windows Azure platform.
3. What is the Windows Azure SDK for Java Developers?
About The Windows Azure platform
The Windows Azure platform is comprised of
Windows Azure: an operating system as a service;
SQL Azure: a fully relational database in the cloud; and
.NET Services: consumable web-based services that provide both secure connectivity and federated access control for applications.

Where does the Windows Azure SDK for Java fit in?
If we look at the logical architecture, the Windows Azure SDK for Java provides access to Windows Azure's storage, computation and management interfaces by abstracting the REST/XML interface for any Java based application:

From a deployment’s perspective, you can either deploy the SDK with a web application or with a desktop application:

Additional resources:
- Windows Azure Tools for Eclipse (www.windowsazure4e.org):
- this project uses the Windows Azure SDK for Java for the implementation of the storage explorer feature.
- Getting started with Windows Azure:
4. Roadmap
The following milestones are planned for next few months.
Milestone 1: October, 2009 (Community Technology Preview)
The focus of this release is around architecture, infrastructure and shared components that all Windows Azure storage types share. We are excited to show you our initial thinking of the project and an initial API for Windows Azure blob storage. We look forward to your feedback and feature requests.
Blob Storage
- Windows Azure Blob Storage
- CRUD on storage containers
- Setting metadata on storage containers
- Setting ACL on storage containers
- CRUD on blobs (in storage containers)
- Setting metadata on blobs
- Listing and searching blobs in containers
- Helper Classes for HTTP transport, AuthN/AuthZ, REST & Error Management
Table Storage
- SharedKey Lite authentication (for local table storage service from SDK)
- Query Tables - Enumerates the tables in a storage account.
- Create Table - Creates a new table within a storage account.
- Delete Table - Deletes a table from a storage account.
- Query Entities - Queries data in a table.
- Insert Entity - Inserts a new entity into a table.
- Update Entity - Updates an existing entity within a table by replacing it.
- Merge Entity - Updates an existing entity within a table by merging new property values into the entity.
- Delete Entity - Deletes an entity within a table.
- Entity group transactions - Providing transaction support on a group of entity operations.
Queue Storage
- List Queues - Lists all queues under the given account.
- Create Queue - Creates a new queue under the given account.
- Delete Queue - Deletes a queue.
- Get Queue Metadata - Returns queue properties, including user-defined metadata.
- Set Queue Metadata - Sets user-defined metadata on the queue.
- Put Message - Adds a message to the queue.
- Get Messages - Retrieves a message from the queue and makes it invisible to other consumers.
- Peek Messages - Retrieves a message from the front of the queue, without changing the message visibility.
- Delete Message - Deletes a specified message from the queue.
- Clear Messages - Clears all messages from the queue.
Milestone 2: November 2009 (Feature Completion)
Final release of the Windows Azure SDK for Java
© 2009 Soyatec. All rights reserved.