Book Review: “Java EE 7 Developer Handbook” by PACKT / Pilgrim

Posted in Java / JEE on November 26th, 2013 by Kai Wähner

Java EE 7 Developer Handbook is a book for experienced Java developers, published by PACKT. Author is Peter A. Pilgrim.

Content
The books introduces many important Java EE 7 specifications: CDI, EJB, JPA, Servlets, JMS, Bean Validation, JAX-RS and some other stuff such as WebSockets, HTML5 support and Java Transaction API. Each chapter contains an introduction, source code examples and explanations of most important features and configurations. Source code examples can be downloaded, too.

Cool side note
Introduces and uses Gradle as build system and Arquillian for writing integration tests.

Tags: , , , , , , , ,

Enterprise-ready Tool Support for Apache Camel

Posted in EAI, ESB, Java / JEE on November 23rd, 2012 by Kai Wähner

Apache Camel is my favorite integration framework on the Java platform due to great DSLs, a huge community, and so many different components. Camel is used by many developers from different companies all over the world. However, most guys are not aware that some really cool and – more important – enterprise-ready tooling is available for Camel, too. Many people ask me about Camel tooling when I do talks at conferences. This is the reason for this short blog post about Camel tooling.

[FYI: I work for Talend (one of the vendors). Please also read the comments from my Red Hat friends at the bottom!]

Tags: , , , , , , , , , ,

Apache Camel Tutorial – Introduction to EIP, Routes, Components, Testing, and other Concepts

Posted in EAI, ESB, Java / JEE on May 4th, 2012 by Kai Wähner

Data exchanges between companies increase a lot. The number of applications, which must be integrated increases, too. The interfaces use different technologies, protocols and data formats. Nevertheless, the integration of these applications shall be modeled in a standardized way, realized efficiently and supported by automatic tests. Such a standard exists with the Enterprise Integration Patterns (EIP) [1], which have become the industry standard for describing, documenting and implementing integration problems. Apache Camel [2] implements the EIPs and offers a standardized, internal domain-specific language (DSL) [3] to integrate applications. This article gives an introduction to Apache Camel including several code examples.

Tags: , , , , , , , , , , , , , , , ,

Why I will use Java EE (JEE, and not J2EE) instead of Spring in new Enterprise Java Projects in 2012

Posted in Application Server, Java / JEE on November 21st, 2011 by Kai Wähner

The question comes up often. It came up in my new project in November 2011, too. I will use Java EE (JEE) instead of the Spring framework in this new Enterprise Java project.

I know: Several articles, blogs and forum discussions are available regarding this topic. Why is there a need for one more? Because many blogs talk about older versions of Java EE or because they are not neutral (I hope to be neutral). And because many people still think thank EJBs are heavy! And because the time has changed: It is Java EE 6 time now, J2EE is dead. Finally! Finally, because not only JEE 6 is available, but also several application servers (not just Glassfish as reference implementation). I do not want to start a flame war (too many exist already), I just want to describe my personal opinion of the JEE vs. Spring „fight“…

Tags: , , , , , , , , , ,

Cloud Integration with Apache Camel and Amazon Web Services (AWS): S3, SQS and SNS

Posted in Cloud, EAI, ESB, Java / JEE on August 30th, 2011 by Kai Wähner

The integration framework Apache Camel already supports several important cloud services (see my overview article at http://www.kai-waehner.de/blog/2011/07/09/cloud-computing-heterogeneity-will-require-cloud-integration-apache-camel-is-already-prepared for more details). This article describes the combination of Apache Camel and the Amazon Web Services (AWS) interfaces of Simple Storage Service (S3), Simple Queue Service (SQS) and Simple Notification Service (SNS). Thus, The concept of Infrastructure as a Service (IaaS) is used to access messaging systems and data storage without any need for configuration.

Tags: , , , , , , , , , , , , , , , , , , ,

Rapid Cloud Development with Spring Roo – Part 1: Google App Engine (GAE)

Posted in Cloud, Java / JEE on July 18th, 2011 by Kai Wähner

Spring Roo is a tool to offer rapid application development on the Java platform. I already explained when to use it: http://www.kai-waehner.de/blog/2011/04/05/when-to-use-spring-roo.  Spring Roo supports two solutions for Cloud Computing at the moment: Google App Engine (GAE) and VMware Cloud Foundry. Both provide the Platform as a Service (PaaS) concept. This article will discuss the GAE support of Spring Roo. Cloud Foundry will be analyzed in part 2 of this article series.

Tags: , , , , , , , , , , , , , , , , , , ,

Cloud Computing Heterogeneity will require Cloud Integration – Apache Camel is already prepared!

Posted in Application Server, Cloud, ESB, Java / JEE, SOA on July 9th, 2011 by Kai Wähner

Cloud Computing is the future – if you believe market forecasts from companies such as Gartner. I think so, too. But everybody should be aware that there won’t be one single cloud solution, but several clouds. These clouds will be hosted at different providers, use products and APIs from different vendors and use different concepts (IaaS, PaaS, SaaS). Thus, in the future you will have to integrate these clouds as you integrate applications today.

Tags: , , , , , , , , , , , , , , , , , , , , ,

Apache Camel and Scala: A Powerful Combination

Posted in EAI, Java / JEE on June 23rd, 2011 by Kai Wähner

I really like the integration framework Apache Camel and I also like Scala a lot. This article shows the basics of this combination. It is NO introduction to Apache Camel or Scala. I created a Git project to use it as simple startup for Camel-Scala-Maven projects using just the basic Camel concepts and only a few complex Scala features (i.e. very „Java-friendly“).

Problems when Starting with this Combination

I had several problems finding good resources for starting when I first tried to combine them. I have a lot of Camel experience, but only basic Scala knowledge. I tried to start with some projects which where already available in the web (e.g. from the „Camel in Action“ book or other Git examples).

Tags: , , , , , , , , , , , ,

When to use Apache Camel?

Posted in Application Server, EAI, ESB, Java / JEE, SOA on June 2nd, 2011 by Kai Wähner

Apache Camel is one of my favorite open source frameworks in the JVM / Java environment. It enables easy integration of different applications which use several protocols and technologies. This article shows when to use Apache Camel and when to use other alternatives.

The Problem: Enterprise Application Integration (EAI)

Enterprise application integration is necessary in almost every company due to new products and applications. Integrating these applications creates several problems. New paradigms come up every decade, for example client / server communication, Service-oriented Architecture (SOA) or Cloud Computing.

Tags: , , , , , , , , ,

Oracle complains about Sun’s Java-Release-Cycles – OpenJDK will become more important

Posted in IT Conferences, Java / JEE on April 12th, 2011 by Kai Wähner

Oracle complains about Sun’s Java-Release-Cycles

A keynote of Dalibor Topic (Oracle) criticizes the Java-Release-Cycles of Sun Microsystems at the Java conference „CONFESS 2011“ in Vienna, Austria. After showing the past of Java SE from version 1 to 6, he showed a SWOT analysis (Strengths, Weaknesses, Opportunities, and Threats) named „SWOT – Sun days“ (Picture from my Tweet). One weakness stated the slow release cycle of Java SE. Oracle will do a better job in the future, beginning with Java 7 in 2011 and Java 8 in 2012. Further releases (Java 9 and so on) also seem to be in planning stage already. Java shall remain the most used language!

Tags: , , , , , , ,