ResultSet navigation methods like absolute(), relative(), first(), last(), and so on returned a NullPointerException when they were applied to a non-navigable ResultSet. This was because the methods did not check if the ResultSet really had any rows before trying to navigate it. This pat...