Repository navigation
Conversation
Member
Author
|
@hpehl Once this and #490 are done, we could update the examples to leverage this new attribute so that the client will no longer need to have access to the proto file (that's simpler at least for prototyping with The server started by the example would have to be provisioned and started at the ./target/wildfly/bin/standalone.sh --stability experimentaland $ grpcurl -plaintext localhost:9555 list
grpc.reflection.v1.ServerReflection
helloworld.Greeter
$ grpcurl -plaintext localhost:9555 describe helloworld.Greeter
helloworld.Greeter is a service:
service Greeter {
rpc SayHello ( .helloworld.HelloRequest ) returns ( .helloworld.HelloReply );
}
$ grpcurl -plaintext \
-d '{"name":"Bob"}' \
localhost:9555 helloworld.Greeter/SayHello
{
"message": "Hello Bob"
} |
jmesnil
force-pushed
the
worktree-493_server_reflection
branch
17 times, most recently
from
October 2, 2026 14:20
ccc7d86 to
060cfb8
Compare
…e to gRPC subsystem Adds an `enable-server-reflection` boolean attribute (default: false, stability: EXPERIMENTAL) to the gRPC subsystem management model. When enabled, `ProtoReflectionServiceV1` is registered with the gRPC server at startup, allowing clients to discover available services using the gRPC Server Reflection Protocol. Schema changes: - Add VERSION_1_0_EXPERIMENTAL schema variant with its own namespace (urn:wildfly:grpc:experimental:1.0) and XSD that includes the attribute - PREVIEW schema and XSD do not expose the attribute, preventing it from being parsed from standalone.xml at PREVIEW stability - Register all schema variants via SubsystemPersistence.of(EnumSet.allOf) so the framework selects the correct writer per server stability level - Add io.grpc:grpc-services artifact to the io.grpc-all JBoss module Integration tests: - NoServerReflectionTest: verifies reflection is disabled by default; accepts UNAVAILABLE alongside UNIMPLEMENTED to handle transient port rebind races after a prior server reload; deploys an empty WAR - EnableServerReflectionTest: enables via SnapshotServerSetupTask at EXPERIMENTAL stability, verifies helloworld.Greeter appears in the reflection response - awaitTermination return value checked in afterClass with a warning log Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
jmesnil
force-pushed
the
worktree-493_server_reflection
branch
from
October 2, 2026 14:21
060cfb8 to
b685740
Compare
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.
Add a boolean management attribute
enable-server-reflection(default: false, stability level: experimental) that, when set to true, registers ProtoReflectionService on the Netty gRPC server at startup to support gRPC server reflection.This fixes #493