2005/06/28
Last changed: Jun 29, 2005 16:51 by Stephan Janssen

My intention is to give a daily overview of the highlights and some thoughts of the sessions I followed at JavaOne. This morning was the official opening of the event. I has expected some queuing lines in front of the Moscone Convention Center, but everything went fine. No queuing, good coffee and comfortable seating.

Every day starts with some general sessions, prior to the parallel individual sessions.
As like the previous years, John Gage is the acting master of ceremony for the general sessions. The morning sessions where ?easy listening? sessions in general injected from time to time with a well intended joke.

After a couple of hours listening, I was convinced that this JavaOne is THE conference of the year dealing with ?lightweight? and ?SOA?. As long as you don?t mix them together, you don?t miss the point.

Also not to forget, Duke is celebrating its 10 anniversary this year! Yes yes yes? Hip hip hoera for Java! The language celebrates its 10 anniversary. The ?green team? has been brought on stage. Nice to see the innovators of what created a multi billion dollar/euro industry.

Still sitting in my chair, I was thinking what I was saying roughly 11 years ago? At that time, I was a hardcore assembler programmer, preferring to program directly the CPU registers instead of using a ?high-level? language like C. At that time other languages where even inexistent to me. One of my statements that put me into trouble with one of my previous employers was declaring Visual Basic as ?a program for graphical artists?. I?m still quite convinced about that. When I heard that there would be a new language that would not be native and that would have an additional layer (byte code) that would be interpreted, I said ?No way! This will be even slower than BASIC!!!?. Today, 11 years, 15kgs and less hair later, sitting in San Francisco, looking around to the huge crowd of Javaists, thinking to who pays my salary actually?. I firmly have to admit that I was totally wrong about Java, 11 years ago.

Some figures illustrate the immense popularity of Java. Consider them for a moment. I was quite impressed?..
4.5 m Java developers
1 b Java cards
2.5 b Java devices
708 m Java operated phones
600 m Java handsets for manufacturers

Another nice Java based thing to see was the Panasonic Blu Ray disc. The next generation storage solution on a DVD size optical disc. Storage capacity ranges from 50 ? 200 GB per disc! This makes it ideal for archiving purposes, but also for consumer usage in a HD DVD recorder/player. The latter was demoed at the Panasonic booth: A HD DVD player powered by Linux and Java.

The session was followed with some product updates from SUN Java Studio. Nice to see, nice to have, but not chocking. This is what we have already a couple of years in BEA WebLogic Workshop.

Another interesting utility was DTrace for Java on Solaris. This tool analyses during program execution what amount of time is spent in native, kernel or Java code. Based on the results, some tuning actions may take place to improve performance. I firmly believe this is a valuable tool, but it?s also worthy to notice that a lot of the Java code that is executed during program execution is not controlled by the developer. Application servers might also be written in Java, etc.

A lot of time has been spent on the updates of the J2SE and J2EE roadmaps. Serious effort has been done for both environments. The feature list contains some really cool topics!

J2SE, J2ME and J2EE Naming conventions have changed?

  • Drop the 2. So, SE, EE and ME
  • Single digit version: Java SE 6

The new naming conventions only apply to new versions. Existing versions remain.
J2SE 5.0 -> J2SE 5.0
J2EE 5.0 -> Jave EE 5

J2SE 5.0 ?Tiger?

  • Shipped last September
  • No 5.1 version
  • Mainly a language update (enrichment)
  • EoD (Ease of Developmen) focus: Introduction of annotations

Jave SE 6 ?Mustang?

  • EoD: Extensive use of annotations
  • Web Services client stack + lightweight server stack to serve callbacks
  • JML support
  • JMX upgrades
  • JConsole. This allows real-time JVM monitoring (see JRockit)
  • Scripting language framework support. ?Rhino? scripting engine is included.
  • Longhorn support, incl. Avalon look and feel.
  • JavaDoc update.
  • JDBC 4.0 support. XML data type and database support. Annotations model
  • Updated license model: easier + added new models
  • GUI upgrades: LCD font rendering support, Windows System tray support, Graphics pipeline boost (Open GL & DirectX)

Java SE 7 ?Dolphin? (tentative)

  • Direct XML support in the VM
  • ?friends? for cross package refs
  • Method references (event handlers)
  • New JVM byte code for better support of dynamic languages (eg. Jython)
  • Bean shell scripting language (JSR-274)
  • More new I/O APIs (JSR-203). Pluggable file systems, file permissions, free disk space
  • New packaging and deployment architecture: Circumvent limitations of JARs and/or EARs, metadata like versions part of the distribution

Java EE 5
Goals:

  • EoD improvements: POJO support; annotations used: to reduce the need of deployment descrptiors, external dependencies, Web Services, DB Mapping, EJB development; resource injection (inversion of control); new APIs and frameworks
  • Simplified Web Services support
  • Simplified EJB development
  • New persistence API (resolved EJB/JDO conflict)
  • Interceptors

Java EE 5 new content:

  • JSP STL (JSR-52)
  • STAX (JSR-173)
  • Web Services Metadata (JSR-181)
  • New persistence API (JSR-220)
  • JAXB (JSR-22)
  • JAX WS (JSR-224)
  • Common (language) annotations (JSR-250)
  • JSF (JSR-252)

Java EE 5 updated content:

  • EJB 3.0 (JSR-220)
  • JSP 2.1 (JSR-245)
  • Minor updates: Mail API, Servlets, ?

Beta: Q4 2005
Final: Q1 2006

SUN also announced to provide a free Java EE 5 compliant application server. This project is called ?Glashfish?.

SUNs Mark Harpner talked about SOA and Java Business Integration (JBI). One of the key building blocks for a SOA is the Enterprise Service Bus (ESB). The ESB are the tools and middleware to develop/manage/deploy and manage composite services. Most of the ESBs are built on a Java platform. Today, several vendors provide an ESB solution each having a different:

  • Tooling
  • Service packaging
  • Service deployment, packaging, management and monitoring
  • ESB extension mechanism
  • ESB monitoring and management.

These bullets are the actual paint points of today?s ESB solutions. Therefore, there is an emerging need for a ?SOA AND the Java platform? standard, which provides support for composite services:

  • Standard service assembly and service wiring
  • Extend ESB collaboration through standard normalized message routing and standard component pluggability.
    The benefits of the approach are modular services and ESBs
    JSR-208 defines a standard for Java Business Integration.

After lunch I went listening to (our) BEAs Mark Carges. Mark talked about two major topics: BEA support for lightweight frameworks and JVM innovations implemented and planned in our BEA JRockit VM.

Investigation proved that most of enterprise developers find that enterprise application development is too complex. In order to resolve that, over 70% use frameworks on the different tiers (web, business, data) of the enterprise application.

Today there is also an increased demand for:

  • POJO support: Allows the use of lightweight containers and a simple component model.
  • Dependency injection: Allows to resolve dependencies in a declarative way, to simplify the source code and to perform fast iterative unit testing
  • Metadata support: Allows to define infrastructure concerns in a declarative way and to code annotations
  • Aspect Oriented Programming support: Enabling technology and code simplification.

Today there are open source frameworks fulfilling above described needs. Hence, BEA provides as from WebLogic Server 9.0 support for Struts, Beehive and Spring.
WebLogic Workshop will be based on Eclipse and will support additional deployment models to support, in addition to WebLogic Server 9.0, Geronimo and Tomcat.

BEA worked together with Interface21 to optimize the Spring support in WLS 9.0. Spring will use the BEA optimized transaction API and the Springbeans can be monitored from within the BEA WebLogic Server Console.

The second topic was dealing with JVMs.
Where JVMs where initially built to support multiple platforms with a ?one size fits all? concept in mind, today?s JVMs focus on performance, specialization and ?always on?.
BEA provides with their JRockit JVM, the fastest (28% faster) JVM available on the market. The JVM has been optimized for Intel architecture CPU and a Sparc version is in the pipeline.
Strong points of the JRockit JVM are:

  • Optimized garbage collection
  • Operational diagnostics support by means of a management console, runtime analyzer, production memory leak detection and trouble spots linked to source code.
  • Stepping into utility computing: Where a cluster provides an answer to scalability to meet SLAs, with CPU virtualization we can take it one step higher.
Just pas the SLAs to the JVM and the JVM will allocate the required resources to fulfill the SLA requirements! Is it good, or is it good?!?!

Next session on the list had to do with the inner details of the JBI spec.
I wanted to see how SUN approached ESB interoperability issues and in what way the SUN architectures matches the BEA AquaLogic Service Bus architecture. Today there?s a lot of hype around ESBs. I think it?s the seasonal buzzword. Next season we?ll have something else? quite sure. From an architectural point of view, an ESB is quite simple. Support for multiple protocols, some routing, and some transformations, stick a label on it and put it in a box.

The heart of the JBI is a ?normalized router?. The router routes based upon ?normalized messages? can be enriched with plug-ins to add addition functionality to the ESB like:

  • Orchestration via BPEL
  • Transformation via XSLT
  • WS-I (Basic SOAP)
  • Business Logic (EJBs)
  • JMS
  • Binding components: Proxy for remote service providers
  • ?

The plug-ins:

  • Can be providers or consumers
  • Supply self describing using WSDL for: Messages, operations and message exchange patterns, services, end points
  • Translate the messages to/from an ?abstract message? model

Normalized message consist of:

  • Abstract message
  • Message metadata: message properties dealing with transactions, security, protocol info

The message itself will not survive a system crash. Persistence should be provided elsewhere in the process. This has been done for performance reasons.

The advantages of a JBI compliant ESB:

  • Portable installation and deployment
  • Services are portable across JBI implementations
  • Plug-ins can operate/integrate across JBI implementations

Next session was dealing with EJB 3.0
The major concerns of EJB 2.1 are the complexity to use it. This is underwritten by an awkward programming model, complex deployment descriptors and al lot of entity bean anti patterns.

EJB 3.0 addresses the pain points and provides an alternative to it.

  • Fewer classes and interfaces:
  • Dependency injection: Use metadata annotations to specify where resources have to be injected.
  • No required container interfaces: No need to code EJBHome and EJBObject methods.
  • No required deployment descriptors: Default behavior requires no deployment descriptors. Alternative behavior can be described via annotations. Deployment descriptors are still supported as well (to override annotations).
  • Focus on the business logic instead of implementation logic
  • No JNDI look-up for client applications. Business methods are defined in an interface. A POJO provided to the client implements that interface.

The EJB 3.0 entities are POJOs. These can also be used detached from the container and used across transactions. So there is no further need to map Entity beans in DTOs.

The EJB persistence layer has been drastically changed with the focus on simplification. Knowledge of JDO, Hibernate and Toplink has been merged to define the new APIs.

O/R Mapping support: Mapping is expressed using metadata annotations or XML. Default mappings are provided.

The last but least session I attended was ?A hitchhikers guide to SOA orchestrating loosely coupled services with BPEL and BPMN.?
A great sounding title with less content. After giving a definition of what BPEL and identifying its shortcomings (BPEL only orchestrates, does almost nothing more), we went over to ACDC worker services triggered by BPEL (Asynchronous Conversational Document Centric) that do the actual business logic execution.

Only interesting point to me was the BPMN or the Business Process Modeling Notification, which standardizes the BPEL process notation format.

I closed the day with Java Card and security features session. This was very interesting given the new eID they?re rolling out in Belgium right now.
Good news to see that Java Cards are evolving!
The next generation cards (+ 2007) will have:

  • 32 bit CPU
  • 16 K RAM
  • 256K ROM
  • >128K EEPROM
  • CPU Clock 50 MHz
  • 1.5 ? 12 Mb/s full duplex connection speed.

In addition to this, the card will have:

  • A servlet based connection interface, making it easier to access the card from a server.
  • More mainstream java programming: Automatic garbage collection, threading
  • Contact less, USB and MMC support
  • Internet enables.

Posted at 28 Jun @ 4:47 AM by Kurt Lefevre | 1 comment

Many larger organisations have chosen J2EE as their enterprise applications platform, but are continously struggling with the complexity of J2EE. As a result, J2EE is often seen as a technology for big enterprises building large applications, but this does not need to be true.

We are happy to see that the Java community is now uniting around a small number of solutions that try to solve this complexity issue, reduce development time, have a much better return-on-investment, and lower the total cost of ownership, in particular the maintenance costs.

Learn how more and more companies are tackling the limitations of J2EE by using open-source initiatives; and have chosen Spring, Hibernate and Struts as the cornerstones for building and successfully delivering J2EE-based projects – faster, cheaper and easier to maintain.

You can find MORE INFORMATION about the "Simplified J2EE Applications using Spring, Hibernate & Struts" seminar that we organize on WEDNESDAY 12 OCTOBER (14-21h) in Business Faculty (Neder-over-Heembeek) at:

http://www.itworks.be/event.php?id=JAVAD32

You can register:

During this ENGLISH-SPOKEN one-day seminar presented by Stephan JANSSEN and Erik JANSSENS of JCS International, you will learn:

  • An overview of the problems with J2EE and EJB today
  • How this led to new concepts such as lightweight containers,
    aspect-oriented programming and inversion-of-control
  • Detailed information on Spring, Hibernate and Struts
  • How you can use these in practice, and what the advantages are

I am looking forward to meet you and/or your colleagues in person at this seminar. If you have any questions, do not hesitate to contact me.

Patrick Van Renterghem - Manager I.T. Works
Send Feedback & Remarks via http://www.itworks.be/feedback.php

Posted at 28 Jun @ 9:01 AM by Niky Patyn | 0 comments
Last changed: Jun 29, 2005 13:33 by Stephan Janssen

James Gosling loves JavaPolis

This morning, before the JavaOne keynote (Day II), I gave a personal copy of the JavaPolis DVD box to Mr. Java himself, James Gosling.

During last years JavaPolis he actually asked some people at Sun Belgium to provide him a JavaPolis t-shirt, James confirmed he had received this killer t-shirt and told me he really liked it! Of course I run around with my personal JavaPolis t-shirt on and James started showing my back to different Sun execs... really funny.

In return, and as an extention to the JavaPolis theme of last year, James gave me a small match-box-folded carbon box gift with the title "Compatibility Matters" printed on it. The actual content was a Java condom. However Sun Microsystems logo was not printed on the box, maybe I need to unfold the content for that

Of course I've asked James if he would be interested to speak again at this years JavaPolis, he told me to drop him an email and he would verify if his agenda would let him. But we do have his blessing, so from now onwards JavaPolis is backed by James Gosling

Stephan


Posted at 28 Jun @ 2:08 PM by Stephan Janssen | 1 comment
Last changed: Jun 29, 2005 13:57 by Stephan Janssen

This year's JavaOne was really a showcase for the Brazil Healthcare Java projects. Scott McNealy had an emotional talk preaching for a technology that could save lives. Fabiane Nardon won a Duke award for that project and the leader of the Brazilian user group, Bruno Souza, was looking like the king of the conference with his Brazilian flag made coat.

I could not imagine Stephan dressed with a Belgian flag at the next Javapolis, maybe we can give him a try at our next workshop?

Brazil was also showing up in several BOFs and I thought it was worth of interest to meet Fabiane.

She gaves me more information about this project. In few words, it was all about creating a big CRM system for Brazilian citizens. This system is used by both public and private healthcare organizations in several Brazilian cities right now and is expanding across the country. Every city has its own database and application server. Replication of the citizen?s data from cities to cities is automated.

For public agencies, applications are pure http/html-based and require a less powerful computer than private companies who use a Flash-based rich internet application. Fabiane told us that Flash was much sexier to 'sell' to private companies. I know a certain Jo Wyns who will have a big smile when reading this. At our previous Rich Client workshop, Jo was stating exactly the same.

In both cases, the business logic is located on the server and is residing in EJBs, it is accessed either through Flash remoting and a server side servlet for the Flash application and through RMI for the web-based application. In total the system contains 2.5 million lines of code but around half of this code was generated.

This talk with Fabiane was very interesting, not only because she was a nice-looking women, I mean the architecture level of the thing.

That's a little bit the kind of person/talk I would like to invite for the Javapolis 2005 architecture track.

Posted at 28 Jun @ 8:17 PM by Robin Mulkers | 1 comment
Last changed: Jun 29, 2005 13:51 by Stephan Janssen

Thomas Kurian, Senior VP development, was up next in the general session room ready to announce some interesting stuff.
The setting was really nice with an Oracle red background image on the huge LCD screen. (anybody has a picture of this ?)

Thomas Kurian announced, as expected, that the JDeveloper IDE environment is now made freely available for all java developers. I must say, that if you want to do some serious JSF development you should check it out! It runs also on Mac, so I should really give it a twirl and see if I can develop as sexy JSF/AJAX enabled web apps like the demo's.

Oracle is also contributing their EJB 3.0 implementation as an open-source Reference Implementation for the EJB 3.0 JCP specification. Next to that, Oracle will release eclipse plugins for EJB 3.0, JSF and BPEL development, it seems Oracle is betting on two horses here.

Other nice demo's shown was the BPEL 'designer' (see also Edwin's talk from last years JavaPolis), secured Web Services using WS-Policy using Oracle's Web Services Manager. Another nice looking demo was a DHTML/AJAX, probably JSF, enabled rich application client demonstrating business activity management. I would love to know what burden this has on the network with all of these XML Http requests !?

To be honest, from what I've seen today, Oracle is a step further than some vendors (to name one, BEA Systems) in the area of JSF, BPEL and especially in the EJB 3 space. And this is not something Hugo asked me to type

It was funny to hear that Thomas also mentioned that Oracle allows you to work with other open-source frameworks like Spring, Tapestry, Struts etc. so buzz-word compliant.

Anyway, great JSF demonstrations and I personally believe at the end, with all of these free tools and plugins, the Java Development Community is the big WINNER !

Cool stuff,

Stephan

Posted at 28 Jun @ 9:09 PM by Stephan Janssen | 1 comment
June 2005
Sun Mon Tue Wed Thu Fri Sat
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    

Jun 28, 2005
Jun 28, 2005

Adaptavist Theme Builder Powered by Atlassian Confluence