You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by "Neil Rutherford (JIRA)" <ji...@apache.org> on 2009/03/12 13:41:16 UTC
[jira] Created: (CAY-1192) NoClassDefFoundError while loading JPA
entity classes on Windows
NoClassDefFoundError while loading JPA entity classes on Windows
----------------------------------------------------------------
Key: CAY-1192
URL: https://issues.apache.org/cayenne/browse/CAY-1192
Project: Cayenne
Issue Type: Bug
Components: Cayenne JPA
Affects Versions: 3.0M5
Environment: MS Windows XP
Eclipse 3.4.1
JDK 1.5.08
Reporter: Neil Rutherford
Attachments: patch.diff
While running a test app with 1 entity from inside Eclipse I get the below exception:
2009/03/12 02:17:03 org.apache.cayenne.jpa.Provider createEntityManagerFactory
INFO: Extra PersistenceUnitInfo properties: {}
Exception in thread "main" java.lang.NoClassDefFoundError: test\entities\Transaction (wrong name: test/entities/Transaction)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.lang.ClassLoader.defineClass(ClassLoader.java:465)
at org.apache.cayenne.jpa.JpaUnitClassLoader.findClass(JpaUnitClassLoader.java:83)
at org.apache.cayenne.jpa.JpaUnitClassLoader.loadClass(JpaUnitClassLoader.java:49)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:242)
at org.apache.cayenne.jpa.conf.EntityMapLoader.loadFromAnnotations(EntityMapLoader.java:249)
at org.apache.cayenne.jpa.conf.EntityMapLoader.loadEntityMap(EntityMapLoader.java:112)
at org.apache.cayenne.jpa.conf.EntityMapLoader.<init>(EntityMapLoader.java:88)
at org.apache.cayenne.jpa.Provider.createContainerEntityManagerFactory(Provider.java:224)
at org.apache.cayenne.jpa.Provider.createEntityManagerFactory(Provider.java:194)
at javax.persistence.Persistence.createFactory(Persistence.java:171)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:111)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:65)
at Main.main(Main.java:36)
This seems to be caused by this line in org.apache.cayenne.jpa.conf.EntityMapLoader (inside locateClassesInFolder(File,...):
classes.add(absPath.substring(
rootPathLength,
absPath.length() - suffixLen).replace('/', '.'));
because on Windows the path separator is a '\\', replacing the '/' with File.separatorChar fixes my problem.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.