Thursday Sep 26, 2013

Session Report: 50 New Features of Java EE 7 in 50 minutes

 by Timothy Beneke

On Tuesday afternoon, noted Java EE authors Arun Gupta and Antonio Goncalves offered a whirlwind tour of new features in “Java EE 7: Fifty New Features of Java EE 7 in 50 Minutes”. Gupta is legendary at Oracle for his hard work and astute grasp of the Java EE platform. His blog offers a wealth of insight into Java EE and other Java matters. He is the author, most recently, of Java EE 7 Essentials published by O’Reilly. Goncalves is one of the most highly regarded writers on EE anywhere and the author of Beginning Java EE 7, published by Apress.

Java EE 7’s new features enhance HTML5 support, increase developer productivity, and further improve how enterprise demands can be met. Developers will write significantly less boilerplate code, have better support for the latest Web applications, and gain access to enhanced scalability and richer, simpler functionality. The session did a stellar job of spelling out the details to a packed house.

With four new components (WebSocket, JSON-P, batch, and concurrency), and three old ones significantly updated (JAX-RS, JMS, and EL), along with other significant changes to the platform, a lot of new functionality has been added.

They divided the new Java EE 7 features into 19 categories and explained an average of two to three features in each category.  Here were the categories:

CDI 1.1 (JSR 346)
Bean Validation 1.1 (JSR 349)
Interceptors 1.2 (JSR 318)
Concurrency utilities 1.0 (JSR 236)
JPA 2.1 (JSR 338)
JTA 1.2 (JSR 907)
EJB 3.2 (JSR 345)
JMS 2.0 (JSR 343)
Servlet 3.1 (JSR 340)
Web Socket 1.0 (JSR 356)
Expression Language 3.0 (JSR 341)
JSF 2.2 (JSR 344)
JAX-RS 2.0 (JSR 339)
JSON-P 1.0 (JSR 353)
Batch 1.0 (JSR 352)
JavaMail 1.5 (JSR 919)
JCA 1.7 (JSR 322)
Java Connector Architecture
Default Resources

Here are just a few of the high points:

CDI 1.1 (JSR 346) enables finer scanning control and the ability to veto the processing of a class or package. Bean Validation 1.1 (JSR 349) allows for method validation and the ability to pre/post conditions on method and constructors. Interceptors 1.2 (JSR 318) focused on the ability to associate an Interceptor associated with a constructor and the ability to prioritize interceptor bindings.

For Concurrency utilities 1.0 (JSR 236), the emphasis was on ManagedExecutor with a focus on:
* User threads in Java EE applications
* The ability to support simple and advance concurrency design patterns
* And to extend Concurrency Utilities API from Java SE (JSR 166y)

Further emphasis in concurrency was on ManagedThreadFactory and DynamicProxy.

Dynamic Proxy:
* Creates dynamic proxy objects, and adds contextual information available for applications running in Java EE environment
* It supports Classloading, JNDI, Security, …

Also covered as part of concurrency: ManagedExecutor
* User threads in Java EE applications
* Support simple and advance concurrency design patterns
* Extend Concurrency Utilities API from Java SE (JSR 166y)
– java.util.concurrent package

In addition: ManagedScheduledExecutor
* Managed version of ScheduledExecutorService
* Submit delayed or periodic tasks

For JPA 2.1 (JSR 338), standardized database schema generation and the ability to define additional indexes in schema generation were emphasized. JTA 1.2 (JSR 907) was praised for its capacity for transaction management on Managed Beans as a CDI interceptor binding; in addition, it offers CDI scope whose lifecycle is scoped to the currently active JTA transaction.

They discussed WebSocket and annotated server endpoint which enables full-duplex bi-directional communication over a single TCP connection.

JSON Builder creates an object model (or an array) in memory by adding elements. JsonParser is an event-based parser that can read JSON data from a stream.

All in all, it was an impressive display of Java SE 7 expertise.

Java EE 7 Essentials by Arun Gupta

Beginning Java EE 7 by Antonio Goncalves

Be sure to check out Parleys.com in early October to listen to the entire session. It's well worth it.

Friday Jul 19, 2013

Java API for JSON Processing: An Introduction to JSON

A new article, now up on otn/java, by Oracle’s Jitandra Kotamraju, titled “Java API for JSON Processing: An Introduction to JSON,” takes a look at how Java API for JSON Processing provides portable APIs to parse, generate, transform and query JSON, also known as JavaScript Object Notation. Kotamraju, a principal member of the technical staff at Oracle, is the JSON Processing specification lead.

JSO, a lightweight, text-based, language-independent data exchange format that is easy to read and write by both humans and machines, can represent two structured types: objects and arrays. Kotamraju, the JSON Processing specification lead, explains that “an object is an unordered collection of zero or more name/value pairs. An array is an ordered sequence of zero or more values. The values can be strings, numbers, booleans, null and these two structured types.”

JSON is frequently used in Ajax applications, configurations, databases, and RESTful web services. JSON is offered as the data exchange format with their RESTful web services by all popular websites.

Kotamraju gets under the hood with both the object model and streaming APIs. He concludes that the API for JSON Processing offers the following capabilities:
* “Parsing input streams into immutable objects or event streams
* Writing event streams or immutable objects to output streams
* Programmatically navigating immutable objects
* Programmatically building immutable objects with builders”

The API forms a base for building data binding, transformation, querying, or other manipulation APIs. JAX-RS 2.0 provides native integration for the Java API for JSON Processing.

Check out the article here.

Friday Mar 08, 2013

The Tech Events over 2 days

Today is International Women's Day and Global Tech Women founder Deanna Kosaraju commemorates the event by organizing the Voices Global Conference, a live streaming event celebrating women in technology. Women technologists from over 20 countries present a collection of technical talks including software for data center, testing, breakthrough innovation frameworks, community building, humanitarian projects, leadership, and more. Attendees can participate in group discussions, network online or at local gatherings, and watch the sessions online. All the sessions are streamed live and recorded. Registration is open. 

Another conference starting today is Java Developers Conference (JDC) in Cairo, Egypt. The conference brings together 600 developers and students for the biggest Java conference in Middle East and North Africa today and tomorrow. The Egyptian Java User Group (EGJUG) is organizing the two-day forum for knowledge exchange with its 4 tracks and 40 sessions in English and Arabic. 

Oracle technologist Mike Keith presents "creating a configuration standard for Java EE". Architect Christ Bailey has a talk titled "From Java Code to Java Heap The Adventurous Developer's guide to JVM Languages." Software Architect and JCP member Mohamed Taman  presents "a hack session titled JEE7.next() revealing the power of Websocket, JSON APIs & HTML5." Technologist Jernej Kase talks about "increasing Java EE development productivity to the max - for free." 

Also this weekend, Daniel Sachse is organizing a Google hangout hack night Saturday March 9, 2013 at 10:00 a.m. PST. Participants are expected to contribute to a JSR about Java EE technologies such as CDI and JSF among others. 


Friday Feb 22, 2013

Arun Gupta on Higher Productivity from Embracing HTML5 with Java EE 7

Oracle’s Java evangelist and noted Java EE expert, Arun Gupta, presented a session at the annual IOUC (International Oracle User Community) Summit, held January 14–16, 2013, at Oracle headquarters in Redwood Shores, California, where more than 100 top user group leaders from around the world gathered to share best practices, provide feedback, and receive updates from leading Oracle developers.

Gupta’s talk, titled "The Java EE 7 Platform: Higher Productivity and Embracing HTML5," presented a glimpse into the rich possibilities that will be available in Java EE 7 upon its release in the spring of 2013. He covered several major developments, including:

* Java API for RESTful Web Services 2.0
* Java Message Service 2.0
* Java API for JSON Processing 1.0
* Java API for WebSocket 1.0
* Bean Validation 1.1
* Batch Applications for the Java Platform 1.0
* Java Persistence API 2.1
* Servlet 3.1
* Concurrency Utilities for Java EE 1.0
* JavaServer Faces 2.2

Gupta focuses on ways in which Java EE 7 offers higher productivity; less boilerplate; richer functionality; more default options; and HTML5 support in the form of WebSocket and JSON. He also observed that the cloud is in need of more standards. From the article:

"There are not enough standards in the cloud with W3C and other standards bodies. More standards are needed so that we can define a Java API for the cloud. Premature standardization can also be a problem if not enough innovation has taken place. So what is the right thing for the platform? We have reached out to the community, the core group members, and the executive committee of the Java Community Process and have focused on providing higher productivity and on embracing the HTML5 platform more closely. We are going to use dependency injection a lot more, which will give developers the ability to write less boilerplate code and offer richer functionality such as batch applications and caching. Similarly, for HTML5, we are embracing WebSocket functionality and the ability to parse and generate a JSON structure. We are providing support for HTML5-friendly markup as part of JSF.”

Gupta summarized the strengths of the various JSRs and closed by encouraging developers to participate in Adopt-a-JSR, a project that enables them to, “pursue their interest in particular Java EE 7 JSRs and download code, play with it, report bugs, and offer feedback to Java EE 7 specification leads.”

Check out the article here.

Friday Nov 16, 2012

Devoxx!!

 Announcing Devoxx London! Taking place on  March 26th and 27th, 2013 right before Devoxx  France on March 28th and 29th, this will be the first  edition of Devoxx UK!. The call for papers begins  on December 1st for Devoxx in London and Paris.  Speakers will be able to present at the two  conferences in the same week. Oracle committed  to fully sponsor the three Devoxx conferences in  2013 with a platinum sponsorship. Over 5,000 developers are expected to attend those conferences.

Five dancing NAO robots welcomed attendees at the keynote. Stephan Janssen offers the JUGs to replicate Devoxx4Kids workshops using his content and web infrastructure.  He recommended organizing kid events because “the workshops were really fun and such rewarding experience.” Stephan also announced the redesign of Parleys with Html 5 and GlassFish. Friendlier to speakers, they will be able to post their slides online before their talks and then sync the talk's sound track with the slides.

Nandini Ramani, VP of product development explained in her keynote address the growing role of Java from enterprise application development to cloud computing to embedded machine-to-machines systems. “Java continues to drive the applications and devices that enrich our interactivity with the world around us” she said.

The Java platform has expanded its reach with the OS X and Linux ARM support on Java SE and Java embedded with two new releases, Java SE embedded and Java Embedded Suite 7.0 middleware platformComing up next year is JDK 8, which will include Project Lambda, Project Nashorn and more. As part of that release, JavaFX will offer 3D and third-party component integration. At Devoxx, the slick and interactive schedules were designed with JavaFX. The earliest version of the Java EE 7 SDK is available for download and has WebSocket support, improved JSON support and more. 

Stephen Chin arrived on stage with his bike, ending his European NightHacking tour. Check the hacking sessions online here

About

Insider News from the Java Team at Oracle!

duke
javeone logo
Links


Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
2
5
6
7
12
13
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today