From: Max R. A. <max...@jb...> - 2006-06-09 12:55:33
|
the fix is either to add an extra catch or somehow improve the parser so= it doesn't try to resolve a classname out of an alias. /max >> No, this is a pure Hibernate EntityManager test, it has nothing to do= >> with app servers. > > ah - i didn't see that getConstantValue thingy. > that error is because of terrible windows that forces the classloaders= > to have case ignored for lookups ;) > > /max > >> Max Rydahl Andersen wrote: >>> >>> I have seen similar NoClassDef when dealing with classloaders in >>> eclipse. >>> >>> It looks like the current context thread might not be behaving as it= >>> should ? >>> Does this happen only under GlassFish or ? >>> >>> (but weird that changing the alias makes a difference?) >>> >>> /max >>> >>> > Steve, >>> > JPA compliance + the literal thing seems to give trouble to >>> > >>> > Query q =3D em.createQuery( "select item from Item item where = >>> item.descr >>> > like 'Microk_oft mouse' escape 'k' " ); >>> > >>> > |ava.lang.NoClassDefFoundError: item (wrong name: >>> > org/hibernate/ejb/test/Item) at >>> > java.lang.ClassLoader.defineClass1(Native Method) at >>> > java.lang.ClassLoader.defineClass(ClassLoader.java:620) at >>> > >>> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:1= 24) >>> > at java.net.URLClassLoader.defineClass(URLClassLoader.java:260) at= >>> > java.net.URLClassLoader.access$100(URLClassLoader.java:56) at >>> > java.net.URLClassLoader$1.run(URLClassLoader.java:195) at >>> > java.security.AccessController.doPrivileged(Native Method) at >>> > java.net.URLClassLoader.findClass(URLClassLoader.java:188) at >>> > java.lang.ClassLoader.loadClass(ClassLoader.java:306) at >>> > sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268) at >>> > java.lang.ClassLoader.loadClass(ClassLoader.java:251) at >>> > org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:9= 5) >>> at >>> > >>> org.hibernate.util.ReflectHelper.getConstantValue(ReflectHelper.java= :128) >>> > at >>> > >>> org.hibernate.hql.ast.QueryTranslatorImpl$JavaConstantConverter.hand= leDotStructure(QueryTranslatorImpl.java:569) >>> > at >>> > >>> org.hibernate.hql.ast.QueryTranslatorImpl$JavaConstantConverter.visi= t(QueryTranslatorImpl.java:564) >>> > at >>> > >>> org.hibernate.hql.ast.util.NodeTraverser.visitDepthFirst(NodeTravers= er.java:40) >>> > at >>> > >>> org.hibernate.hql.ast.util.NodeTraverser.visitDepthFirst(NodeTravers= er.java:41) >>> > at >>> > >>> org.hibernate.hql.ast.util.NodeTraverser.visitDepthFirst(NodeTravers= er.java:41) >>> > at >>> > >>> org.hibernate.hql.ast.util.NodeTraverser.visitDepthFirst(NodeTravers= er.java:42) >>> > at >>> > >>> org.hibernate.hql.ast.util.NodeTraverser.traverseDepthFirst(NodeTrav= erser.java:33) >>> > at >>> > >>> org.hibernate.hql.ast.QueryTranslatorImpl.parse(QueryTranslatorImpl.= java:254) >>> > at >>> > >>> org.hibernate.hql.ast.QueryTranslatorImpl.doCompile(QueryTranslatorI= mpl.java:157) >>> > at >>> > >>> org.hibernate.hql.ast.QueryTranslatorImpl.compile(QueryTranslatorImp= l.java:111) >>> > at >>> org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:77)= >>> > at >>> org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:56)= >>> > at >>> > >>> org.hibernate.engine.query.QueryPlanCache.getHQLQueryPlan(QueryPlanC= ache.java:71) >>> > at >>> > >>> org.hibernate.impl.AbstractSessionImpl.getHQLQueryPlan(AbstractSessi= onImpl.java:133) >>> > at >>> > >>> org.hibernate.impl.AbstractSessionImpl.createQuery(AbstractSessionIm= pl.java:112) >>> > at org.hibernate.impl.SessionImpl.createQuery(SessionImpl.java:162= 3) >>> at >>> > >>> org.hibernate.ejb.AbstractEntityManagerImpl.createQuery(AbstractEnti= tyManagerImpl.java:79) >>> > at > >>> org.hibernate.ejb.test.QueryTest.testEscapeCharacter(QueryTest.java:= 133)| >>> > >>> > Note that if I change the alias, it works. >>> > Query q =3D em.createQuery( "select i from Item i where i.descr li= ke >>> > 'Microk_oft mouse' escape 'k' " ); >>> >>> >>> >>> -- >>> -- >>> Max Rydahl Andersen >>> callto://max.rydahl.andersen >>> >>> Hibernate >>> ma...@hi... >>> http://hibernate.org >>> >>> JBoss Inc >>> max...@jb... >>> >>> >>> _______________________________________________ >>> hibernate-devel mailing list >>> hib...@li... >>> https://lists.sourceforge.net/lists/listinfo/hibernate-devel >>> >> > > > -- = -- Max Rydahl Andersen callto://max.rydahl.andersen Hibernate ma...@hi... http://hibernate.org JBoss Inc max...@jb... |