OPI Blog
Learn from experts in their fields

Browsing Tags: Java

Equals, Is, CompareTo, and the Groovy Identity Operator
If you’ve ever tried to determine if Object a is the same as Object b in Groovy, chances are you’ve thought a lot about a == b and a.equals(b) and a.is(b). To appropriately ask this ...
A Quick Tour of Joda Beans
One of my big headaches about Java is the amount of boilerplate code you need to put in to make things work right. Especially in POJOs. I mean, is the solution to always run “generate ...
Testing with Spring Kafka and MockSchemaRegistryClient
Spring Kafka provides a variety of testing utilities to make writing integration tests easier. Most notably, the @EmbeddedKafka annotation spins up an embedded broker (and zookeeper) available for tests. The address of the broker is set to ...
Aug 14, 2018
3 Kotlin Features to Improve Your Kafka Connect Development
Kafka Connect is the hub that connects your Kafka cluster to any other system. The framework aims to make it easy to pull data into Kafka as well as copy data out of Kafka. As ...
Aug 7, 2018
Apache Kafka and Reactive Spring Boot
This post is a continuation of the two part series exploring Apache Ignite, Apache Kafka, and Reactive Spring Boot concepts. This part covers the use of Reactive Kafka consumers to return live database events to ...
Configuring Kafka Topics with Spring Kafka
Here’s a common scenario, your engineering team decides to use Kafka and they start writing producers, consumers, connectors, streams, you name it. Before long, 6 engineers have manually created 20+ topics in the lower environment ...
Jul 19, 2018
Spring Boot / SSL and BadPaddingException
Are you working on getting SSL self signed certificates working with Spring Boot and getting a javax.crypto.BadPaddingException? Hopefully this post will save you some time. I created this post to help remind myself and hopefully ...
Jun 12, 2018
Create a Custom Annotation for your JUnit5 ParameterizedTest ArgumentProvider
In my opinion, the best new feature of Junit5 is the addition of parameterized tests. They greatly reduce copy/pasted code and makes it easy to increase your test coverage without unnecessarily increasing the amount of ...
Mar 1, 2018
Log your RestTemplate Request and Response without destroying the body
When you’re working with REST services, it can be very useful for debugging to be able to log both the request and the response info. Fortunately, if you’re using the Spring framework’s RestTemplate its fairly ...
Nov 28, 2017
Missing Codecs in MongoDB
When upgrading a project’s Mongo driver from 2.13.0 to 3.4.2, we got the following exception: org.bson.codecs.configuration.CodecConfigurationException: can't find a codec for class java.math.BigDecimal. Well it seems that Mongo doesn’t support BigDecimal any longer. There we ...