I have an application that is using this fetch defined in "getAllObjects":
....
EOFetchSpecification fs = new
EOFetchSpecification("ProjectExecutionTemplate", nameQualifier, null, true,
true, sortOrdering);
NSArray foundList = context.objectsWithFetchSpecification(fs);
.....etc
Everything "seems" working, however when fetch this particular table, this
message has thrown out :: It was complaining the class cast exception that
instead of ProjectExecutionTemplate, WO looks that the objects fetched are of
ProjectActorRoleTemplate class!! The SQL trace shows correctly that all 12
rows are fetched.
=== trace 1 === error
[2007-04-19 16:00:17 SGT] <WorkerThread0> evaluateExpression:
<com.webobjects.jdbcadaptor.MySQLPlugIn$MySQLExpression: "SELECT DISTINCT
t0.ABBREVIATION_NAME, t0.CODE, t0.IS_ACTIVE, t0.IS_DEFAULT, t0.SEQUENCE_NUMBER,
t0.TEMPLATE_KEY, t0.VDESCRIPTION, t0.VNAME FROM PROJECT_EXECUTION_TEMPLATE t0
WHERE UPPER(t0.VNAME) LIKE UPPER(?) ESCAPE '|'" withBindings: 1:"%"(vName)>
[2007-04-19 16:00:17 SGT] <WorkerThread0> 12 row(s) processed
[2007-04-19 16:00:17 SGT] <WorkerThread0> === Commit Internal Transaction
java.lang.ClassCastException: com.rhino.model.ProjectActorRoleTemplate
at
com.rhino.model.ProjectExecutionTemplate.getAllObjects(ProjectExecutionTemplate.java:206)
at ProjectExecutionPage.initializeDisplayGroup(ProjectExecutionPage.java:110)
So, spent some time on error searching... and finally reach a point that if I
changed the primary key in ProjectExecutionTemplate database, e.g.:
(NULL,NULL,1,NULL,NULL,1000007,NULL,'Design/Development'), ==> changed to
(NULL,NULL,1,NULL,NULL,10007,NULL,'Design/Development'), ==> Note that
"1000007" to "10007"
When run the app again, everything worked! See below:
==== trace 2 ==== good one
[2007-04-19 16:03:45 SGT] <WorkerThread1> evaluateExpression:
<com.webobjects.jdbcadaptor.MySQLPlugIn$MySQLExpression: "SELECT DISTINCT
t0.ABBREVIATION_NAME, t0.CODE, t0.IS_ACTIVE, t0.IS_DEFAULT, t0.SEQUENCE_NUMBER,
t0.TEMPLATE_KEY, t0.VDESCRIPTION, t0.VNAME FROM PROJECT_EXECUTION_TEMPLATE t0
WHERE UPPER(t0.VNAME) LIKE UPPER(?) ESCAPE '|'" withBindings: 1:"%"(vName)>
[2007-04-19 16:03:45 SGT] <WorkerThread1> 12 row(s) processed
[2007-04-19 16:03:45 SGT] <WorkerThread1> === Commit Internal Transaction
So what my question is: what has gone wrong actually?
Primary key overflow?
Faults in MYSQL or WO or "programmer"? (primary key is defined as int(11) in
MYSQL)
How could Class Cast Exception happen in the first place? (though both
subclass from Template..)
Puzzled....Appreciate comments. [WO5.2.4/MYSQL v 5.0.22]
Cheers
Cheong Hee
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com
This email sent to [EMAIL PROTECTED]