Usually, IllegalStateException is used to indicate that “a method has been invoked at an illegal or inappropriate time.” However, this doesn’t look like a particularly typical use of it.
The code you’ve linked to shows that it can be thrown within that code at line 259 – but only after dumping a SQLException to standard output.
We can’t tell what’s wrong just from that exception – and better code would have used the original SQLException as a “cause” exception (or just let the original exception propagate up the stack) – but you should be able to see more details on standard output. Look at that information, and you should be able to see what caused the exception, and fix it.
IllegalStateException signals that method has been invoked at the wrong time. In the example below we can see that the remove() method is mutating an element while its iterator is in a loop (an illegal call), which Java catches and throws:
package com.concepttimes.java;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class IllegalStateExceptionDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub
List al = new ArrayList();
al.add(“Sachin”);
al.add(“Rahul”);
al.add(“saurav”);
Iterator itr = al.iterator();
while (itr.hasNext()) {
itr.remove();
}
}
}
Please refer to below link for more details.
http://www.elitmuszone.com/elitmus/illegalstateexception-in-java/