Java EE and general Java platforms.
You'll read about Conferences, Java User Groups, Java EE, Integration, AS7, WildFly, EAP and other technologies.

Friday, April 17, 2015

How To Use The Docker 1.6 Windows Client

15:00 Friday, April 17, 2015 Posted by Markus Eisele
, ,
Newest Docker 1.6 release was pushed yesterday. Normally, no reason to go crazy, but this time I think, it's worth a blog. Because, it finally contains the first Docker Client for Windows. If you hated having to ssh into your instance and having to do everything via boot2docker: This is over now.
You can download official distribution of Docker Client for Windows by either installing it from the Chocolatey package manager (which I never tried before) or installing Boot2Docker, which provides a Docker-ready development environment inside a local virtual machine (VirtualBox). You can also simply upgrade your Docker VM with boot2docker (stop || download || start).

Installing Boot2Docker And The Windows Client
I went down the road I did before and re-installed boot2docker completely. A very simple and clear experience. Please refer to the complete Windows installation instructions, if you run into any errors.
The Boot2Docker start shortcut initializes and starts your docker VM. Although you will be using Windows Docker client, the docker engine hosting the containers will still be running on Linux. Until the Docker engine for Windows is developed, you can launch only Linux containers from your Windows machine. If the VM is up and running, just open another command prompt and try the new Docker Windows client. Make sure you have initialized some environment variables first:

set DOCKER_HOST=tcp://<IP_ADDRESS>:2376
set DOCKER_CERT_PATH='C:\Users\%USERPROFILE%\.boot2docker\certs\boot2docker-vm'
Now just enter "docker" and you have successfully launched the client.

This is it. If you want to make sure, everything is working, just try to run the hello-world example:

docker run hello-world
And it's done. So, now you have the full user experience of the windows command prompt without having to go through boot2docker ever again. Just start your docker VM via VirtualBox and use the new windows client tooling. All this was mainly done with help from Microsoft. Ahmet Alp Balkan (@ahmetalpbalkan) was the main committer and he also blogged about the client yesterday.

Tuesday, April 14, 2015

How to contribute to JBoss WildFly? Hacking on the next Java EE Version!

13:00 Tuesday, April 14, 2015 Posted by Markus Eisele
, ,
Paul and I are running the Virtual JBoss User Group and we aim for delivering interesting and high profile talks around all kinds of JBoss projects and technologies. I normally don't blog about every upcoming meeting, but let me highlight some, which I find very interesting and I am very happy to have them on our channel.

How to contribute to JBoss WildFly? Hacking on the next Java EE Version - Tuesday, April 21, 2015, 5 PM UTC
Speaker Kabir Khan (@kabirkhan, GitHub) will explain how you can contribute to the WildFly project at many different levels, from properly reporting bugs in the forums and issue tracker, to actually being able to submit a pull request.

Kabir Khan joined JBoss in 2004 and lead the JBoss AOP project. During this time he helped write the first EJB 3 implementation, and helped on integrating JBoss AOP with other projects such as JBoss Messaging, and the JBoss Microcontainer. He joined the JBoss Microcontainer team in 2009, and spent a lot of time optimising its performance for JBoss AS 6. In 2010 he joined the WildFly team very early in the JBoss AS 7 cycle, and has been a member of the core WildFly team since. He is based in London.

During this interactive event you will have a chance to play with WildFly 9 and try some of the following:
  • Find a JIRA you want to work on.
  • See how to check-out the code and setup your IDE.
  • Build WildFly
  • Code walkthrough - code organisation, jboss-modules etc.
  • Debug something from a stack trace in a JIRA issue to nail down the problem.
  • Try the testsuite
  • And more!
There are Lots of new features in @WildFlyAS v9.0 Beta1! Get it now!. Make sure to check out the release notes. If you want to learn more about the Red Hat JBoss offerings around Enterprise Java and how to get started, checkout the convenient one-stop-page.

Make sure to join the vJBUG on Meetup and register for Hacking on WildFly 9.

Monday, April 13, 2015

Developer Interview (#DI17) with Alex Soto (@alexsotob) Arquillian, Docker and Testing In Containers

08:06 Monday, April 13, 2015 Posted by Markus Eisele
, , ,
Developer Interview time again. Not a Friday, but it was recorded on one. And because it is so awesome, I decided to push it out as soon as I can. Fellow Arquillian contributor Alex Soto (@alexsotob) found some time to briefly walk us through what Arquillian is, and how it works and deep dives into the new extension called Cube which is an extension that can be used to manager Docker containers from Arquillian. With this extension you can start a Docker container with a server installed, deploy the required deployable file within it and execute Arquillian tests. The key point here is that if Docker is used as deployable platform in production, your tests are executed in a the same container as it will be in production, so your tests are even more real than before.

Alex is a software engineer architect in Scytl Secure Electronic Voting and he is focused in enterprise technologies based on the Java platform. He has over a decade of experience in the Java world, yet continually renews his skill set by learning new aptitudes and technologies every day.
He is a passionate of Java world and he believes in the open source software model, free software, and open standards and how they can help companies to delivery software faster and safer. Alex is the creator of NoSQLUnit project and team member of Arquillian and Asciidoctor. Currently he is a member of JSR374 (Java API for JSON Processing) Expert Group, coordinator at Barcelona JUG and organizer of JBcnConf. Moreover he collaborates with Tomitribe, the company behind Apache TomEE.
Alex has contributed to DZone site, TheServerSide web, Methods and Tools magazine and RebelLabs blog and currently he is writing a book for Manning about Arquillian. Moreover he is an international speaker, presenting his talks at software conferences like Devoxx, LinuxTag, Codemotion, Guatemala JavaDays, JavaLand or GeeCon.
Alex is also the curator of blog, a place to talk about Java world, testing automation and continuous delivery in a practical way. In his free time, he spends time with his wife and daughters.

Time to sit back, relax and learn. Warning: This is a little longer, than just a #coffee+++ break!

Friday, April 10, 2015

What Do Assistant Dogs And Java Have In Common?

11:11 Friday, April 10, 2015 Posted by Markus Eisele
, ,
You already know, that the RebelLabs team generates awesome content and you might have come across one of their surveys in the past. I occasionally tweet about them, but just recently they launched something which directly went down to my heart.

What do Assistant Dogs And Java Have in Common?
Actually, RebelLabs started to donate money to charities for each completed survey. And this time the survey is all about Java performance, profilers and tooling. It takes three minutes to complete and you can be sure to get an awesome looking, kick-ass report in return. Just compare the 2014 "Java Tools And Technologies Landscape".
And where do the dogs come in? This time its all about "dogs for the disabled". Dogs for the Disabled is working to provide solutions to help people with a wide variety of different disabilities and conditions; from assistance dogs helping children and adults with physical disabilities and families affected by autism, to pet dog autism workshops, and innovative new projects working in schools and residential care settings.

Stop reading right here and go directly to the survey. Help Disabled Children by Contributing to the RebelLabs' Java Performance Survey!

Thursday, April 2, 2015

JavaLand4Kids Celebrates Successful Premiere and Thrills Tomorrow's Little Programmers

13:24 Thursday, April 2, 2015 Posted by Markus Eisele
All of my readers should know, that I am part of the organizing team behind JavaLand. We celebrated JavaLand just a short week ago and it was amazing to catch up with all of my peers from around the world and bring such an amazing event to Germany.
One part, which I am very proud about is the JavaLand4Kids initiative that was launched this year. Modeled and inspired by Devoxx4Kids this was one of the many exciting new parts that we decided to introduce after last years inaugural version.

14 boys and girls of the 3rd and 4th grade of elementary school were able to convince themselves that programming is easy at the first JavaLand4Kids. In three exciting workshops, the children learned with great enthusiasm and fascination about creative ways to handle a computer and were given playful insights into current technologies.

In the workshop, the girls and boys learned the programming language "Scratch", which is based on graphic elements. Instead of a traditional programming language, this language uses colored blocks that can be moved by drag & drop and so determines the use of sounds, images and movements. This allowed the young talents after a short time to learn the basics of programming and to take the first steps in game programming.

The "QuadroCopter" workshop was exciting, too: Here, the children had the opportunity to control a drone that was programmed specifically for this event. After they learned the basic commands, the newly minted pilots were able to complete many maneuvers. The girls and boys also showed great interest in the electronics kit "TinkerForge". The electronic components can be combined like Lego blocks. This way, the students learned how to handle sensors and their programming.

The accompanying teacher, Jörn Diercks, was thrilled by the concept of JavaLand4Kids as well: "For the children it was really a great experience and it was great to see how much fun they had exploring." He will be happy to attend again next year and to intensify the cooperation.

From now on, JavaLand4Kids is going to be an integral part of the JavaLand Conference. So, this is a call to arms for my friends and speakers. If you want to contribute for next years edition, if you have ideas and want to help shape the next edition, ping me!
I'm personally most interested in adding some more intercultural and speech competencies into all this. But with this new initiative, we will have a great chance to help shape the future of our industry.

Next years edition will take place March 8–10, 2016 and you can already signup to our notification system to be the first to know when registration opens.
Most of the slides are already available for download. Go, checkout the website.
If you had a chance to attend JavaLand, please make sure to send in your feedback. We want to improve and this is your chance to make your voice heard.

Architecting Large Enterprise Java Projects - My Virtual JUG Session

07:46 Thursday, April 2, 2015 Posted by Markus Eisele
, , ,
I had the pleasure to be invited to the virtual JUG yesterday. It is a big honor for many reasons: First of all, I am part of the vJUG board and second because it was my second time presenting to this great group of Java interested people. It is always a pleasure to be invited back.

Architecting Large Enterprise Java Projects
In the past I’ve been building component oriented applications with what I had at hand. Mostly driven by the features available in the Java EE standard to be “portable” and easy to use. Looking back this has been a perfect fit for many customers and applications. With an increasing demand for highly integrated applications which use already available services and processes from all over the place (departmental, central or even cloud services) this approach starts to feel more and more outdated. And this feel does not come from a technology perspective but from all the requirements around it. Having this in mind this presentation is the starting point of a series of how-to’s and short tutorials which aim to showcase some more diverse ways of building (Java EE) applications that fit better into today’s requirements and landscapes.

The slides have been published to slideshare. Feel free to provide feedback and comments on this post or reach out to me on Twitter (@myfear).

Make sure to join the vJUG and follow the awesome sessions live.

Wednesday, April 1, 2015

Review: "WildFly Configuration, Deployment, and Administration - Second Edition" by Christopher Ritchie

13:04 Wednesday, April 1, 2015 Posted by Markus Eisele
, , ,
Travelling has downsides. Especially when coming back to the office to catch up with all the tasks being actively postponed. One of them has been sitting here for too long: It took me a while to get this latest review for Packt Publishing out the door. But this is the good side of traveling, you have plenty of time to read and educate yourself on topics.

WildFly 8 is a modular, lightweight, Java EE-compliant application server. Application deployment and management is simplified with WildFly's centralized and easy-to-use administration interface. It supports high availability and latest web technologies, such as web sockets and a non-blocking API. There was previously a lack of a system-administration-free platform that allowed the scaling of Java EE applications, but WildFly 8 in combination with OpenShift fills that gap.
The book starts with an explanation of the installation of WildFly and application server configuration. Then, it moves on to the configuration of enterprise services and also explores the new web container Undertow. It then covers domain configuration, application deployment, and application server management. By the end of the book, you will have a firm grasp of all the important aspects of clustering, load balancing, and WildFly security. This guide is invaluable for anyone who works with or is planning to switch to WildFly.

Book: WildFly Configuration, Deployment, and Administration - Second Edition 
Language : English
Paperback : 402 pages [ 7.5 x 0.9 x 9.2 inches ]
Release Date : November 25, 2014
ISBN-10: 1783286237
ISBN-13: 978-1783286232

About the Author
Christopher Ritchie (@ChrisRitchie123|blog) is a Sun Certified Programmer with over 10 years of software experience. Having worked in both the UK and South Africa markets, he has worked on a variety of software applications, ranging from online gaming to telecoms and Internet banking. He has a keen interest in the WildFly application server and is an advocate of Java EE technologies. He currently works as a technical lead at the company he confounded, Sports Science Medicine Software, in South Africa. The company's core product is a research-based application that allows the profiling of soccer players through injury and exposure assessment.

The Content
353 net pages without intro and appendix is a good deal for this book. Eleven chapters cover nearly every aspect of WildFly. This includes basics, like installation and goes all the way to cloud computing with WildFly on OpenShift. The separate chapter on securing WildFly is my personal highlight here. The book was build on top of WildFly version 8.x which fully supports Java EE 7 development on top of Java SE 7.

Chapter 1: Installing WildFly
Chapter 2: Configuring the Core WildFly Subsystems
Chapter 3: Configuring Enterprise Services
Chapter 4: The Undertow Web Server
Chapter 5: Configuring a WildFly Domain
Chapter 6: Application Structure and Deployment
Chapter 7: Using the Management Interfaces
Chapter 8: Clustering
Chapter 9: Load-balancing Web Applications
Chapter 10: Securing WildFly
Chapter 11: WildFly, OpenShift, and Cloud Computing

Writing and Style
Generally the instructions are clear and the many screen-shots are helpful. The overall level of detail and mixed in complexity is appropriate and in case you need it you can download the source code from Packt. I like the clear English writing which identifies the author as a native speaker. I would have wished for more command line examples and a little less XML snippets. The conceptual pictures in the book could be a bit clearer and bigger. But this is pretty much everything I have to criticize. 

Conclusion and recommendation
If you are looking for a most complete introduction and you're tired about trying to find the bits and pieces in the online documentation, this book is for you. Also, if you are the kind of person which needs examples and screenshots this book is for you. The very appealing writing style helps in getting all the points across. The unique selling point obviously is the end-to-end coverage of all related topics in a detailed enough way to let you experience WildFly installed locally and on OpenShift.

Friday, March 6, 2015

Developer Interview (#DI16) with Veer Muchandi (@VeerMuchandi) Docker, OpenShift Enterprise v3 and Kubernetes

13:00 Friday, March 6, 2015 Posted by Markus Eisele
, , ,
TGIF! And time for a new episode in my developer interview series. With everybody going crazy about containers, Docker and such I decided to talk to someone who once was a middleware/Java EE guy and let him introduce all the latest news and stuff around OpenShift Enterprise v3.

Veer Muchandi is a Senior Middleware Specialist/Architect at RedHat, an open source enthusiast specifically in OpenShift PaaS and Java EE. Veer is also an Enterprise Architect with broad experience with multiple technologies ranging from legacy mainframes to bleeding edge cloud technologies.

Sit back, relax and get a #Coffee+++! Thanks, Veer for taking the time!

Some Background:
OpenShift 3.x will incorporate a number of significant model changes to better align the PaaS with the evolving development and operational ecosystems - leveraging the Docker container runtime and image model, the Google container management model, and the Mesos scheduling and execution framework. The upstream project, OpenShift Origin is in master and everybody is waiting for the first beta builds. Please NOTE: OpenShift is in alpha and is not yet intended for production use. However they welcome feedback, suggestions, and testing as we approach our first beta. So, if you get a chance to test-drive it: Go for it!

Architecture Overview:

Wednesday, March 4, 2015

The Road To Awesome - Welcome JBoss Champions Program

09:16 Wednesday, March 4, 2015 Posted by Markus Eisele
Today, Arun announced the creation of the JBoss Champions Program in Red Hat. JBoss Champions is a selected group of community members who are passionate advocate of JBoss technologies under a program sponsored by Red Hat. JBoss Champions use a variety of JBoss technologies and actively share their deep technical expertise about it in the community, within their company and their customers or partners. This could be done in forums, blogs, screencasts, tweets, conferences, social media, whitepapers, articles, books, and other means.

I am very happy to see some friends and familiar faces among the founding members:
  1. Adam Bien (@AdamBien)
  2. Alexis Hassler (@alexishassler)
  3. Antonin Stefanutti (@astefanut)
  4. Antonio Goncalves (@agoncal)
  5. Bartosz Majsak (@majson)
  6. Francesco Marchioni (@mastertheboss)
  7. Geert Schuring (@geertshuring)
  8. Guillaume Scheibel (@g_scheibel)
  9. Jaikiran Pai
  10. John Ament (@JohnAment)
  11. Mariano Nicolas De Maio (@marianbuenosayr)
  12. Paris Apostolopoulous (@javapapo)
My congratulations to all of you!

If you want to stay updated with all the latest tweets and rumblings, make sure to subscribe to the @JBossDeveloper/jboss-champions list on twitter.

If you know anyone, who could fit the high profile of a JBoss Champion, don't hesitate to nominate him or her. Find all the requirements and a contact email on the official Champions website.

Friday, February 27, 2015

Developer Interview (#DI15) with Niko Köbler (@dasniko) Java EE and Node.js Performance

13:00 Friday, February 27, 2015 Posted by Markus Eisele
, , ,
Developer interview Friday. Today it is my pleasure to welcome Niko Köbler (@dasniko). We meet a couple of times before and I love following his ramblings about JavaScript on the server side. I talked to him about why and how he came in contact with server side JavaScript in general and made him show a little more about his recent performance test, that he ran against RESTFUL backends (WIldFly and node.js). For those interested in more numbers, he has a blog-post up about it High-Performance Microservices - Node.js vs. Wildfly

Niko works as an independant and self-employed software architect, developer and trainer for Java and JavaScript enterprise solutions, integrations and web development. At the moment he is focussing on running Node.js applications in JVM environments and integrating best of both worlds.
He advises and supports clients across industries, conducts workshops, trainings and architecture reviews. Niko is co-lead of a local Java User Group (, writes articles and speaks regularly at international tech conferences.

Find the code he showed on his github account:
a) Wildfly App
b) Node.js App