Fix for Bug 510230 - check existence of nested column is mostly wrong

(cherry picked from commit d486e05359cf0f693edb16d198e4773824fbabd5)
Change-Id: I9e21c75c180452a9495ee120ee0823b4e7e3ecce
diff --git a/org.eclipse.jubula.rc.javafx/src/org/eclipse/jubula/rc/javafx/tester/adapter/TableAdapter.java b/org.eclipse.jubula.rc.javafx/src/org/eclipse/jubula/rc/javafx/tester/adapter/TableAdapter.java
index 011a810..525ab76 100644
--- a/org.eclipse.jubula.rc.javafx/src/org/eclipse/jubula/rc/javafx/tester/adapter/TableAdapter.java
+++ b/org.eclipse.jubula.rc.javafx/src/org/eclipse/jubula/rc/javafx/tester/adapter/TableAdapter.java
@@ -204,7 +204,6 @@
                     @Override
                     public Integer call() throws Exception {
                         TableView table = getRealComponent();
-                        
                         List<String> path = StringParsing.splitToList(colPath,
                                 TestDataConstants.PATH_CHAR_DEFAULT,
                                 TestDataConstants.ESCAPE_CHAR_DEFAULT, false);
@@ -243,7 +242,7 @@
         Iterator<String> pathIterator = path.iterator();
         String currCol = null;
         TableColumn<?, ?> column = null;
-        while (pathIterator.hasNext()) {
+        pathIteration: while (pathIterator.hasNext()) {
             try {
                 currCol = pathIterator.next();
                 int usrIdxCol = Integer.parseInt(currCol);
@@ -269,10 +268,7 @@
                             column = columns.get(i);
                         }
                     } catch (IndexOutOfBoundsException e) {
-                        throw new StepExecutionException(
-                                "Invalid Index: " + IndexConverter.toUserIndex(i), //$NON-NLS-1$
-                                EventFactory.createActionError(
-                                        TestErrorEvent.INVALID_INDEX));
+                        return null;
                     }
                 }
             } catch (NumberFormatException nfe) {
@@ -292,9 +288,10 @@
                             if (pathIterator.hasNext()) {
                                 columns = c.getColumns();
                             }
-                            break;
+                            continue pathIteration;
                         }
                     }
+                    return null;
                 } catch (IllegalArgumentException iae) {
                     // do nothing here
                 }