Designer 10.15 | webMethods Service Development Help | Working with gRPC Descriptors | Overview of Building a gRPC Descriptor
 
Overview of Building a gRPC Descriptor
Building a gRPC descriptor entails the following activities.
Stage 1
Install the WmGRPC package.
The WmGRPC package is not installed by default with Integration Server. The package must be selected from the installer tree during installation, specifically select Integration Server or Microservices Runtime Packages > webMethods Solution for gRPC. If you install the WmGRPC package while Integration Server is running, you must restart Integration Server before you can begin creating gRPC descriptors. Restart is required because the required third party gRPC jars are in the code/jars/static directory of WmGRPC and the classes therein need to be on the Integration Server classpath. If you install the WmGRPC package during initial installation or when Integration Server is not running, starting Integration Server after package installation is sufficient to add the gRPC classes to the classpath.
Stage 2
Define a gRPC channel.
A gRPC channel must exist before you can create the gRPC descriptor. Integration Server includes a predefined gRPC channel named GRPCdefault. While this is the only supported gRPC channel, you must configure the channel to specify an unused port for the machine on which Integration Server resides and you need to specify the keystore, key, and truststore information needed for two-way SSL/TLS. For more information about gRPC channels, see the webMethods Integration Server Administrator’s Guide.
Stage 3
Create a gRPC provider descriptor from one or more proto files.
Designer supports the creation of gRPC descriptors from existing proto files only. If the proto file imports other proto files that are not in the same directory as the base proto file, those referenced proto files must be in directories accessible to Designer.
Stage 4
Implement the logic for the RPC methods in the gRPC method flow services.
When Designer creates a gRPC descriptor, it creates a gRPC method flow service for each method in the gRPC service definition. The service identifies the expected inputs and outputs as well as includes some basic logic for sending the response and closing the connection. However, the logic for the associated RPC method needs to be implemented. For more information about editing a gRPC method flow service, see Editing a gRPC Method Flow Service.
Stage 5
Set access permissions and other properties for the gRPC method flow service.
Like any flow service, you can control which users can execute the service as well as set properties like auditing and transient error handling.
Stage 6
Test the gRPC method flow service.
A gRPC method flow service can be tested by a gRPC client or stub created from the same proto file. Because the required streamObserver and streamType inputs are provided by the gRPC server at run time, launch configurations will not be effective in testing the service.