Это означает, что вы неправильно обрабатываете свой ResultSet. (ResultSet - это объектное представление курсора.)
Не беспокойтесь о том, как выяснить, открыт ли курсор или нет; выясните, почему ваш ResultSet вышел из области видимости, и вы ответите на свой вопрос.
Разместите некоторый код или более подробное объяснение того, что происходит.
Я предполагаю, что вы передаете ResultSet из уровня персистентности, когда вам будет намного лучше сопоставить его с объектом или коллекцией и закрыть его в области действия метода. Верните этот объект или коллекцию вместо ResultSet.
Курсоры базы данных - это ограниченные ресурсы. Вы должны держать их открытыми в течение минимального времени, необходимого для получения ваших данных, а затем закрыть их, чтобы кто-то другой мог их использовать. Это поможет с масштабируемостью - и решит это исключение как побочное преимущество.