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

Wednesday, April 22, 2015

JavaOne 2015 - Tips And Recommendations For Your Submission.

13:00 Wednesday, April 22, 2015 Posted by Markus Eisele
Everybody knows JavaOne. It feels like, it's been there forever. And even if we had our ups and downs and the location isn't exactly what we want it to be and San Francisco is expensive and and and. It is the number one premium conference about all kinds of Java. And being part of the program committee ("Java, DevOps, and the Cloud" and "Java and Server-Side Development") again this year makes me proud. And this is my personal call to action for you: If you haven't considered submitting something to JavaOne yet, time is running out. The CfP will close on April 29th and the different review teams of the individual tracks are eagerly awaiting all your awesome submissions.
We can brag as much as we want but JavaOne would be nothing without all the great speakers. That is why we need your help to make sure that the 2015 edition will be even more awesome than the past ones. Here are some ideas and recommendations for the undecided.

What Do I Want To Hear From You About Cloud?
The evolution of service-related enterprise Java standards has been underway for more than a decade, and in many ways the emergence of cloud computing was almost inevitable. Whether you call your current service-oriented development “cloud” or not, Java offers developers unique value in cloud-related environments such as software as a service (SaaS) and platform as a service (PaaS). The Java Virtual Machine is an ideal deployment environment for new microservice and container application architectures that deploy to cloud infrastructures. And as Java development in the cloud becomes more pervasive, enabling application portability can lead to greater cloud productivity.
As this track covers everything from service oriented development and architecture approaches to continuous delivery and DevOps, I expect a lot of different kinds of proposals to come in here. If you want my eyes to catch your proposal here are some ideas:
  • Microservices are cool. I get that. But there's more to it than just buzzword bingo. What I am looking for are some real world ideas or at least something that you tried out. Don't just try to explain what they are (I dropped the famous Fowler slide from my presentations some time ago already). Try to explain what they solve for you and why you've just not gone down the typical Java EE road. And of course, there's stuff like OSGi and Vert.x which also might be a suitable way to do microservices in Java. Surprise me with your experiences.
  • Containers are cool. And Docker is one of them. There's a lot more. And speaking about Containers isn't exactly Java related. For me it will not be enough if you just Docker-ize everything. Please make sure to link your container proposal to Java. This can be anything about introductory content, or how to make the most out of containers as a Java developer. Even in this particular area, I think it is most important to stress your real experiences. Show me your code; your story.
  • PaaS is cool. Oh yes. And we're going down the cloud road further over the next couple of years. Please don't just pitch a product. Don't just tell me how to use OpenShift, Cloud Foundry, Spring Cloud. That is nothing I want to hear. There are readme's and documentation out there. Show me what you did with the PaaS of your choice. Tell me about your choice and let me know, what worked and what didn't. Found out about something that is extremely rough? Or very easy to do? Got some best practices to share! That's what I am looking for.
  • DevOps is cool. Sort of. Not many of us do it. Enterprises have a hard time with it. What did make you look into this topic. What worked and why? Was technology a key to your success? Tell me more about how you made it work in which context. 
What Makes A Good Server Side Track Submission?
Java Platform, Enterprise Edition (Java EE) is the standard in community-driven enterprise software. Developed using contributions from industry experts, commercial and open source organizations, Java user groups, and countless individuals, Java EE offers developers a rich enterprise software platform. And believe it or not, I've been working with Java EE on different containers for almost 15 years now. So, what can surprise me in terms of a good presentation?
  • Java EE 6 isn't cool anymore. We've been there before. If you want to talk about this or even earlier versions, JavaOne might be to fancy for you. We are years into Java EE 7 already and I think, I heard everything about earlier versions that one can say.
  • Java EE 8 is for spec leads and innovators. And this is pretty true. If you really want to talk about something that is hopefully going to be announced at JavaOne 2016, you better be an expert group member or part of an Adopt-A-JSR initiative or an active committer on an Open Source Project that strives to deliver an early implementation. I might consider other community activities which want to help shape EE 8. But beyond this point, it might be a bit trickier to get a talk about EE 8 into this year with my votes on it.
  • Java EE 7 is where the music plays. This is what we are hopefully using today. And weather you want to talk about an individual specification or full-stack, or if you want to showcase your app/product based on it. Or if you have a migration story to share or some real production war-stories. This is right up my alley. 
  • Deployment War Stories are yesterday. We want success stories. Tell us what did work, what didn't and how you solved it. Surprise me with an entertaining talk about how you made an enterprise release more often than 2 times a year. How you package and deliver your application. How have you been able to implement a DevOps workflow? Crossing the Container bridge here, you might consider adding the Cloud and Container track as a second potion.
  • Security is your wildcard. Because it's my favorite topic. If you solved some complex rights and roles requirement and did that done with a decent performance, or if you came up with a highly secure x-factor authentication solutions, I would love to hear about that.
  • Product pitches are for beginners. We do know better, don't we? Wanna talk about JBoss EAP or WebSphere or WebLogic? I'm sure there's a conference for that. I want to hear people talking about Open Source and community driven projects. How they contributed, how they used them successfully. 
In more general, there are some good write-ups about how your submission should look like. Arun did a great summary and I think some basic tips are also included on the JavaOne website. Please, keep in mind, that the program committee members might not know you. And we all invest double digit hours into reviewing all the amazing submissions. So, please make it as easy as possible for us and try to walk in our shoes a bit before submitting.

Good Luck! We're nothing without you! Keep trying and give us your best! I can't wait to see what you come up with. Submit your proposals today. Time is running out!

Tuesday, April 21, 2015

Time to toss out Java 7 - JBoss EAP 6.4 is here!

12:00 Tuesday, April 21, 2015 Posted by Markus Eisele
What a great end to the week. JBoss EAP 6.4 was released and among a ton of technical enhancements and new features, the biggest is: Java 8 has been added to the list of supported configurations. And this includes the Oracle JDK and IBM JDK.

Java SE 7 End of Public Updates Notice
After April 2015, Oracle will no longer post updates of Java SE 7 to its public download sites. Existing Java SE 7 downloads already posted as of April 2015 will remain accessible in the Java Archive on the Oracle Technology Network. Developers and end-users are encouraged to update to more recent Java SE versions that remain available for public download in order to continue receiving public updates and security enhancements. This means, that Java 7u79 and 7u80 are the last public releases of Java 7. So, I guess, that we're just in time with Java 8 support.

WildFly vs. EAP - A Symbiotic Relationship
The so called upstream community project WildFly is the basis for the commercial (yet open source) JBoss Enterprise Application Platform product. While WildFly continuous to embark on the Java EE journey implementing the latest and greatest iteration of the spec, introduce a host of great new features or strive for even better performance. The mission for EAP is long term, strategic and JBoss EAP follows up with a clear focus on enterprise level performance and stability, long term maintenance and first class professional support.

To download JBoss EAP as a developer you must have a account. You also need to accept the terms and conditions of the JBoss Developer Program which provides $0 subscriptions for development use only. Read more about the JBoss Developer Program.

For further information and details refer to the full JBoss EAP 6.4.0 documentation suite.

Monday, April 20, 2015

The Java Council: First vJUG Podcast. Microservices, Events and all Java.

09:00 Monday, April 20, 2015 Posted by Markus Eisele
, ,
I was invited to join the vJUG and give a talk about Large Enterprise Java Architecture and as a follow-up I also had the chance to be among the first guests of the newly created Virtual JUG Podcast.

Recording the Podcast with Hangouts, Audacity, Skype and Google Docs.
Featuring regulars Simon Maple, Trisha Gee and Martijn Verburg with guests Markus Eisele and, Daniel Fullarton. The team did a great job guiding the guests through the show. We talked about all kinds of things, like past events and happenings, looked at the most recent developments in and around Java and also reviewed the latest community news. I think, it's been a very funny hour and we covered a lot.
Thanks again for inviting me, it's been my pleasure. Get the podcast from the Virtual JUG page and have something to listen during your commute or lunch-hour. Don't forget to get a #coffee+++! ;)

TIMINGS: (Show Notes)
Community News: 18:55
Events/New Product Releases: 38:10
In the News: 1:01:10
Rant/Inspiration of the month: 1:11:17
Total Length: 1:16:58

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.