diff options
author | Leif Åstrand <leif@vaadin.com> | 2013-01-09 13:54:52 +0000 |
---|---|---|
committer | Vaadin Code Review <review@vaadin.com> | 2013-01-09 13:54:52 +0000 |
commit | 488259c57d55e5cfdc82f2e0197da3746f4413e1 (patch) | |
tree | e598548e72ee5eaf869e772176d84295257b55f5 /server | |
parent | 30f4d3ede40f95919a225a1f7f8bff182a1bf0e2 (diff) | |
parent | 952a77091aeb0820a4235077a14398c83a2827cc (diff) | |
download | vaadin-framework-488259c57d55e5cfdc82f2e0197da3746f4413e1.tar.gz vaadin-framework-488259c57d55e5cfdc82f2e0197da3746f4413e1.zip |
Merge "Merge of (#10032) to Vaadin 7."
Diffstat (limited to 'server')
-rw-r--r-- | server/src/com/vaadin/data/util/sqlcontainer/SQLContainer.java | 2 | ||||
-rw-r--r-- | server/tests/src/com/vaadin/data/util/sqlcontainer/TicketTests.java | 12 |
2 files changed, 13 insertions, 1 deletions
diff --git a/server/src/com/vaadin/data/util/sqlcontainer/SQLContainer.java b/server/src/com/vaadin/data/util/sqlcontainer/SQLContainer.java index 742e68738a..f7f3e73a7f 100644 --- a/server/src/com/vaadin/data/util/sqlcontainer/SQLContainer.java +++ b/server/src/com/vaadin/data/util/sqlcontainer/SQLContainer.java @@ -1149,8 +1149,8 @@ public class SQLContainer implements Container, Container.Filterable, try { delegate.beginTransaction(); rs = delegate.getResults(0, 1); - boolean resultExists = rs.next(); rsmd = rs.getMetaData(); + boolean resultExists = rs.next(); Class<?> type = null; for (int i = 1; i <= rsmd.getColumnCount(); i++) { if (!isColumnIdentifierValid(rsmd.getColumnLabel(i))) { diff --git a/server/tests/src/com/vaadin/data/util/sqlcontainer/TicketTests.java b/server/tests/src/com/vaadin/data/util/sqlcontainer/TicketTests.java index 6e95aff027..8e8c83d234 100644 --- a/server/tests/src/com/vaadin/data/util/sqlcontainer/TicketTests.java +++ b/server/tests/src/com/vaadin/data/util/sqlcontainer/TicketTests.java @@ -183,4 +183,16 @@ public class TicketTests { Assert.assertEquals(name, name3); } + + @Test + public void ticket10032_empty_set_metadata_correctly_handled() + throws SQLException { + // If problem exists will break when method getPropertyIds() + // is called in constructor SQLContainer(QueryDelegate delegate). + SQLContainer container = new SQLContainer(new FreeformQuery( + "SELECT * FROM people WHERE name='does_not_exist'", + Arrays.asList("ID"), connectionPool)); + Assert.assertTrue("Got items while expected empty set", + container.size() == 0); + } } |