I would add a try-catch block around the line where you parse the int, and have it catch a NumberFormatException. That way, if the user does not input a string that has a "parsable integer", your program won't crash. You could probably put the JOptionPane message in the catch block. This will also catch a situation where the length of the string is 0 so you probably don't need that if statement. You can easily test to see if the number is not zero with an if statement.
Here's how I would code it.
for (int i = 0; i < fields.length; i++)
{
for (int j = 0; j < fields[i].length; j++)
{
try {
int probableAnswer = Integer.parseInt(fields[i][j].getText());
if(probableAnswer == 0) {
JOptionPane.showMessageDialog(null, "Answers missing");
}
else {
answers[i][j] = probableAnswer;
}
} //end try block
catch(NumberFormatException e) {
JOptionPane.showMessageDialog(null, "Answers missing");
}
}
}
http://docs.oracle.com/javase/tutorial/essential/exceptions/index.html
http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Integer.html#parseInt(java.lang.String)