This is a problem on all versions of Cayenne. Here is a patch that
explains the change. I will log it in Jira and apply to all versions.
Andrus
Index: cayenne-java/src/cayenne/java/org/objectstyle/cayenne/conf/
JNDIDataSourceFactory.java
===================================================================
--- cayenne-java/src/cayenne/java/org/objectstyle/cayenne/conf/
JNDIDataSourceFactory.java (revision 504920)
+++ cayenne-java/src/cayenne/java/org/objectstyle/cayenne/conf/
JNDIDataSourceFactory.java (working copy)
@@ -144,9 +144,10 @@
// as we don't want compile dependencies on the Modeler,
instantiate factory via
// reflection ...
+ ClassLoader loader = Thread.currentThread
().getContextClassLoader();
DataSourceFactory prefsFactory = (DataSourceFactory) Class
.forName(
-
"org.objectstyle.cayenne.modeler.pref.PreferencesDataSourceFactory")
+
"org.objectstyle.cayenne.modeler.pref.PreferencesDataSourceFactory",
true, loader)
.newInstance();
prefsFactory.initializeWithParentConfiguration(parentConfig);
On Feb 16, 2007, at 10:21 AM, Peter Schröder wrote:
jey! kick ass! it works!
what did you change? is it only a 1.2 problem?
-----Ursprüngliche Nachricht-----
Von: Andrus Adamchik [mailto:[EMAIL PROTECTED]
Gesendet: Freitag, 16. Februar 2007 16:02
An: user@cayenne.apache.org
Betreff: Re: AW: AW: AW: cayenne with jetty6
On Feb 16, 2007, at 3:57 AM, Peter Schröder wrote:
16 Feb 2007 09:55:03.928 [INFO] [main]
[org.objectstyle.cayenne.conf.JNDIDataSourceFactory] - failed
loading from local preferences
java.lang.ClassCastException:
org.objectstyle.cayenne.modeler.pref.PreferencesDataSourceFactory
at
org.objectstyle.cayenne.conf.JNDIDataSourceFactory.loadFromPreference
s
(JNDIDataSourceFactory.java:147)
at org.objectstyle.cayenne.conf.JNDIDataSourceFactory.getDataSource
(JNDIDataSourceFactory.java:111)
at
org.objectstyle.cayenne.conf.RuntimeLoadDelegate.shouldLoadDataNode
(RuntimeLoadDelegate.java:324)
at org.objectstyle.cayenne.conf.ConfigLoader$NodeHandler.init
(ConfigLoader.java:366)
at org.objectstyle.cayenne.conf.ConfigLoader
$DomainHandler.startElement(ConfigLoader.java:255)
at org.apache.xerces.parsers.AbstractSAXParser.startElement
(Unknown Source)
Cool, we are getting somewhere. Maven ClassLoaders are a mystery to
me, but I think I might know the fix. Could you try this patched
cayenne.jar and tell me if it works?
http://people.apache.org/~aadamchik/patched/cayenne-1.2-02162007.jar
Andrus