Repository navigation
Add Spring Boot auto-configuration for ActivityClient - #3157
Open
Quinn-With-Two-Ns wants to merge 2 commits into
Open
Quinn-With-Two-Ns wants to merge 2 commits into
Quinn-With-Two-Ns wants to merge 2 commits into
Conversation
Quinn-With-Two-Ns
marked this pull request as ready for review
October 20, 2026 17:34
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changed?
temporalActivityClientand namespace/alias-prefixed activity clients, following the existingScheduleClientwiring and capabilities.ActivityClientInterceptorbeans, and orderedTemporalOptionsCustomizer<ActivityClientOptions.Builder>beans, including the existing namespace-specific naming convention.Why?
Applications should be able to inject an
ActivityClientwithout manually reproducing the Spring namespace, converter, and interceptor configuration. Invocation-specific task queues and timeouts remain inStartActivityOptions.Fixes #3146.
Note
Low Risk
Additive Spring Boot wiring mirroring ScheduleClient patterns; no changes to core SDK client behavior beyond new beans and constructor signature updates in autoconfigure templates.
Overview
Spring Boot Temporal integration now auto-configures
ActivityClientalongside existing workflow and schedule clients, so apps can inject standalone activity clients without hand-wiring namespace, converters, and interceptors.The root namespace gets a primary
temporalActivityClientbean; each configured non-root namespace gets<alias-or-namespace>ActivityClient, registered through the same template/post-processor path as other per-namespace clients. Options are built viaActivityClientOptionswith per-namespace data converters, orderedTemporalOptionsCustomizer<ActivityClientOptions.Builder>beans (including the existing*ActivityClientCustomizernaming for non-root namespaces), and root-onlyActivityClientInterceptorregistration (non-root interceptors via customizers).ClientTemplatelazily creates the client from shared service stubs; deprecated template constructors without activity-client parameters were removed.Documentation, changelog, and tests cover wiring, customizer ordering, and multi-namespace beans.
Reviewed by Cursor Bugbot for commit 79b87c4. Bugbot is set up for automated code reviews on this repo. Configure here.