Connect to SAP HANA XS Advanced Data from a Connection Pool in Jetty

Ready to get started?

Download for a free trial:

Download Now

Learn more:

SAP HANA XS Advanced JDBC Driver

Rapidly create and deploy powerful Java applications that integrate with SAP HANA XS Advanced.



The SAP HANA XS Advanced JDBC Driver supports connection pooling: This article shows how to connect faster to SAP HANA XS Advanced data from Web apps in Jetty.

The CData JDBC driver for SAP HANA XS Advanced is easy to integrate with Java Web applications. This article shows how to efficiently connect to SAP HANA XS Advanced data in Jetty by configuring the driver for connection pooling. You will configure a JNDI resource for SAP HANA XS Advanced in Jetty.

Configure the JDBC Driver for Salesforce as a JNDI Data Source

Follow the steps below to connect to Salesforce from Jetty.

  1. Enable the JNDI module for your Jetty base. The following command enables JNDI from the command-line:

    java -jar ../start.jar --add-to-startd=jndi
  2. Add the CData and license file, located in the lib subfolder of the installation directory, into the lib subfolder of the context path.
  3. Declare the resource and its scope. Enter the required connection properties in the resource declaration. This example declares the SAP HANA XS Advanced data source at the level of the Web app, in WEB-INF\jetty-env.xml.

    <Configure id='saphanaxsademo' class="org.eclipse.jetty.webapp.WebAppContext"> <New id="saphanaxsademo" class="org.eclipse.jetty.plus.jndi.Resource"> <Arg><Ref refid="saphanaxsademo"/></Arg> <Arg>jdbc/saphanaxsadb</Arg> <Arg> <New class="cdata.jdbc.saphanaxsa.SAPHanaXSADriver"> <Set name="url">jdbc:saphanaxsa:</Set> <Set name="OAuthClientID">my-ouath-client-id</Set> <Set name="OAuthClientSecret">my-oauth-client-secret</Set> <Set name="URL">https://hxehost:51027/euro.xsodata</Set> <Set name="CallbackURL">http://localhost:33333</Set> <Set name="InitiateOAuth">GETANDREFRESH</Set> </New> </Arg> </New> </Configure>

    SAP HANA XSA uses the OAuth authentication standard. Before connecting, it is necessary to establish an SAP HANA XSA OData Service. See the OAuth section in the Help documentation for a guide.

  4. Configure the resource in the Web.xml:

    jdbc/saphanaxsadb javax.sql.DataSource Container
  5. You can then access SAP HANA XS Advanced with a lookup to java:comp/env/jdbc/saphanaxsadb: InitialContext ctx = new InitialContext(); DataSource mysaphanaxsa = (DataSource)ctx.lookup("java:comp/env/jdbc/saphanaxsadb");

More Jetty Integration

The steps above show how to configure the driver in a simple connection pooling scenario. For more use cases and information, see the Working with Jetty JNDI chapter in the Jetty documentation.