Uses Spring Boot 5, Java 11, Kotlin 1.3
- Gradle build
- Model
- REST API
- SOAP API
- Stub implementation
- OpenAPI Spec + Swagger UI
- "External" SOAP service invocation using CXF
- MapStruct
- "External" REST service invocation using WebClient
- SpEL Gates
- Async SOAP invocation
- Merge 2 async responses using Reactor
- Minimal logging w/Log4j2
- Generate classes using OpenAPI spec
- Generate Spring Boot RestController, see https://github.com/OpenAPITools/openapi-generator/wiki/Server-stub-generator-HOWTO#java-springboot (probably will generate a lot of classes, should try to exclude everything but the RestController)
- Error handling in async actions
HystrixResilience4j- Base UI
- Tests
- Docker-compose to run the whole thing
- "External" SOAP service invocation using Web Client's Soap Async API (what's it called?) instead of generated WSDL methods
- Coroutines instead of reactive pipes (https://stackoverflow.com/questions/55684117/how-to-return-a-kotlin-coroutines-flow-in-spring-reactive-webclient)
- Run mock
- Run service with -Dservice.timeout=1000 -Dservice.systemAEndpoint=http://localhost:8090/soap-api/system-a -Dservice.systemBUrl=http://localhost:8090