15.2. Build the Football Application
Important
Prerequisites for this procedure are as follows:
- Obtain the most recent supported JBoss Data Grid Remote Client-Server Mode distribution files from Red Hat.
- Ensure that the JBoss Data Grid and JBoss Enterprise Application Platform Maven repositories are installed and configured. For details, see Chapter 3, Install and Use the Maven Repositories
Procedure 15.1. Build the Football Application
Add Configurations
Edit thestandalone.xmlfile (located at$JDG_HOME/standalone/configuration/) to add definitions for the datasource and infinispan subsystems.- Add the following subsystem definition for the datasource:
<subsystem xmlns="urn:jboss:domain:datasources:1.0"> <!-- Define this Datasource with jndi name java:jboss/datasources/ExampleDS --> <datasources> <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true"> <!-- The connection URL uses H2 Database Engine with in-memory database called test --> <connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1</connection-url> <!-- JDBC driver name --> <driver>h2</driver> <!-- Credentials --> <security> <user-name>sa</user-name> <password>sa</password> </security> </datasource> <!-- Define the JDBC driver called 'h2' --> <drivers> <driver name="h2" module="com.h2database.h2"> <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class> </driver> </drivers> </datasources> </subsystem> - Add the following subsystem definition for infinispan:
<subsystem xmlns="urn:infinispan:server:core:6.0" default-cache-container="local"> <cache-container name="local" default-cache="default" statistics="true"> <local-cache name="default" start="EAGER" statistics="true"> <locking isolation="NONE" acquire-timeout="30000" concurrency-level="1000" striping="false"/> <transaction mode="NONE"/> </local-cache> <local-cache name="memcachedCache" start="EAGER" statistics="true"> <locking isolation="NONE" acquire-timeout="30000" concurrency-level="1000" striping="false"/> <transaction mode="NONE"/> </local-cache> <local-cache name="namedCache" start="EAGER" statistics="true"/> <!-- ADD a local cache called 'teams' --> <local-cache name="teams" start="EAGER" batching="false" statistics="true"> <!-- Disable transactions for this cache --> <transaction mode="NONE" /> <!-- Define the JdbcBinaryStores to point to the ExampleDS previously defined --> <string-keyed-jdbc-store datasource="java:jboss/datasources/ExampleDS" passivation="false" preload="false" purge="false"> <!-- Define the database dialect --> <property name="databaseType">H2</property> <!-- specifies information about database table/column names and data types --> <string-keyed-table prefix="JDG"> <id-column name="id" type="VARCHAR"/> <data-column name="datum" type="BINARY"/> <timestamp-column name="version" type="BIGINT"/> </string-keyed-table> </string-keyed-jdbc-store> </local-cache> <!-- End of local cache called 'teams' definition --> </cache-container> </subsystem>
Note
The Hot Rod and REST endpoints use the cache namedteamsand memcached endpoint usesmemcachedCacheas a default.Disable REST Security
As a default, thestandalone.xmlconfiguration file protects the REST endpoint withBASICauthentication. This quickstart cannot perform authentication, therefore the REST authentication must be disabled in the REST connector by removing thesecurity-domainandauth-methodparameters. The resulting configuration (with REST authentication disabled) is as follows:<rest-connector virtual-server="default-host" cache-container="local" />For more details about security, see the REST Authentication Chapter in JBoss Data Grid's Developer Guide.Edit the Submodule Configuration File
Each submodule (specificallyhotrod-endpoint,rest-endpointandmemcached-endpoint) contains a configuration file (located at$JDG_QUICKSTART/src/main/resources/jdg.properties). Modify the default values in the configuration file to set the values required for your specific JBoss Data Grid installation.Build the Application
Use the following command to build the example application in its directory:mvn clean package
This step results in the use of Maven's shade plugin, which bundles all dependencies into a single jar file for ease of use. This file is named{PROTOCOL}-endpoint-quickstart.jar, for examplerest-endpoint-quickstart.jarfor the REST version.Start JBoss Data Grid
Run the following script to run JBoss Data Grid:$JDG_HOME/bin/standalone.sh
Run the Application
Run the example application in its directory with the following command:mvn exec:java

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.