Very soon, it will be time for the annual Java One conference in San Francisco, California.
Thousands of Java-fanatics will make the journey to my favorite city "by the bay" (and my home town).
Thousands more Java-fanatics will not attend (including me) and wish they could.
I hope all attendees will have a great and productive time at Java One 2013.
My general advice to attendees is, "Make the...
on Aug 25, 2013
When we started building our first Java application, at my company Amway Corp, many years ago;
we learned our first lesson.
In spite of all the formal training we received, in spite of all the literature at our disposal;
we still needed help with our Java development on a regular basis.
Where would this assistance come from?
At the time, we had no in-house Java subject-matter experts.
on Jun 16, 2013
Learning Java (or any programming language) can be a great challenge.
Any group of developers, learning Java, will bring with them a variety of backgrounds and experiences.
In our case, our first Java project began with developers that had COBOL language experience.
Our second Java project, began with developers that had RPG language experience.
Even though COBOL and RPG don't "look" like Java,...
on Jun 11, 2013
According to research, most complex report development work can be simplified by performing the data source computation in advance. For example, find out the clients who bought all products in the given list, and then present the details of these clients.
In developing such reports, it is the “computation” part and not the “presentation” part that brings about major difficulties. In which stage...
on Aug 20, 2013
In report development, we may need to present the data from multiple databases in one report, such as data from MSSQL database for CRM and Oracle database for ERP. If the reporting tool like iReport only supports single data source, then we need to consolidate the multiple data sources into a single data source.
The Crystal, BIRT, and other so-called reporting tools for multiple data source can...
on Aug 6, 2013
Grails in Action, Second Edition MEAP Update + 44% off
Save 44% on Grails in Action, Second Edition with Promotional code mlgsmith2jn at manning.com
Chapter 9, “Building reliable applications”.
We have now introduced all the core elements that make up a standard Grails application. The question now is how to further develop the application while ensuring that we don’t introduce bugs...
on Aug 20, 2013
Save 44% on CoffeeScript in Action, by Patrick Lee with Promotional code mlleejn at manning.com.
• Chapter 11, “In the Browser,” has been added.
• The Table of Contents has been updated.
It’s important to learn the challenges of the browser environment that your CoffeeScript programs live in. Chapter 11 shows you how to write CoffeeScript programs in a web browser and explains the...
on Aug 16, 2013
Java Persistence with Hibernate, Second Edition MEAP Update + 44% savings!
To save 44% on the pBook and eBook use Promotional code mlbauer3jn at http://www.manning.com/bauer3/. Offer valid until Aug 21, 2013.
•Chapter 11, “Implementing conversations”
•Chapter 12, “Fetch plans, strategies, and profiles”
•Chapter 13, “Filtering”
We have three new chapters for you. In chapter 11, you’...
on Aug 16, 2013
We thought we'd get to know a little more about the author!
I would say that a JS noob should use MVC, just because it’s widely spread pattern used across different programming languages. I think they would enjoy...
on Jun 14, 2013
In Java development, the typical data computation problems are characterized with:
Long computation procedure requiring a great deal of debugging
Data may from database, or Excel/Txt
Data may from multiple databases, instead of just one.
Some computation goals are complex, such as relative position computation, and set-related computation
Just suppose a sales department needs to make statistics...
on Aug 13, 2013
Java API for WebSocket is a new JSR to Java EE 7. It provides a stardard Java API for creating WebSocket applications. This gives web applications the ability to push data.
In Java EE 6 samples, we added a chat room sample to illustrate how to use of Servlet 3.0 asynchronous operation. In that sample, the servlet code did the following:
keep track of AsyncContext in a Queue
create a thread to...
on Aug 13, 2013
In Java development, we may encounter the complex set operations. Java alone is not powerful enough to save programmers’ efforts in implementing the computation details, which is time-consuming and poor in code reuse. In view of this, programmers usually resort to dynamic calculation script for set operation.
SQL is surely the first kind of script that comes into most programmers’ mind. However,...
on Jul 16, 2013
JSR 356: Java API for WebSocket provides a standard Java API for creating WebSocket Applications. The specification provides an API for...
on Aug 7, 2013
Expression Language (EL) was first introduced as part of JSTL 1.0, was then moved JSP 2.0 and was unified with JSF 1.2 in JSP 2.1. In Java EE 7, EL is a new separate JSR, JSR 341. Many new features are introduced in EL 3.0.
This blog shows how to use new following new features of EL 3.0:
Lambda expression (section 1.20 of EL 3.0 spec)
The new operator ; to separate...
on Jul 1, 2013
Asynchronous operation was introduced in Servlet 3.0. ServletRequest#startAsync is used to put the request into asynchronous mode. A thread need to be created implicitly or explicitly (see here for an example).
Servlet 3.1, JSR 340 includes clarifications in asynchronous area. Besides Servlet 3,1, Concurreny Utilities for Java EE 1.0, JSR 236 is introduced in Java EE 7. JSR 236 provides a...
on Jun 6, 2013
Update: In Servlet 3.0, the behavior of using response is undefined after invoking #complete or #dispatch. In Servlet 3.1, it is clarified that AsyncContext#getResponse will throw IllegalStateException. The blog has been updated for this.
Asynchronous operation is supported in Servlet 3.0. I have discussed startAsync in my previous blog, startAsync in Servlet 3.0. In this blog, I will discuss...
on May 14, 2013
The data computation layer in between the data persistent layer and the application layer is responsible for computing the data from data persistence layer, and returning the result to the application layer. The data computation layer of Java aims to reduce the coupling between these two layers and shift the computational workload from them. The typical computation layer is characterized with...
on Jul 31, 2013
Recently, I read Why Big Data Projects Fail by Stephen Brobst. I can’t agree more with his opinions which exposed the problem I’ve been worried about. In this article, I am going to further discuss this topic to remind the enterprises to beware of falling into such pitfall of failure.
Let’s have a look on a positive example. As a successful enterprise in leveraging big data, how does Google make...
on Jul 24, 2013
This brief blog entry explains the Mojarra bug triage process, and shares some tips for maximizing the chances your bug will be quickly fixed and find its way into a release. Mojarra is the JSF implementation in several app servers and is the source code from which the reference implementation of the JSF specification is derived.
Mojarra has had a publically accessable issue tracker since 2004,...
on Jul 15, 2013
Over the last few years we've been busily writing the latest and greatest version of Magnolia. After all of this focus on new and (we hope) great, it seemed like time to focuse on something old and great.
If you are old enough to remember the ZX Spectrum, the Commodore 64 or their various competitors, or if you like any kind of games, please keep on reading.
You might have heard of the qaop...
on Jun 20, 2013