Hüseyin Akdoğan·Mar 9DPoP: What It Is, How It Works, and Why Bearer Tokens Aren’t EnoughDPoP is one of the most exciting developments in the IAM (Identity and Access Management) space in recent years. Yet many backend…
Hüseyin Akdoğan·Mar 19, 2025Introduction to intermediate operations modeler: Stream GatherersJava is a programming language with many language features, specifications, and APIs. Even among experienced Java developers, being aware…
Hüseyin Akdoğan·Apr 28, 2023The Basis of Virtual Threads: ContinuationsProject Loom has been the focus of attention in the Java community since the day it was announced. Java developers were excited by Loom’s…A response icon1A response icon1
Hüseyin Akdoğan·Feb 20, 2023An introduction to Scoped Values in JavaAfter moving to the six-month release cadence, the Java language has entered a rapid development process.
Hüseyin Akdoğan·Jul 31, 2021How to Serve Azure Storage Resources with Grant Limited Access using SAS?After the decision to use Azure Cloud Storage for the shared resources at the project I was involved in, by reviewing the SDK, I explored…
Hüseyin Akdoğan·Dec 8, 2020HOW TO KEEP ELASTICSEARCH IN SYNC WITH RELATIONAL DATABASES?This article was published in Java Advent Calendar on December 6, 2020
Hüseyin Akdoğan·Nov 4, 2020How to Prepare Native Image Configuration Files in The Most Complete Format?GraalVM is a high-performance runtime that supports additional programming languages and execution modes but the main thing that makes it…
Hüseyin Akdoğan·Jun 30, 2020How to Write Embedded Integration and E2E Tests for JakartaEEThe end-to-end testing in enterprise applications is important as long as it covers the real use cases. Therefore, even although companies…
Hüseyin Akdoğan·Dec 23, 2019Java ile Özel Notasyon GeliştirimiJDK 1.5 ve üstü bir sürümle geliştirim yapmış her seviyeden Java geliştiricisi notasyon kullanmıştır. @Inject, @Entity, @Autowired, hiç…
Hüseyin Akdoğan·Jun 4, 2019How to Call the Next Handler in Vert.x?In Vert.x, when a Router takes an HTTP request, it finds a matching route (if any) and then it calls the handler of the route passing in…