New features in Project Zero Core M2
Core - The core Project Zero platform and programming model.
Zero Resource Model
Zero Resource Model (ZRM) simplifies resource-handler development to a simple "model" definition; typical resource-handler features, such as handlers for create/read/update/delete/search, persistence, and content negotiation, are provided by the platform. There are many enhancements planned for ZRM, including automatic db table creation and etag support.
Debug console
A new
debug console provides Web-based access to request/response logging as well as log output generated during request processing. The debug console is part of the
Developer Web tools.
Global Context enhancements
The Global Context has been revised for simplification and performance. GC changes from M1 are summarized on this
migration page.
Groovy 1.1-beta-2
The Groovy support has been upgraded to 1.1-beta-2. Among other improvements, Groovy users may now access Zero bindings from closures and Groovy objects, as well as scripts.
Dojo 0.9
The IBM build of Dojo 0.9 is included with M2. Dojo 0.9 APIs are expected to be close to those in the pending Dojo 1.0 release, so users can get a jump on the latest. The core utilities and many of the Zero samples have been updated for Dojo 0.9.
Security - Core security and the user service.
Active Content Filtering
ACF version 2 has been released with improved internal design and logic. APIs remain unaffected.
Instance-based security
For certain types of applications, you can group resources according to who owns them. Securing such applications can be hard because you might not know user names and groups in advance and, even if you did, they might be too numerous to track manually. Project Zero enables authorizing URIs with user names or group names.
Improved error reporting for Single Sign On (SSO) protected resources
Change code to distinguish between a SSO authentication versus authorization failure. Code will return a 401 for invalid or missing tokens when requesting a SSO secured resource (prior status code was 403).
Create new authorization event handler
As part of the ongoing effort to allow security to be more pluggable, moving authorization to it's own event. This will allow libraries to override and/or add new authorization handlers.
Tooling - Eclipse and Command Line tooling for Project Zero.
New get command option to download entire repository - 'zero get all'
Improved Standalone packaging
Dependencies are now contained in a private repository inside the package. The private repository is first (highest priority) in the resolver chain.
Apache Ivy 2.0
Moved from Apache Ivy 1.4.1 to 2.0-alpha2.
Samples - Example code, including Zile, the Employee Demo and tutorials.
Tutorials
The tutorials have been updated to work with Dojo 0.9 and Embedded Derby. Database setup and configuration are much easier with the
zero.data.setup.webtools, especially with Embedded Derby. You no longer have to install a database.
Employee
Employee Demo has also been updated to work with Dojo 0.9. A second version of the Employee Demo demonstrates simplified development for resource-oriented applications with the new
Zero Resource Model support.
Zile
The Zile sample and demo application has a new look. The sample application of Zile is called Zero Zone, a social network for students. It includes many typical social networking features such as Profile and Friends, Group and Group Members, Blog, Todolist, News, Self-Registration, and Message board. Zile also works with Embedded Derby; it is real easy to install and run now.
Services
There are a number of additional sample services, including Tagging, Commenting, and Rating in this milestone.