A photo of Geoffrey Hayward
And abstract image of programming code surrounded by a light bulb.

Notes on Successfully Running Ubuntu in VirtualBox

January 26, 2024

As a Software Developer who likes to use Ubuntu for Development but can sometimes only run it as just another window in Windows, I would like to share some nuanced VirtualBox configurations I built up over the years.

Continue reading
And abstract image of programming code surrounded by a light bulb.

Setting Default Values in GitHub Actions Workflows

October 20, 2023

GitHub Actions is a powerful platform for automating workflows and tasks in your software development process. When creating workflows, you often need to set default values for variables or parameters, especially when certain values are not always going to be provided. In this blog post, let’s explore two techniques to set default values in GitHub Actions workflows, including a handy ! contains() approach and the double pipe || hack. We’ll also discuss the potential limitations of the double pipe hack.

Continue reading
A post style illustration of a slack slash command that shows an Octocat

Triggering a GitHub Actions Workflow with a Slack Slash Command

May 10, 2021

In this post I am going to show how you can trigger a GitHub Actions workflow with a Slack Slash command.

Continue reading
An abstract illustration, featuring a stylized file icons with a mini hippo design prominently displayed.

Serving Static Assets from Bloomreach CMS

June 19, 2019

Serving a static files with Bloomreach (formally known as Hippo CMS), such as BingVerify.xml, is not as simple as dropping it in the webapp folder. However, with a little extra configuration Bloomreach CMS will serve the file.

Continue reading
Illustration of Java code resetting a singleton in a JUnit.

Java JUnit: Reset a singleton

February 28, 2018

Java singleton’s are hard to unit test because the state of the singleton is altered as each test runs. But for testing sake you can reset the singleton’s state use reflection. Here is an example that worked for me.

Continue reading
Illustration of Java code converting an ArrayList to a JsonArray, displayed on a simple and clean background.

Java Stream API: ArrayList to JsonArray

February 3, 2017

You can convert an ArrayList to a Java EE JsonArray using a Java Stream in the following way.

Continue reading
Humorous illustration of a server mascot panicking while removing a failed deployment with JBoss CLI, with error messages flying around.

WildFly: Removing a Failed Deployment with JBoss CLI

September 5, 2016

I was having trouble working out how to remove the WAR file of a failed deployment from WildFly using the JBoss CLI. I found that I could not simply type undeploy <WAR name> to remove a failed deployment from WildFly using the JBoss CLI. However, I did find that the following command let me remove a failed deployment and it’s WAR file.

Continue reading
Illustration of a laptop displaying Java code related to finding the context path with JSF, set against a web development-themed background.

Find the Context Path with JSF

September 22, 2015

Sometimes JSF does not have a component that will produce a particular type of HTML element. That’s not a problem but, I always forget the three method deep route to the context path. I always find I have to work through an IDE’s code completion tool to find the application’s path.

Continue reading

How to Store Variables in JSF Facelets

September 7, 2015

JSF Facelets can store the returned value yielded from a call to an EJB. Doing so will mean the EJB does less work.

Continue reading