When I started my career as a Java developer close to 10 years ago, the industry is going through a revolutionary change. Spring framework, which was released in 2003, was quickly gaining ground and became a serious challenger to the bulky J2EE platform. Having gone through the transition time, I quickly found myself in favour of Spring framework instead of J2EE platform, even the earlier...
on Jul 14, 2014
Java EE 7 platform added a few new specifications to the platform:
Java API for WebSocket 1.0
Batch Applications for Java 1.0
Java API for JSON Processing 1.0
Concurrency Utilities for Java EE 1.0
This is highlighted in the pancake diagram shown below:
Several of the existing specifications were updated to fill the gaps and provide a more cohesive platform. Some small, but rather significant...
on Jul 10, 2014
Eclipse Luna (4.4) was released a few days ago, download it at the usual location: eclipse.org/downloads. The big feature of course is full support for Java 8 but there are a tons of other features as listed here.
JBoss Tools is a set of plugins for Eclipse that complements, enhances and goes beyond the support that exists for JBoss and related technologies in the default Eclipse distribution. If...
on Jul 8, 2014
When I started my career around 10 years ago, Struts MVC is the norm in the market. However, over the years, I observed the Spring MVC slowly gaining popularity. This is not a surprise to me, given the seamless integration of Spring MVC with Spring container and the flexibility and extensibility that it offers.
From my journey with Spring so far, I usually saw people making some common mistakes...
on Jul 5, 2014
There is a Maven archetype to create Java EE 7 application:
mvn --batch-mode -DarchetypeGroupId=org.codehaus.mojo.archetypes -DarchetypeArtifactId=webapp-javaee7 -DgroupId=org.javaee7.sample -DartifactId=javaee7-sample -Dpackage=org.javaee7.sample archetype:generate
It generates a simple "pom.xml" with Java EE 7 API <dependency>. It does the job to get started with building the application...
on Jul 1, 2014
JBoss Tools is a set of plugins for Eclipse that complements, enhances and goes beyond the support that exists for JBoss and related technologies in the default Eclipse distribution.
Until now, early builds of JBoss Tools were released at a regular cadence leading up to the release of a particular version. Anybody could download, integrate the plugins in Eclipse, test, and provide feedback....
on Jun 24, 2014
WildFly tooling is available in JBoss Developer Studio (Eclipse), NetBeans, and IntelliJ. While JBoss Developer Studio and IntelliJ provided in-built support for WildFly, and an extra plugin had to be installed for NetBeans. Not a big deal but NetBeans is more known for a seamless out-of-the-box experience. Starting with today's nightly, WildFly community is a step closer to that now!
on Jun 24, 2014
JDK 8 introduced a lot of new features and improvements in the platform from Lamda expressions, Stream collection types,
Functional interfaces, Type annotations, Nashorn etc.
Guava library from Google provided some support for functional programming idioms prior to JDK 8.
I have been using Guava for some of my projects. So here is a small write up on
how new functionality added in JDK 8 makes it...
on Jul 14, 2014
The lambdas are without any doubt one of the most intriguing and attractive features in Java8, but sometimes instead of helping us writting a better and boilerplateless code, they can get us into trouble. And still, they are the better alternative to the anonymous classes for lots of reasons.
The anonymous classes were a nice way to achieve clojures in Java, but it was something natural to...
on Jun 19, 2014
This year, more more apache based company, I mean that a company that repackage, retest or make a bundle of Apache product, selling product in Indonesia.
And as we know, the ecosystem, like tech guy, expert in our region Asia Pasific, i never see.. but pre-sales and salesman, and industry leader, all over the country.
I make a small theory about this, because most of their product are based on...
on Jul 9, 2014
In an earlier blog entry I listed my picks for DevNexus 2014. This blog entry summarizes my notes from this show.
I corroborate the common wisdom about DevNexus being a very well run show. This was my first time presenting and I found the talk selection on the first day to have the right mix of diversity and depth for the working developer. The second day was much less compelling for me,...
on Jul 7, 2014
Tech Tip #25 showed how to configure WildFly on Raspberry Pi. Tech Tip #27 showed how to setup WildFly on two Raspberry Pis in managed domain mode. This tech tip will show how to setup a WildFly cluster over those two hosts.
WildFly supports mod_cluster out of the box. There are several advantages of mod_cluster:
Dynamic configuration of httpd workers
Server-side load balance factor calculation...
on May 30, 2014
Tech Tip #25 showed how to configure WildFly on Raspberry Pi. This tech tip will show how to setup a WildFly managed domain over two hosts running on Raspberry Pi.
Lets understand some basic concepts first.
WildFly can run in two modes:
Managed Domain allows you to run and manage a multi-server domain topology
Standalone allows to run a single instance of server
Multiple standalone instances...
on May 30, 2014
Behaviour Driven Development is an increasingly popular Agile development practice that turns testing on its head. It turns automated acceptance testing from a verification activity, done once the development work is done, to a specification activity, with tester involvement starting from the word go.
In this talk, we will look at how Behaviour Driven Development radically changes the traditional...
on Jun 25, 2014
Behaviour-driven development (BDD) started as an improved variation on test-driven development, but has evolved to become a formidable tool that helps teams communicate more effectively about requirements, using conversation and concrete examples to discover what features really matter to the business. BDD helps teams focus not only on building features that work, but on ensuring that the...
on Jun 25, 2014
I’m happy to report that the 2014 edition of the Web Framework Smackdown is shaping up to be a good one. This year we have a solid lineup, and for the first time we are going beyond Java with the inclusion of Misko Hevery representing AnguarJS and Pete Hunt representing React. Representing a more Java-centric approach to UI we have myself (representing JavaEE and JSF) and Joonas Lehtinen...
on Jun 22, 2014
Unlock productivity is one of the bigger concerns for any person taking management role. However, people rarely agree on the best approaches to improve performance. Over the years, I have observed different managers using the opposite practices to churn out best performance of the team they are managing. Unfortunately, some works and other don't. To be more accurate, what does not increase...
on Jun 18, 2014
Using the Java 8 Date Time Classes with JPA!
With the Java 8 SE release, developers get a splendid new best-in-class Date-Time API. Wouldn't it be nice if you could use it with JPA? Not so fast. JPA and for that matter JDBC know nothing about the new classes, and if you use them in your entities, JPA will map them to BLOBs in your database by default. This happens in DDL or database creation, in...
on Jun 17, 2014
Have you recently checked out your company’s web presence and thought to yourself that it was in dire need of an update? But then maybe you started imagining the pain of pushing new data there, and resigned at the mountain of work ahead. Or maybe your mind turned to even more pressing problems with the site - maybe it doesn’t render correctly on mobile, or no updates get pushed into social media...
on Jun 5, 2014
On January 2nd I received a New Year's gift, my "Welcome to Oracle Cloud" email. I had requested a 30-day free trial back on October 17, when the Oracle Cloud was first announced, and had basically forgotten all about it. If you haven't already, request a trial account for yourself:
The Oracle Cloud integrates very nicely with Eclipse, NetBeans and JDeveloper, where you can develop and...
on May 29, 2014