Update: One should not use response in AsyncListener#onComplete. Only print debug in this example.
Servlet 3.1 (JSR 340) is almost ready for the release. One of the new features is the support for non-blocking IO. ReadListener and WriteListener are introduced to allow non-blocking processing in Servlet.
Non-blocking IO can only be used in async (defined in Servlet 3.0) or the upgrade mode. We can...
on Apr 16, 2013
The applications have grown together with the man dream to get more and more information, then more application have been emerging and the man had became hostage of the application.
For example we can recognized the evolution between man and machine:
In the first time: Many men to just one machine ( like mainframe's age) then one man to one machine ( in to Personal computer era) and...
on Mar 17, 2013
This quick blog entry is just to advertise the availability of the Proposed Final Draft of JSF 2.2 (JSR-344). You may download the draft of the spec at <http://jcp.org/aboutJava/communityprocess/pfd/jsr344/index.html>. You may try out the implementation by dropping this maven GAV into the modules directory of GlassFish 18.104.22.168: <a href="http://search.maven.org/#search|ga|1|g%3A%...
on Mar 15, 2013
Sometimes, life drops a house on your code. Sometimes, it's flying monkeys. Most of the time though, the damn stuff just stops working and it's nothing so obvious as being crushed by a Kansas farmhouse or being carried away by winged primates.
For this last common case, there are a good number of great tools to help you out. JMeter may help you to reproduce the conditions under load, while...
on Feb 1, 2013
As a test, I re-created the HRSystem application as described in the tutorial Developing Rich Web Applications With Oracle ADF. It's more than your basic Hello World application. For starters, the HR system application accesses a database. It also takes advantage of some sophisticated ADF features, such as graphs, page flows, auto-suggest, menu options to export to Excel and display in...
on Jan 23, 2013
In my last blog post, I explained how to add versioning capability to templates. Being able to create, view and restore different versions of templates is great, but sometimes it's not so easy to see what has actually changed. And we might not be as lucky as having comments about the change from the author, or they might be cryptic to the point of being useless.
So let's try and add the diff and...
on Jan 22, 2013
Many of the Oracle Java development tutorials that access a database do so against the Oracle HR sample schema. See, for example, Developing Rich Web Applications With Oracle ADF. There are several approaches you can take to getting the sample schema installed in the Oracle Cloud, such as Using SQL Developer or JDeveloper as demonstrated in Shay's blog. In my case, we're going to run the SQL...
on Jan 17, 2013
Java Web Services and XML
In the most recently completed Java.net poll, developers overwhelmingly considered the HTML 5 related enhancements in Java EE 7 to be the most important. The poll highlighted five of the many areas of enhancement that will be included in Java EE 7, and provided a "Something else" option as well. The 1631 votes that were cast represent one of the highest totals for recent Java.net polls.
on Apr 15, 2013
Java User Groups
Tuning Java code presents many challenges and addresses several goals.
One of these goals is to make the application "run faster".
Recently, our end-users were getting multiple-second response times from our web application's home page.
This was unacceptable.
We were asked to see what we can do to make the web application "run faster".
We began by looking at the usual suspects... database access...
on Apr 14, 2013
Have you wanted to do something with asynchronous I/O? I did. After doing some work with Node.js, I wanted to find a way to get some of the goodness of its programming model for Java.
The Acteur project is the result - a framework for building scalable, asynchronous web applications using Netty + Guice - was the result. The programming model is a little unusual - you treat constructors as...
on Apr 7, 2013
One of the biggest challenges facing us during the creation of our first Java application
was learning to develop with the Java programming language.
We were concerned about how well our team of developers would learn and adapt to Java.
Since Java was an object-oriented programming language, we had object-oriented concepts to learn as well.
Our first Java training class was titled, "Developing...
on Mar 24, 2013
Our team of Java developers consists of people with various backgrounds and skill levels.
Everyone has a role and is assigned tasks based on that role.
Team members are expected to know basic programming concepts, core Java and core J2EE.
In addition; database access, web-browser, client/server concepts are required as well.
It didn't take long for our team to realize there was a lot more to know...
on Mar 10, 2013
I am back with more stories about our adventures in the world of Java.
From the distant past to recent events. I hope to entertain, enlighten, and encourage.
So hold on to your hats.
For software developers in IT, there are times when you find yourself present at the birth of a major application.
Normally these are dream assignments. But consider the following additional factors.
on Mar 4, 2013
One of the first things we did as we began to learn about Java was to create our own library of Java books.
Every member of the development team was given the chance (and funding) to build their own collection of books.
In time, these book collections became a sort of "comfort blanket" for the developers.
In addition to being a valuable source of reference material,
these collections act as a...
on Mar 29, 2013
Servlet 3.1 was in Public Review in Janurary 2013. And it is in Proposed Final Draft now. Most of the new features are related to security.
In this following, I will highlight features since Servlet 3.1 Public Review:
add new API javax.servlet.http.Part#getSubmittedFileName
add new API javax.servlet.ServletContext#getVirtualServerNameThis API allows a JASPIC module to be registered in a Servlet...
on Mar 18, 2013
Java User Group Cologne has decided to adopt JSR 344 (JavaServer Faces 2.2) and JSR 346 (Contexts and Dependency Injection for Java EE 1.1). In an announcement on Google+, JUG Cologne stated:
Efforts will be aggregated and coordinated by Daniel Sachse and Michael Müller, both already individual expert members of the respective JSRs.
I asked Java Champion Michael Huettermann a few questions...
on Jan 31, 2013
Some thoughts on caching, HTTP and otherwise
over on timboudreau.com
on Feb 28, 2013
My Wednesday at Jfokus 2013 started in the large auditorium where the conference intro and keynotes took place. It was the first time I'd returned there since Tuesday's conference introduction, and I was at first surprised that this very large venue was being used for general conference technical sessions (I'd expected that those would generally take place in smaller rooms). I sat very close to...
on Feb 8, 2013
on Feb 7, 2013
Tuesday at Jfokus 2013 started in a large auditorium filled with more than 1500 Jfokus attendees, who heard Jfokus founder Mattias Karlsson launch the conference in an introduction that included an appearance by Stephen Chin, who had spent the previous night sailing the icy Baltic Ocean on the Vaadin Cruise from Finland. The conversation also introduced a new Java Champion, JRuby's Charles...
on Feb 5, 2013