Goodbye 2015, Hello 2016! – Happy New Year.

It has been an amazing year for me. With 31 trips to 13 countries and a total of 110k miles traveled, I have seen a lot of places and spoken at many conferences and user groups. I had the pleasure to talk to many many people and learned a lot about technology and community. The main topics in my past year have been the Red Hat JBoss middleware integration technologies. Mixing those with my Java (more...)

Automated regression testing in Java with Selenium IDE, Selenium WebDriver and Selenide

After an update it is often desirable to check whether existing features of an application are still working correctly. This process is called ‘regression testing’. Several tools can be used to automate this process. This blog will focus on Selenium IDE, Selenium WebDriver and Selenide which can be used for front-end/ black-box testing of browserapplications.

Selenium IDE

Selenium IDE is a Firefox plugin which can be used to record interactions with a web application. After (more...)

Very Practical CRUD with JET and ADF BC – POST and DELETE Methods

In my previous post I have described how to implement PATCH method with Oracle JET and call ADF BC REST service to update row attributes - Very Practical CRUD with JET and ADF BC - PATCH Method. Today I'm going to complete CRUD implementation with POST and DELETE methods, to create and delete rows through ADF BC REST service and JET UI.

Here you can watch video, where I demonstrate PATCH, POST and DELETE methods (more...)

ADF BC Groovy Improvements in ADF 12.2.1

Groovy scripting is improved in ADF 12.2.1. There are no inline Groovy expressions anymore. Expressions are saved in separate Groovy language file, external codesource. Each EO/VO will be assigned with separate file to keep Groovy expressions. This improves Groovy script maintenance (easier to check all Groovy expressions from EO/VO located in one file), also it improves runtime performance (as JDeveloper ADF code audit rule suggests).

Inline Groovy expressions created with previous JDeveloper versions (more...)

Very Practical CRUD with JET and ADF BC – PATCH Method

I'm going to share few more tips, how to implement CRUD in JET and call ADF BC 12.2.1 REST service. You are going to learn how to implement table row selection and how to call REST PATCH method to update data through ADF BC REST service. Why very practical? You can take sample application code and use it in your project. Less theory and more practical hints - this is my approach.

This (more...)

Combine WC Portal Assets in one Workspace

Working with WebCenter Portal 12c, you can develop your (Shared) Assets within JDeveloper. After installing the WebCenter updates, you can create an WebCenter Portal Asset Application: 

Choose a more generic application name, in my case RichardWcpAssets:

Now in step two I already know I am going to create a Page Template Asset, so I name the Project RichardPageTemplate and accept the default Project Features:

Accept the default package and location in step three and move (more...)

Getting Started With The JBoss EAP 7 Quickstarts

Now, that the beta of latest Red Hat JBoss Enterprise Application Platform7 is out, it is about time to explore the available Java EE 7 quickstarts and deploy your first application with JBoss Developer Studio (JDBS).
The quickstarts demonstrate JBoss EAP, Java EE 7 and a few additional technologies. They provide small, specific, working examples that can be used as a reference for your own project.

To make it a quick start for you, I (more...)

A Refresher – Top 10 Java EE 7 Backend Features

This is the second part in my little Java EE 7 refresher series. After a first introduction with a brief overview, I decided to ask Arjan Tijms to write about his favorite new backend features in Java EE 7. You will know Arjan if you're following the Java EE space. He is a long time Java EE developer, JSF and Security EG member and he created OmniFaces together with Bauke Scholtz (aka BalusC) and helps (more...)

Red Hat JBoss Enterprise Application Platform 7 Beta Released!

Red Hat JBoss Enterprise Application Platform 7 Logo
A little over a month after we made the alpha version available, the Red Hat JBoss Enterprise Application Platform 7 Beta - Early Access was released last Friday.

For a complete list of new features, refer to my older blog-post and the official release-notes.
JBoss EAP 7  is a significant release in every respect; the last major EAP release (EAP 6.0) was back in June, 2012 and after 4 minor feature releases and (more...)

Oracle JET Collection Paging Control and ADF BC REST Pagination Perfect Combination

Oracle JET provides out of the box support for collection paging control, this allows us to use table/list UI with show more option or pagination - Paging Control: High Watermark Table with unknown row count. The main advantage of pagination from performance point of view - no need to load entire collection at once. Data from the REST service can be loaded to the UI in small portions.

I did a test to check how (more...)

Java EE Microservices Architecture – O’Reilly Webcast

Just a few days ago I had the chance to give a webcast with O'Reilly. This webcast is now available on demand and you can watch it for free after registration.

Java EE Architectures - Evolving the Monolith
Evolving monolithic Java EE applications
With the ascent of DevOps, microservices, containers, and cloud-based development platforms, the gap between state-of-the-art solutions and the technology that enterprises typically support has greatly increased. But some enterprises are now looking to bridge that gap by (more...)

Improved JET Rendering in ADF

This post is supposed to provide improved solution for the approach described previously - ADF and Oracle JET - Integration Pattern with ADF Regions. Many thanks to John Brock, Product Manager for Oracle JET, for his proactive comments and suggestions.

I have changed it to JET rendering in ADF, instead of integration. Perhaps word 'integration' is too strong in this context. You should not mix two frameworks together, like trying to render data from (more...)

Checking for Data Consistency with ADF BC REST 12.2.1

ADF BC REST supports HTTP ETag to check for data consistency. This is common approach to implement caching and optimistic locking in REST.  ADF BC REST relies on EO change indicator attribute, when change indicator attribute value is updated, new ETag is generated. All clients with previous ETag value should be prevented from updating data, without refreshing to the latest state. Read more - 22.9.1 Checking for Data Consistency When Updating ADF REST (more...)

Range Paging and ADF 12.2.1 ADF BC REST

ADF 12.2.1 ADF BC REST service is compatible with range paging mode of ADF BC View Object. Range paging generates SQL query with rownum to retrieve only a subset of rows to be returned to the REST service. This can be especially effective when executing SQL query against large tables. Range paging size is determined dynamically by parameter in REST URL.

When range size is not specified, ADF BC returns 5 rows. This (more...)

CRUD with ADF 12.2.1 ADF BC REST

I had a post about REST support by ADF BC in ADF 12.2.1 - ADF 12.2.1 ADF BC Support for REST. This was introduction, today I will go further and test CRUD (Create Read Update Delete) operations (using Postman REST client). Good news, CRUD are supported by ADF BC REST out of the box, there is no need to code anything. ADF BC REST services are well documented in ADF developer (more...)

Testing software: 5 tips from Devoxx- speakers

In software development testing is vital. At Devoxx Belgium 2015 several experts formulated useful tips for the creation and use of such tests:

#1 Use graphs to monitor behavior

Lorin Hochstein, Senior Software Engineer at Netflix showed a graph with the typical use of the services of Netflix: most users watch videos and series in the evening, while there is less activity during the day and at night. If the graph does not follow this (more...)

A Java EE 7 Application on OpenShift 3 With JBoss Tools

You can create and manage OpenShift applications in Eclipse with the latest version of the OpenShift Plugin for JBoss Tools. They are either pre-bundled with the latest JBoss Developer Studio (9.0.0.GA) or you can install them into an existing Eclipse Mars. This post walks you through deploying the Java EE 7 Hands-On-Lab in OpenShift with the JBoss Developer Studio.

OpenShift 3 Tooling Overview
The OpenShift 3 tooling is included as a TechPreview. (more...)

IBM Containers running Spring Boot Applications with IBM Bluemix

There is now a new command line plugin for IBM containers on Bluemix so you can push and run docker images using CF CLI itself. The steps below show you how to set this up and I use a basic spring boot application as a docker image to test this out.

Steps

Take a note of the docker local host IP. In this example it was as follows, as I test my docker image on (more...)

Oracle Management Cloud – An Overview

Most organizations are transforming themselves to digital enterprise, and IT plays a key role in this transformation. The ways applications are built, delivered, and consumed have significantly changed in the last few years. Organizations have adopted agile methodologies and delivering applications very rapidly, adopted hybrid Cloud, and many of the applications are now consumed from mobile devices. This transition poses a lot of challenges to IT Organizations, and they need new generation tools that can (more...)

Microservices, DevOps and PaaS – The Impact on Modern Java EE Architecture

Just a short information about an interview I did with Daniel Bryiant at Devoxx Belgium. We set together and talked about the recent microservices hype and how enterprises will be able to adopt it. This interview touches some basics from my recent O'Reilly mini-book and explores the organizational changes a little more.

InfoQ Article Screenshot


If you have a minute, read it and let me know what you think. A big thank you to Daniel for hosting this (more...)