Start by reporting any errors that are encountered
catch(Exception ex)
{
}
a catch block that silently consumes errors is usually a bad idea.
Second, use a debugger, step through the code and see what's going on. Attempting to solve a problem like this by desk-checking, ie. just reading the code is usually very inefficient. Here we don't have key information, such as whether we have confidence that
rs.moveToInsertRow();
can be expected to work - we can't see how rs gets its value. Many database problems only occur at runtime, there's a misconfiguration of the database connection or an attempted insert collides with existing data. Hence it's only by understanding what your code is doing in your test run that the problem can be solved.
Here I'd guess that printing out some diagnistics in your catch will be really helpful, and otherwise stepping in a debugger (or adding trace statements) will get you there.