Microinvader: The importance of common interfaces in microservices

Common interfaces are essential when building microservices. If each microservice in a larger application has the same interface implemented, it makes maintenance of the microservices easier because of the similarities in the source code. Microinvader is a graphical game that demonstrates some of the concepts of microservices, including the benefits of common interfaces. Think about […] Continue reading Microinvader: The importance of common interfaces in microservices

Filed under: coding, java-ee

MicroProfile and WebSphere Liberty

What are microprofile.io and MicroProfile? microprofile.io is a community created in 2016 dedicated to rapid innovation around Microservices and Enterprise Java, supported by many people from the Java EE community including a number of Java User Groups and Enterprise Java vendors IBM, Red Hat, Tomitribe, and Payara. This community is actively working together on building […] Continue reading MicroProfile and WebSphere Liberty

Filed under: microprofile, coding, java-ee

Get started with CDI interceptors in WebSphere Liberty (Part 2)

Interceptors are classes that intercept method invocation or lifecycle events of a target class to perform some form of pre- or post-processing that is usually separate from the business logic, such as logging or auditing. The first article in this series showed how to associate an interceptor with a CDI bean using interceptor bindings. This second article shows how you can associate multiple CDI interceptors with a bean, allowing each interceptor to be dedicated to performing a specific task. This will create a chain of interceptors, which will be executed in the order defined in the <code>beans.xml</code> or using the <code>Priority</code> annotation. Continue reading Get started with CDI interceptors in WebSphere Liberty (Part 2)

Filed under: coding, java-ee

Changing a Liberty application to use dashDB instead DB2

You might be considering switching your Liberty applications to use <a href="http://www.ibm.com/software/data/dashdb/">dashDB</a> instead of DB2 if, for example, you want to use the <a href="https://console.ng.bluemix.net/catalog/services/dashdb">dashDB service in the cloud</a>. I want to show how easy this transition is because dashDB is very compatible with DB2. Continue reading Changing a Liberty application to use dashDB instead DB2

Filed under: coding, cloud

Developing JPA 2.1 applications in WebSphere Developer Tools and Liberty

Developing JPA 2.1 applications in WebSphere Developer Tools (WDT) for Liberty can greatly benefit from using the WebSphere Developer Tools (WDT) database connectivity tools with its JPA tooling. I'll show some examples of configuring data sources for Liberty in a JPA application, taking advantage of the new schema generation feature in JPA 2.1 to create tables based on entities, and finally the auto-generation of JPA entities based on a database schema. Continue reading Developing JPA 2.1 applications in WebSphere Developer Tools and Liberty

Filed under: coding, java-ee

Getting Java apps talking to Arduino

Arduino is an open source, low-powered, low-cost microcontroller. It's often used in Internet of Things projects to take input from sensors in the environment and to respond appropriately. As a developer, you write a 'sketch' which then runs continuously on the Arduino to tell it how to behave. With this sample Arduino feature for Liberty profile, you can write Java applications that interact with one or many Arduinos. Continue reading Getting Java apps talking to Arduino

New and Noteworthy in the WebSphere Application Server Migration Toolkit V3.5.3

The WebSphere Application Migration Server Toolkit provides analysis rules to help migrate your applications between versions of WebSphere and from competitive application servers to WebSphere. Version 3.5.5 of the WebSphere Application Server Migration Toolkit was released on Monday October 28<sup>th</sup> 2013. Here's what you will find new in the tools. Continue reading New and Noteworthy in the WebSphere Application Server Migration Toolkit V3.5.3

Filed under: coding

Configuring SSL for Liberty

The Liberty profile supports a flexible SSL configuration which allows for multiple SSL settings and multiple keystore definitions. While complex SSL configurations are supported, they are not necessary; Liberty provides for a very simple, easy to use SSL configuration which will help even the most novice application developer get started using HTTPS/SSL with their application. Continue reading Configuring SSL for Liberty

Filed under: coding

How to create an EJB-based web services application

With the WebSphere Application Server V8.5.5 Liberty Profile you can use EJBs in a Web Services programming model. We've added the <a href="https://developer.ibm.com/wasdev/downloads/#asset/samples-EJB_Web_Services_Sample"> EJB Web Services Sample</a> to show this in the Liberty repository. Here are some instructions on creating the User Query service demonstrated in the sample. Continue reading How to create an EJB-based web services application

Filed under: coding

Converting Java EE Projects to OSGi Bundle Projects

In case you didn't know, Rational Application Developer (RAD) and WebSphere Developer Tools for Eclipse (WDT) let you take your existing Java EE projects (say a Dynamic Web project, for example) and easily convert them to OSGi bundle projects. This capability has been there since the beginning but recently we took the opportunity to improve on it in RAD and WDT V8.5.1. Continue reading Converting Java EE Projects to OSGi Bundle Projects

Filed under: coding, java-ee, osgi-techs

Getting Started with OSGi Applications: Blueprint Container (Part 3)

A Blueprint Container is a mechanism to simplify this process and remove all of the OSGi specific Java code, replacing it with a simple XML file and using dependency injection in the Java code. Today we'll start using Blueprint by creating a new bundle that imports the service we created last time and registers a second service. We'll then use this new service to print a message containing the date in the Servlet. Continue reading Getting Started with OSGi Applications: Blueprint Container (Part 3)

Filed under: coding, java-ee, osgi-techs

Getting Started with OSGi Applications: Bundle Lifecycle (Part 1)

OSGi Applications that run in an enterprise environment are a great alternative to deploying the traditional EAR file. This series is going to run through an introduction to OSGi Applications for an enterprise developer, if you don’t know why you might want to do this then Ian Robinson has done an excellent explanation of <a href="http://www.youtube.com/watch?v=J2wqOY603-Q&feature=c4-overview&list=UUkzD7uqVyLzlWMDPQC3hzEQ">the advantages of using OSGi Applications</a>. Continue reading Getting Started with OSGi Applications: Bundle Lifecycle (Part 1)

Filed under: coding, java-ee, osgi-techs