Spring gRPC reference documentation covering server, client, security, and configuration
92
Pending
Does it follow best practices?
Impact
92%
2.19xAverage score across 3 eval scenarios
Pending
The risk profile of this skill
A payments platform communicates with two external gRPC backends: a PaymentsService (internal, plain TCP) and a FraudCheckService (external, requires OAuth2 client credentials for every call). Both backends are reached via a Spring Boot application that acts as a gateway.
The team wants all outbound gRPC calls to flow through a shared logging interceptor, but the fraud check channel must additionally attach a Bearer token on every request using OAuth2 client credentials. The payments channel should have retry enabled (up to 3 attempts), while the fraud check channel must have retry disabled to avoid duplicate fraud signals.
To keep the gateway lean, the team wants Spring to automatically discover and wire stub beans rather than declaring each one manually. The payments stubs should be imported from the com.example.payments package and the fraud check stubs from com.example.fraud, each bound to their respective named channels.
Produce a self-contained Maven project (no need to be fully compilable) with:
pom.xml — dependencies for Spring Boot, Spring gRPC, and Spring Security OAuth2 clientsrc/main/java/.../GatewayApplication.java — main application class with stub auto-import configurationsrc/main/java/.../ChannelConfig.java — Spring configuration class for channel customizers, interceptors, and OAuth2 client stub wiringsrc/main/resources/application.properties — channel addresses and any other relevant configurationProvide a notes.md explaining the channel configuration strategy and security approach used.
evals