Setting up ELK stack on Ubuntu

ElasticSearch, Logstash and Kibana also known as the ELK stack provides a way of analyzing and visualizing log data from various sources. I have used it to analyze various logs from simple HTTP server logs to more complex WebSphere logs spanning multiple clusters and combining them into something more legible. This post details how I set up the ELK stack on an Ubuntu server.
Continue reading Setting up ELK stack on Ubuntu

WebSphere Liberty NoopUserRegistry Add-On

WebSphere Liberty has a bug in the implementation of JASPIC that prevents developers from making their own modules that do not have a user realm that is managed by WebSphere’s UserRegistry.  To work around it I took some hints on Arjan Tijms’ work testing with JASPIC on WebSphere Liberty and combined it with my knowledge of Maven and OSGi.
Continue reading WebSphere Liberty NoopUserRegistry Add-On

Developing add-on for WebSphere Liberty using Maven

Recently I had to tackle on yet another Java EE server to see how it fares against my OpenID Connect JASPIC module as WildFly had a critical flaw preventing my JASPIC module from working among other issues.

Where WildFly and Glassfish vendors do not make any specific mention that they are production ready, the IBM team had made a claim that WebSphere Liberty is a production-ready Java EE 7 environment. So I decided to give it a go with my module and unfortunately it didn’t work right away. It turned out I needed to create a NoopUserRegistry and deploy it as a feature. The instructions are pretty much too convoluted and tool centric for my tastes so I decided to tackle it my way.
Continue reading Developing add-on for WebSphere Liberty using Maven


The TL;DR version: JAX-WS is meant for XML based web services such as SOAP. JAX-RS does not have the same restriction.

JAX-WS is generally geared towards server to server interactions with well defined contracts (WSDLs) and usually when the service and client side are from separate groups. It is very resource intensive so it isn’t feasible for client-to-server interactions where the network or client device capability is less than optimal.

JAX-RS is geared towards client to server interactions, although server-to-server is okay. As it has little service obligations, it can be tuned to whatever the client needs are.
Continue reading JAX-WS vs JAX-RS