at the time of getting a connection - the application checks any free 'connection' object in pool.
But there is no free 'connection' in pool, so application try to create a new connection object, but fails with the above exception.
I did not get the point ..why would app create a new connection if there are no available connections in pool..
What made you to come to this conclusion ? any logs output ?