Using Byteman to Find Out Why the TimeZone Changed on a Java App Server

This article is about a real problem I faced where the timezone on a Java application server (in my case it was JBoss) changed unexpectedly during the run time of the server. It was hard to find any pattern or the reason for the change, as it was triggered by a HTTP request. To debug this scenario, I used the Byteman tool and injected the script into the JVM. This helped me to identify the root cause of the issue and come up with a few Do’s and Don’ts for a shared JVM (like on Java application servers).

Any application server is considered a shared JVM. There are multiple applications deployed on the JVM and they share the same resources. In such a scenario, there are some precautions which need to be taken care of. One of them is dealing with the JVM’s timezone.

Byteman is a tool that makes it easy to trace, monitor, and test the behavior of Java applications and the JDK runtime code. It injects Java code into your application APIs or into Java runtime methods without the need for you to recompile, repackage, or even redeploy your application. Injection can be performed at startup or in running code.

Continue reading “Using Byteman to Find Out Why the TimeZone Changed on a Java App Server”


JBoss Data Virtualization: Integrating with Impala on Cloudera

Cloudera Impala is a tool to rapidly query Hadoop data in HBase or HDFS using SQL syntax.  You can use Red Hat JBoss Data Virtualization to query that same data via Impala to take advantage of its optimization. You can also combine that data with other data sources in real time.  The goal of this guide is to import data from a Cloudera Impala instance, manipulate it, and then expose that data as a data service.  This guide includes access to a repository with example scripts, creating a custom base and view model, exposing it as a data service, and finally consuming that data via REST. This is a peer article to Unlock Your Cloudera Data with Red Hat JBoss Data Virtualization.

Continue reading “JBoss Data Virtualization: Integrating with Impala on Cloudera”


How to start multiple Artemis brokers inside Red Hat JBoss EAP-7 container in Master/Slave fashion

To be as simple as possible, we will walk through a stand-alone use-case.

Usually, when we require having messaging features in our stand-alone environment, we use full profile for EAP container.

If we have a requirement with clustering functionalities then we prefer to have HA profile but if clustering and messaging both are required then we go for a full-HA profile.

Continue reading “How to start multiple Artemis brokers inside Red Hat JBoss EAP-7 container in Master/Slave fashion”


JBoss: Developer’s Guide

Modern applications development demands optimized tools and services. Applications must integrate with different systems and share data. Organizations must be able to immediately respond to changing conditions. JBoss Middleware drives enterprise application innovation every day to deliver the best projects and products. Whether you are an experienced enterprise application developer or just getting started, JBoss: Developer’s Guide provides you with the best time to value guide for enterprise application delivery with the JBoss brand, using hands-on coding and lab exercises with real-life business examples. In-depth information is provided for multiple components of the JBoss Middleware ecosystem to guide you through application development, deployment, data storage and access, communication and messaging, and business process optimization.

Continue reading “JBoss: Developer’s Guide”