You can deploy and configure the REST gateway for the data grid in WebSphere® Application Server or in a Liberty
server.
Before you begin
Verify that a Liberty server is created. For
more information, see Installing Liberty.
About this task
The REST gateway is a servlet that is defined in the
wxsRESTGateway.war web archive (WAR) file. With this REST gateway, you use a
Uniform Resource Identifier (URI) to access data in the data grid.
Procedure
- Enable the REST gateway feature by either manually editing the
server.xml file or by using the Liberty Profile Developer Tools.
- Configure the REST gateway.
- Configure the REST gateway in the server.xml file. Enter the
following line of code:
<xsREST contextRoot=”myContextRoot” remoteDomain=”myDomain”/>
Attention: The attributes, contextRoot
and
remoteDomain
, are optional. The default content root is
resources
.
- Configure an eXtreme Scale server.
- Configure a container service.
The following options are available to configure a container service:
- Copy a valid objectgrid.xml file (with or without an accompanying
objectGridDeployment.xml file) into the
wlp_home/usr/servers/server_name/grids
directory. This grids directory is monitored by the product at run time.
Changes to files in this directory initiate events in the Liberty runtime environment. For example, when new
objectgrid.xml, objectGridDeployment.xml, or both files
are found, a new container server is created. When one of these files are deleted, eXtreme Scale stops that container server. When files are modified,
eXtreme Scale stops and restarts the container. Multiple shard
containers can exist in the same eXtreme Scale server, which
requires that subdirectories exist inside the grids directory.
- Install an eXtreme Scale bundle.
This bundle must reference a blueprint.xml file that contains server metadata.
This method of starting a server is similar to how you can start servers in OSGi environments in WebSphere eXtreme Scale Version 7.1.1, without Liberty. In Version 8.5, the server element is no longer
required in the blueprint.xml file. Therefore, you must define the server
metadata in the server.xml file. Install and start bundles by dragging and
dropping them into the grids directory in the same way that you drop XML files
in the grids directory.
- Use the embedded server API. This option
is similar to the process for starting the server in a stand-alone environment. With Liberty, however, you must ensure that you run your code to
start the eXtreme Scale server.
- Start the Liberty server to run the REST
client gateway.
What to do next
When the REST gateway is enabled, anyone with access to the servlet can access data in a data
grid. Therefore, you must use web application security in WebSphere Application Server to control authorization. For more information about securing your web applications that use this
REST gateway, see Securing web applications in the WebSphere Application Server documentation.
The
wxsRESTGateway.war file, which contains the
web.xml
file for the security configuration is in the following locations, depending on your installation:
- wlp_install_root/wxs/web/rest
- was_install_root/optionalLibraries/ObjectGrid/restgateway
- wxs_standalone_install_root/ObjectGrid/restgateway
You can now begin using the REST data service in Liberty to communicate with the data grid through a URI. For
more information, see Developing data grid applications with the REST gateway.