Evojam Technology Blog – Engineering of High Performance Web Apps — Evojam
Generating Java classes from WSDL files

0 Comments

Share

Generating Java classes from WSDL files

Ready to discover a way to generate usable Java classes from WSDL files and check how they are structured? That is precisely where this blog post will get you.

Finishing the last line, you’ll be equipped with all the necessary schema files and the ready-to-use service.

Sounds promising? Only if you know what WSDL files are, which will be explained too.

0 Comments

Share

Optimistic locking with Spring Data MongoDB

1 Comment

Share

Optimistic locking with Spring Data MongoDB

When it comes to data access concurrency issues, skewed writes are about as troublesome as they get. Even explaining how they happen and getting your point across can be a challenge.

With MongoDB and Spring, there is an easy and clean solution. I was excited to find and implement it in one of the current projects at Evojam and would love to share it.

1 Comment

Share

Kotlin on the Backend Without Spring?

0 Comments

Share

Kotlin on the Backend Without Spring?

Bored with the constant use of Spring in commercial projects, I decided to investigate the use of an alternative tech stack.

One of the prevalent alternatives is Micronaut. We have already tried it out at Evojam and even successfully implemented it in production in a few microservices.

That made me think — what if we use something even smaller? As we are starting to use Kotlin instead of Java boldly, I couldn't help but consider using Ktor.

See the results of my experiment!

0 Comments

Share

First Months using GitHub Actions

0 Comments

Share

First Months using GitHub Actions

I really wanted to give GitHub Actions a go. Having spent many years using Jenkins setups, the idea of outsourcing CI/CD to GitHub made a lot of sense. Fast forward to a few weeks later, we have a fully functional Continuous Delivery structure. Let me give you a quick tour.

0 Comments

Share

Modern strategy pattern in functional Java

0 Comments

Share

Modern strategy pattern in functional Java

There's a way to think about design patterns that stuck with me. Like Venkat said at the beginning of his 2019 Devoxx talk, they are a lot like grandma's recipes. We all love when our grandmas cook for us. But try to ask for the recipes —the amount of flour or sugar to use is never precise. And when you prepare the food yourself, it comes out completely different.


In our biggest Java project at Evojam right now, we have tweaked the recipe for strategy pattern. We added our personal touch with a pinch of enums and functional syntactic sugar. Now, we’re ready to share the technique with you.

0 Comments

Share

Tackling accidental complexity with Optional in Java

0 Comments

Share

Tackling accidental complexity with Optional in Java

In this article, I'm using an example project to show you how Java 8 Optional can impact the end complexity. It can do so in a positive or negative way as Optional can both simplify and complicate your code. In the long run, the outcome can greatly influence your project. Let's see how it works.

0 Comments

Share

Switching from Java to Kotlin

0 Comments

Share

Switching from Java to Kotlin

Kotlin has been growing in popularity for quite some time now. We decided to introduce it for a commercial project and see how it influences our work.

It's been a month since we made a switch from Java to Kotlin. In this article, we want to share with you our insights and conclusions based on this time.

I invited my fellow developers, so they can put their own perspective on using Kotlin.

0 Comments

Share

Temporal Object Patterns using JPA

0 Comments

Share

Temporal Object Patterns using JPA

Design Patterns are often described as typical solutions to common problems. But what if a solution is not that typical? Can I still call it a Pattern if it is only relevant for relational databases? And does it have to be applicable in most common Java stacks using Spring Boot, Hibernate, and JPA?

Find out how to get started with Temporal Patterns and whether they’re going to work with Spring Boot.

0 Comments

Share

The Secret of Painless WebSocket Tests with Spock Framework

0 Comments

Share

The Secret of Painless WebSocket Tests with Spock Framework

Do you want to start testing applications with WebSocket and Spock, but you’re afraid of running an unstable test? You know what the cinematic Spock says, “Insufficient facts always invite danger”!

Get your facts straight and learn how to avoid common mistakes with our step-by-step guide to WebSocket testing.

0 Comments

Share