The current Middlegen ant task has a nested element
table to choose which tables are processed. When the
Table is of type "VIEW", the task fails when trying to
get the relations for the View. Views neither have
primary keys nor have primary key based relations. This
patch adds the attribute view=true to the table element
and uses this flag in MiddleGenPopulator to ignore
relations processing if it is a view. This is the
modified code in MiddleGenPopulator
for (Iterator tableIterator =
_middlegen.getTables().iterator();
tableIterator.hasNext(); ) {
DbTable table = (DbTable) tableIterator.next();
//add relations only if it is not a view
if (!table.getTableElement().isView()) {
addRelations(table, wantedTables);
}
}
TableElement.java