[OS-JIRA] Created: (WOL-469) Entity Modeler and JDBCExpression.columnTypeStringForAttribute CCE

From: Denis Frolov (JIRA) ("Denis)
Date: Tue May 29 2007 - 09:00:15 EDT

  • Next message: Denis Frolov (JIRA): "[OS-JIRA] Created: (WOL-470) Don't surround "=" with spaces in html editor's autocompletion"

    Entity Modeler and JDBCExpression.columnTypeStringForAttribute CCE
    ------------------------------------------------------------------

                     Key: WOL-469
                     URL: http://issues.objectstyle.org/jira/browse/WOL-469
                 Project: WOProject/WOLips
              Issue Type: Bug
              Components: wolips
        Affects Versions: 2.0.0.* (unreleased please specify)
             Environment: 2.0.0.4083
                Reporter: Denis Frolov
                Priority: Minor

    I get a following exception trying to generating SQL for eo-model that has jdbc2Info entries (left from EOModeler days, I guess) in it's index.eomodeld. As far as I can tell deleting these entries from index.eomodeld sovles a problem for me. I can email a model itself privately to Mike if needed.

    java.lang.ClassCastException: java.lang.Integer
            at com.webobjects.jdbcadaptor.JDBCExpression.columnTypeStringForAttribute(JDBCExpression.java:293)
            at com.webobjects.eoaccess.EOSQLExpression.addCreateClauseForAttribute(EOSQLExpression.java:2498)
            at com.webobjects.eoaccess.EOSynchronizationFactory.createTableStatementsForEntityGroup(EOSynchronizationFactory.java:318)
            at com.webobjects.eoaccess.EOSynchronizationFactory.createTableStatementsForEntityGroups(EOSynchronizationFactory.java:487)
            at com.webobjects.eoaccess.EOSynchronizationFactory.schemaCreationStatementsForEntities(EOSynchronizationFactory.java:951)
            at com.webobjects.eoaccess.EOSynchronizationFactory.schemaCreationScriptForEntities(EOSynchronizationFactory.java:747)
            at org.objectstyle.wolips.eomodeler.sql.EOFSQLGenerator.getSchemaCreationScript(EOFSQLGenerator.java:389)
            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:585)
            at org.objectstyle.wolips.eomodeler.actions.GenerateSQLDialog.generateSql(Unknown Source)
            at org.objectstyle.wolips.eomodeler.actions.GenerateSQLDialog$1.run(Unknown Source)
            at java.lang.Thread.run(Thread.java:613)

            jdbc2Info =
            {
                ANSI92_CONFORMANCE = ANSI92EntryLevel;
                DBMS_NAME = MySQL;
                DRIVER_NAME = "MySQL-AB JDBC Driver";
                DRIVER_VER = "mysql-connector-java-3.0.15-ga ( $Date: 2004/08/09 22:15:11 $, $Revision: 1.27.2.43 $ )";
                IDENTIFIER_QUOTE_STRING = "`";
                NON_NULLABLE_COLUMNS = T;
                STRING_FUNCTIONS = "ASCII,BIN,BIT_LENGTH,CHAR,CHARACTER_LENGTH,CHAR_LENGTH,CONCAT,CONCAT_WS,CONV,ELT,EXPORT_SET,FIELD,FIND_IN_SET,HEX,INSERT,INSTR,LCASE,LEFT,LENGTH,LOAD_FILE,LOCATE,LOCATE,LOWER,LPAD,LTRIM,MAKE_SET,MATCH,MID,OCT,OCTET_LENGTH,ORD,POSITION,QUOTE,REPEAT,REPLACE,REVERSE,RIGHT,RPAD,RTRIM,SOUNDEX,SPACE,STRCMP,SUBSTRING,SUBSTRING,SUBSTRING,SUBSTRING,SUBSTRING_INDEX,TRIM,UCASE,UPPER";
                typeInfo =
                {
                    BIGINT =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           BIGINT
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 19;
                    };
                    BINARY =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           BINARY
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 255;
                    };
                    BIT =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           BIT
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 1;
                    };
                    BLOB =
                    {
                        createParams = 0;
                        defaultJDBCType =
                        (
                           "LONG VARBINARY"
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 65535;
                    };
                    BOOL =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           BIT
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 1;
                    };
                    CHAR =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           CHAR
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 255;
                    };
                    DATE =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           DATE
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 0;
                    };
                    DATETIME =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           TIMESTAMP
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 0;
                    };
                    DECIMAL =
                    {
                        createParams = 2;
                        defaultJDBCType =
                        (
                           DECIMAL
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 308;
                        minScale = "-308";
                        precision = 17;
                    };
                    DOUBLE =
                    {
                        createParams = 2;
                        defaultJDBCType =
                        (
                           DOUBLE
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 308;
                        minScale = "-308";
                        precision = 17;
                    };
                    "DOUBLE PRECISION" =
                    {
                        createParams = 2;
                        defaultJDBCType =
                        (
                           DOUBLE
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 308;
                        minScale = "-308";
                        precision = 17;
                    };
                    ENUM =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           VARCHAR
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 65535;
                    };
                    FLOAT =
                    {
                        createParams = 2;
                        defaultJDBCType =
                        (
                           REAL
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 38;
                        minScale = "-38";
                        precision = 10;
                    };
                    INT =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           INTEGER
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 10;
                    };
                    INTEGER =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           INTEGER
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 10;
                    };
                    "LONG VARBINARY" =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           "LONG VARBINARY"
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 16777215;
                    };
                    "LONG VARCHAR" =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           "LONG VARCHAR"
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 16777215;
                    };
                    LONGBLOB =
                    {
                        createParams = 0;
                        defaultJDBCType =
                        (
                           "LONG VARBINARY"
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 2147483647;
                    };
                    LONGTEXT =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           "LONG VARCHAR"
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 2147483647;
                    };
                    MEDIUMBLOB =
                    {
                        createParams = 0;
                        defaultJDBCType =
                        (
                           "LONG VARBINARY"
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 16777215;
                    };
                    MEDIUMINT =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           INTEGER
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 7;
                    };
                    MEDIUMTEXT =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           "LONG VARCHAR"
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 16777215;
                    };
                    NUMERIC =
                    {
                        createParams = 2;
                        defaultJDBCType =
                        (
                           NUMERIC
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 308;
                        minScale = 308;
                        precision = 17;
                    };
                    REAL =
                    {
                        createParams = 2;
                        defaultJDBCType =
                        (
                           DOUBLE
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 308;
                        minScale = "-308";
                        precision = 17;
                    };
                    SET =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           VARCHAR
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 64;
                    };
                    SMALLINT =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           SMALLINT
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 5;
                    };
                    TEXT =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           "LONG VARCHAR"
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 65535;
                    };
                    TIME =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           TIME
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 0;
                    };
                    TIMESTAMP =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           TIMESTAMP
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 0;
                    };
                    TINYBLOB =
                    {
                        createParams = 0;
                        defaultJDBCType =
                        (
                           "LONG VARBINARY"
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 255;
                    };
                    TINYINT =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           TINYINT
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 3;
                    };
                    TINYTEXT =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           "LONG VARCHAR"
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 255;
                    };
                    VARBINARY =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           VARBINARY
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 255;
                    };
                    VARCHAR =
                    {
                        createParams = 1;
                        defaultJDBCType =
                        (
                           VARCHAR
                        );
                        isNullable = T;
                        isSearchable = T;
                        maxScale = 0;
                        minScale = 0;
                        precision = 255;
                    };
                };
            };

    -- 
    This message is automatically generated by JIRA.
    -
    If you think it was sent incorrectly contact one of the administrators: http://issues.objectstyle.org/jira/secure/Administrators.jspa
    -
    For more information on JIRA, see: http://www.atlassian.com/software/jira
    



    This archive was generated by hypermail 2.0.0 : Tue May 29 2007 - 09:01:33 EDT