The Tomcat-Server must pool / cache a decent amount of connections for the Oracle ORDS module. Therefore, you must edit the <apache_home>\<ords_config>defaults.xml file to fit the expected amount of connections for your environment as follows.
At least you should use these parameters (don’t stay with the defaults, these will cause connection issues in production):
<entry key="jdbc.DriverType">thin</entry>
<entry key="jdbc.InactivityTimeout">1800</entry>
<entry key="jdbc.InitialLimit">10</entry>
<entry key="jdbc.MaxConnectionReuseCount">1000</entry>
<entry key="jdbc.MaxLimit">50</entry>
<entry key="jdbc.MaxStatementsLimit">10</entry>
<entry key="jdbc.MinLimit">1</entry>
<entry key="jdbc.statementTimeout">900</entry>
This example shows how to calculate the values you should set in your production environment:
Expected concurrent users: 50
Jdbc.InitialLimit = Expected concurrent users / 3 = 50/3 rounded = 17
Jdbc.MaxLimit = Expected concurrent users * 2 = 50*2 = 100
Jdbc.MaxStatementsLimit = Expected concurrent users / 3 = 50/3 rounded = 17