Java Lobby Announcements

Subscribe to Java Lobby Announcements feed
Recent posts in Java on
Updated: 12 hours 50 min ago

A Step By Step Guide For Dockerizing and Managing a Java App On 28 Different Application Stacks

14 hours 21 min ago

To run & manage the 28 Java application templates in this project on 13 different clouds and virtualization platforms (including vSphere, OpenStack, AWS, Rackspace, Microsoft Azure, Google Compute Engine, DigitalOcean, IBM SoftLayer, etc.), make sure that you either:

You can clone this sample “Names Directory” Java application from GitHub.

Categories: Java

6 Production Features of Payara Server (& GlassFish) You May Not Know About

Mon, 2015-11-30 18:13

1. Payara Server Has a Full Web Based Administration Console 

The Payara administration console is fully featured and provides a single view of all clustered and standalone Payara servers. New servers can be created, configured and controlled from the administration console. Applications and resources can be deployed across the whole domain all from the administration console.

Categories: Java

This Week in Spring (Nov. 30)

Mon, 2015-11-30 08:08

My goodness the time has flown! We’re already staring down the beginning of 2016!

Welcome to another installation of This Week in Spring! This week I’m in beautiful Casablanca, Morocco for Devoxx Morocco! This is the fifth Devoxx this year — with events in Belgium, UK, France, Poland and now Morocco — and I have the rare honor of having spoken at all of them! #fullDevoxx

Categories: Java

Calling Stored Procedures From Spring Data JPA

Mon, 2015-11-30 07:58

Consider the following stored procedure:

CREATE OR REPLACE PACKAGE test_pkg AS PROCEDURE in_only_test (inParam1 IN VARCHAR2); PROCEDURE in_and_out_test (inParam1 IN VARCHAR2, outParam1 OUT VARCHAR2); END test_pkg; / CREATE OR REPLACE PACKAGE BODY test_pkg AS PROCEDURE in_only_test(inParam1 IN VARCHAR2) AS BEGIN DBMS_OUTPUT.PUT_LINE('in_only_test'); END in_only_test; PROCEDURE in_and_out_test(inParam1 IN VARCHAR2, outParam1 OUT VARCHAR2) AS BEGIN outParam1 := 'Woohoo Im an outparam, and this is my inparam ' || inParam1; END in_and_out_test; END test_pkg;

Here we have two different procedures:

Categories: Java

Take Advantage of New Generic Parameters in JSF 2.3

Sun, 2015-11-29 07:43

As you probably know, in JSF 2.2 we can write a custom converter by extending the Converter interface, and a custom validator by extending the Validatorinterface. The methods defined in these interfaces works with the Object class, as you can see in the below skeletons:

JSF 2.2 Custom Converter Skeleton@FacesConverter(value = "fooConverter") public class FooConverter implements Converter { @Override public Object getAsObject(FacesContext context, UIComponent component, String value) { ... } @Override public String getAsString(FacesContext context, UIComponent component, Object value) { // check value type and cast it ... } }JSF 2.2 Custom Validator Skeleton@FacesValidator(value = "fooValidator") public class FooValidator implements Validator { @Override public void validate(FacesContext fc, UIComponent uic, Object o) throws ValidatorException { // check value type and cast it ... } }

Starting with JSF 2.3 Converter and Validator have now been parameterized and implementations can concisely define the exact input type.

Categories: Java

Ratpacked: Using Optional Path Tokens

Sat, 2015-11-28 08:12

Normally we define a variable path token with a colon (:) followed by a variable name. To make this token optional we follow it with a question mark (?). This tells Ratpack that the token can have a value or not. In our handler we now need to take into account that the path token is optional as well.

Let's write a sample Ratpack application with a path definition containing an optional token. We define a path binding for profiles/:username?. The path token username is available in our handler if the value is set, but also a request for profiles will match for this binding. Then the value for username is not set.

Categories: Java

Migrating Spring Cloud Apps from Spring Boot 1.2 to 1.3

Sat, 2015-11-28 07:30

There are some interesting new features in Spring Boot 1.3 that are now available in Spring Cloud in the Brixton release train. The Angel release train of Spring Cloud is partly incompatible with Spring Boot 1.3, so when you upgrade there are some important things to be aware of. This article helps you navigate the changes and update any existing apps to use the new features. It should also be helpful generally when trying to adopt new versions of Spring projects into existing codebases.

WARNING: The rules for dependency resolution in the case of conflict when using Gradle appear to be unclear, and may depend on more than we say in the article. This came to light as a result of testing the code in the blog, so we are still discussing how to resolve things. It might be a bug in the Gradle tooling.

Categories: Java

2015 Duke’s Choice Award Winners Announced

Fri, 2015-11-27 11:07

The incredible amount of innovation that uses and builds upon standard Java/EE technologies is one the most important factors that keeps our ecosystem so uniquely strong. The annual Duke's Choice Awards is a small way of recognizing and encouraging such innovation. Every year a panel of judges gives out ten of these awards at JavaOne (in the interest of full disclosure I am one of those judges). Every year Java EE makes a strong showing at the awards and this year was no exception (in fact I'll share that Java EE makes an even stronger showing in the total number of nominees). In particular the following winners are worth highlighting on this humble blog.

UN/WFP School Subsidy Card: Thousands of students in developing countries lack access to adequate food, Egypt is sadly no exception. Egypt based consulting company e-Finance developed the United Nations’ World Food Program (UN/WFP) School Subsidy Card to help combat this problem. The project was developed for Egypt’s Ministry of Education. The project is now live as a pilot that helps 20,000 families in two poor cities. The project uses Java EE 7, Java SE 8, GlassFish 4 and NetBeans. The project is led by Mohammed Taman. Mohammed is an experienced architect, consultant, Morocco JUG member, Egypt JUG leader, JCP executive committee member and expert group member for multiple JSRs. He is an ardent advocate for Java EE and has been a very active participant in the Adopt-A-JSR, Adopt-OpenJDK, and FishCAT programs. Mohammed's work was highlighted at JavaOne, including in the Java EE portion of the keynote.

Categories: Java

Eclipse Key Binding: Select Enclosing Element

Fri, 2015-11-27 08:03

Here’s a Eclipse command that’s pretty handy: Select Enclosing Element  (key binding:Shift+Alt+Up on Linux).

Every time you hit the key combination, it expands the selection to the enclosing element. In this example, it starts with the method selector, and expands to include the parameters, the receiver, the statement, the block, the method, … all the way up to the entire compilation unit.

Categories: Java

Beginning NetBeans IDE: For Java Developers – Book Review

Thu, 2015-11-26 08:53

Today I finished reading the Beginning NetBeans IDE: For Java Developers Book: a masterpiece written by Geertjan Wielenga, a product manager in the NetBeans Team, and published by Apress on August 29th, 2015.

‘’To make your work a masterpiece, first master the tools of your work.’’ -Chinese adage

Categories: Java

Programming Problems and Finding Solutions in the Community

Thu, 2015-11-26 08:02

It’s been years (8 years to be exact as of this writing) that I've been involved in various forums such as (, (, (, (, (, ( and most recently at C# corner forums. I’ve helped resolve hundreds or maybe thousands of questions from simple to very complex issues.

Being in the community is awesome because I get the chance to learn and help fellow developers around the world. Most of the time I’ve encountered questions that are not very clear, duplicate questions and even more questions that are very general in nature. So I thought I would share some of my thoughts on the topic and provide some guidance for those developers looking for a solution to their problems.

Categories: Java

Geek Reading November 25, 2015

Wed, 2015-11-25 17:34

TechCrunch leads the day with a very cool article about biometric tattoos. Disappointingly, the first applications sound like they will be military in nature, but the idea could lead to some really interesting ideas. Yanir Seroussi has a very good post on the hardest parts of data science. Like many other posts I have shared, he reveals that the hard part is not some advanced algorithm. Lastly, Amazon AWS finally announces the availability of EC2 dedicated hosts. This has been something that most people using EC2 have been begging for.

As always, enjoy today’s items, and please participate in the discussions on these sites.

Categories: Java

Spring Boot Dev Tools in 1.3.0 Bring Automatic Restart and More

Wed, 2015-11-25 09:33

In the 1.3.0 release of Spring Boot, a new module is available called Spring Boot Developer Tools. This new Spring Boot module is aimed at improving developer productivity in building Spring Web Applications.

When you’re developing a web application in Java, or really any programming language, a common workflow is to code, compile, deploy, and then test in the browser. In scripting languages, such as PHP, there is no compile / deploy phase. The script is evaluated by the server at run time, thus negating the need for a compile / deploy phase.

Categories: Java

Spring Example Tests for New Developers

Wed, 2015-11-25 08:54

There was a longer gap in my blog because I was busy writing my book Pivotal Certified Spring Enterprise Integration Specialist Exam – A Study Guide. This book is example-heavy. Fortunately, Apress agreed to open source all these examples. Therefore, there is quite an extensive collection of Spring examples available in this GitHub repository. Altogether, there are 146 Spring examples with integration tests.

Most of these examples use Spring Boot, but the book is not focused on this modern framework, therefore there are also plain Spring Framework examples. So it is possible to see how Spring Boot can simplify a Spring developer’s life. Most of the examples are covered with Java and XML configuration (where it made sense), and it provides also good comparison between these two approaches.

Categories: Java

Simon Ritter Joins Azul Systems

Tue, 2015-11-24 07:10

Simon Ritter has recently joined Azul Systems as Deputy CTO. We sat down and had a chat with him to find out what he’s going to be doing and his thoughts on the world of Java at the moment and in the future.

Q: Deputy CTO sounds like a great role, what exactly will you be doing at Azul Systems?

Categories: Java

Yet Another Report Generator?

Tue, 2015-11-24 07:02

If you have experience of business application development, then most likely you will have encountered a requirement for the application to have a flexible reporting mechanism. The company I work for is mainly focused on developing business solutions and reporting is an essential, indeed, must have aspect of all the enterprise systems we develop. To enable flexible reporting in our systems, we have developed our own open-source (distributed under Apache 2.0 license) report generator - YARG (Yet Another Report Generator). Now YARG is a heart of the reporting in the CUBA platform - which itself is the basis of all the systems we develop.

Why is There a Need to Develop a New One

First of all, let me remark that we are not wheel reinventors. We are always looking for solutions to integrate with, as long as those solutions fit us. Unfortunately, in this case we couldn’t find any open source tool that met the following requirements we identified:

Categories: Java

Why the Java Serialization Vulnerability Makes Heartbleed Look Tame

Mon, 2015-11-23 10:14

I've been receiving questions from some of you to provide a bit more detail on why the Java Serialization vulnerability is so critical to fix.

Why is This Such a Big Deal? 

It’s a big deal because many enterprise applications are vulnerable. It’s not fully automated, but it’s still pretty easy to find and exploit this problem in applications.  And it allows the attacker to completely take over the entire server the application is hosted on.  They could steal or corrupt any data accessible from that server, steal the application's code, change the application, or even use that server as a launching point for further attacks now that they are inside the data center.

Categories: Java

Java EE 8 MVC + Leaflet Map demo

Mon, 2015-11-23 09:29

This article shows, how to create geographic map using Java EE 8 MVC and Leafleft. My goal is to replace this static boring map with something more sexy. I use new Java EE MVC and Leafleft for this stuff.

New Java EE's action-based MVC framework will be available in Java EE 8. You can get basic info about Ozark (MVC reference implementation) in this article

Categories: Java

MVC 1.0 in Java EE 8 - Handling Form Submits

Mon, 2015-11-23 09:26

After introducing the core features of MVC 1.0 like Controllers, Models and how to get started with MVC this post of my MVC 1.0 in Java EE 8 series is about handling Form Submits.

In MVC 1.0 there are two ways to post form input to controllers.

Categories: Java

Interview with Talip Ozturk – Founder & CEO of Hazelcast

Mon, 2015-11-23 08:52

Recently we had a very special guest in our Lightweight Java User Group. Talip Ozturk is the founder & CEO of Hazelcast. He is a pioneering startup founder having created the first Silicon Valley startup from Turkey. He has been working with enterprise Java since 1999. Talip gave a nice talk on Distributed Caching with JCache and beyond. After his talk we took the opportunity to ask a couple questions about him and his work.

Check out the interview with Talip Ozturk below:

Categories: Java