When an exception is thrown, sometimes is not enough to deal with the exception itself, but it is necessary, in order to understand the reason, to scan the "next exceptions"
At the moment of the catch exception, print the message of not only that given exception, but any other wrapped exception, and for this the nextException() method could be used.
That helps to resolve problem easily.
The issue is present in the Java classes that deal with SQLExceptions.