wolips/wolips — Issue #70: WOL-1091 Entity Modeler - Generate SQL throws NPE when an attribute doesn't specify a value type
Author: pascalrobert
Created: 2012-01-09 17:33:08+00:00
State: open

Reported by John Huss

Entity Modeler - Generate SQL throws NPE when an attribute doesn't specify a value type

Steps to reproduce:
1) Select an entity
2) Click the New Attribute button
3) Save
4) Click Generate SQL
5) NPE

java.lang.RuntimeException: Failed to generate SQL.
at org.objectstyle.wolips.eomodeler.core.sql.EOFSQLGeneratorFactory$ReflectionSQLGenerator.generateSchemaCreationScript(EOFSQLGeneratorFactory.java:67)
at org.objectstyle.wolips.eomodeler.actions.GenerateSQLDialog.generateSql(GenerateSQLDialog.java:298)
at org.objectstyle.wolips.eomodeler.actions.GenerateSQLDialog$1.run(GenerateSQLDialog.java:279)
at java.lang.Thread.run(Thread.java:680)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.objectstyle.wolips.eomodeler.core.sql.EOFSQLGeneratorFactory$ReflectionSQLGenerator.generateSchemaCreationScript(EOFSQLGeneratorFactory.java:65)
... 3 more
Caused by: java.lang.NullPointerException
at com.webobjects.jdbcadaptor.JDBCExpression.columnTypeStringForAttribute(JDBCExpression.java:160)
at com.webobjects.eoaccess.synchronization.EOSchemaSynchronizationFactory._columnCreationClauseForAttribute(EOSchemaSynchronizationFactory.java:2124)
at com.webobjects.eoaccess.synchronization.EOSchemaSynchronizationFactory.createTableStatementsForEntityGroup(EOSchemaSynchronizationFactory.java:350)
at com.webobjects.eoaccess.synchronization.EOSchemaSynchronizationFactory.createTableStatementsForEntityGroups(EOSchemaSynchronizationFactory.java:500)
at com.webobjects.eoaccess.synchronization.EOSchemaSynchronizationFactory.schemaCreationStatementsForEntities(EOSchemaSynchronizationFactory.java:887)
at com.webobjects.eoaccess.synchronization.EOSchemaSynchronizationFactory.schemaCreationScriptForEntities(EOSchemaSynchronizationFactory.java:685)
at com.webobjects.eoaccess.EOSynchronizationFactory.schemaCreationScriptForEntities(EOSynchronizationFactory.java:233)
at org.objectstyle.wolips.eomodeler.core.sql.EOFSQLGenerator53.generateSchemaCreationScript(EOFSQLGenerator53.java:483)
... 8 more