org.hibernate.exception.SQLGrammarException: could not execute query

Hibernate JIRA | Dytech Solutions | 1 decade ago
tip
Your exception is missing from the Samebug knowledge base.
Here are the best solutions we found on the Internet.
Click on the to mark the helpful solution and get rewards for you help.
  1. 0

    Summary: When executing the query "from Privilege p where :user in p.roles.users" an oracle SQLException: "missing expression" is thrown. Alternate queries were found, but this query should either work, or produce a hibernate query exception of some sort (ie malformed query, unsupported query etc), not left up to Oracle. This bug report contains: - 3 Java classes for model objects ~ TestUser.java - contains a set of TestRoles ~ TestRole.java - contains a set of TestUsers and a list of TestPrivileges ~ TestPrivilege.java - contains a set of TestRoles - 3 Hibernate mappings ~ All sets are mapped, some are inverse mappings. - 1 Hibernate configuration file ~ identifies the 3 mapping files - 1 JUnit test class with example queries ~ test1 produces invalid sql ~ test2 is valide, but unexpectedly returns no results ~ test3 is valid and returns correct results - 2 Stack traces, one from test1 and one test2 ////////////////////////////////////////////// // TestUser.java // ////////////////////////////////////////////// package au.com.dytech.find.core.hibernatetest; import java.util.HashSet; import java.util.Set; /** * A User of the system. * * @author Dytech Solutions Pty. Ltd. */ public class TestUser { Set roles; Long id; public TestUser() { roles = new HashSet(); } /** * @return Returns the id. */ public Long getId() { return id; } /** * @param id The id to set. */ public void setId(Long id) { this.id = id; } /** * @param role The role to add. */ public void addRole(TestRole role) { roles.add(role); role.getUsers().add(this); } /** * @return Returns the roles. */ public Set getRoles() { return roles; } /** * @param roles The roles to set. */ public void setRoles(Set roles) { this.roles = roles; } } ////////////////////////////////////////////// // TestRole.java // ////////////////////////////////////////////// package au.com.dytech.find.core.hibernatetest; import java.util.HashSet; import java.util.Set; /** * A role assumed by Users. * * @author Dytech Solutions Pty. Ltd. */ public class TestRole { Set privileges; Set users; Long id; public TestRole() { privileges = new HashSet(); users = new HashSet(); } /** * @return Returns the id. */ public Long getId() { return id; } /** * @param id The id to set. */ public void setId(Long id) { this.id = id; } /** * @param user The user to add. */ public void addUser(TestUser user) { user.addRole(this); } /** * @return Returns the users. */ public Set getUsers() { return users; } /** * @param users The users to set. */ public void setUsers(Set users) { this.users = users; } /** * @param privilege The pivilege to add. */ public void addPrivilege(TestPrivilege privilege) { privileges.add(privilege); privilege.getRoles().add(this); } /** * @return Returns the privileges. */ public Set getPrivileges() { return privileges; } /** * @param privileges The privileges to set. */ public void setPrivileges(Set privileges) { this.privileges = privileges; } } ////////////////////////////////////////////// // TestPrivilege.java // ////////////////////////////////////////////// package au.com.dytech.find.core.hibernatetest; import java.util.HashSet; import java.util.Set; /** * A privilege granted to roles. * * @author Dytech Solutions Pty. Ltd. */ public class TestPrivilege { Set roles; Long id; public TestPrivilege() { roles = new HashSet(); } /** * @return Returns the id. */ public Long getId() { return id; } /** * @param id The id to set. */ public void setId(Long id) { this.id = id; } /** * @param role The role to add. */ public void addRole(TestRole role) { role.addPrivilege(this); } /** * @return Returns the roles. */ public Set getRoles() { return roles; } /** * @param roles The roles to set. */ public void setRoles(Set roles) { this.roles = roles; } } ////////////////////////////////////////////// // TestUser.hbm.xml // ////////////////////////////////////////////// <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <class name="au.com.dytech.find.core.hibernatetest.TestUser" table="TEST_USER" > <id name="id" column="id" type="long"> <generator class="native"/> </id> <set name="roles" table="TEST_USER_ROLES" lazy="false" cascade="all"> <key column="USER_ID"/> <many-to-many class = "au.com.dytech.find.core.hibernatetest.TestRole" foreign-key = "FK_TEST_USER_ROLES_ROLE" column = "ROLE_ID"/> </set> </class> </hibernate-mapping> ////////////////////////////////////////////// // TestRole.hbm.xml // ////////////////////////////////////////////// <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <class name="au.com.dytech.find.core.hibernatetest.TestRole" table="TEST_ROLE" > <id name="id" column="id" type="long"> <generator class="native"/> </id> <set name="privileges" table="TEST_ROLE_PRIVILEGES" lazy="false" cascade="all"> <key column="ROLE_ID"/> <many-to-many class = "au.com.dytech.find.core.hibernatetest.TestPrivilege" foreign-key = "FK_TEST_ROLE_PRVLGS_PRVLG" column = "PRIVILEGE_ID"/> </set> <set name="users" inverse="true" cascade="all"> <key column="ROLE_ID"/> <many-to-many class = "au.com.dytech.find.core.hibernatetest.TestUser" foreign-key = "FK_TEST_ROLE_USERS_USER" column = "USER_ID"/> </set> </class> </hibernate-mapping> ////////////////////////////////////////////// // TestPrivilege.hbm.xml // ////////////////////////////////////////////// <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <class name="au.com.dytech.find.core.hibernatetest.TestPrivilege" table="TEST_PRIVILEGE" > <id name="id" column="id" type="long"> <generator class="native"/> </id> <set name="roles" inverse="true" cascade="all"> <key column="PRIVILEGE_ID"/> <many-to-many class = "au.com.dytech.find.core.hibernatetest.TestRole" foreign-key = "FK_TEST_PRIVILEGE_ROLES_ROLE" column = "ROLE_ID"/> </set> </class> </hibernate-mapping> ////////////////////////////////////////////// // hibernate.cfg.xml // ////////////////////////////////////////////// <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <property name="dialect">org.hibernate.dialect.OracleDialect</property> <property name="show_sql">false</property> <property name="cache.provider_class">org.hibernate.cache.EhCacheProvider</property> <mapping resource="au/com/dytech/find/core/hibernatetest/TestPrivilege.hbm.xml"/> <mapping resource="au/com/dytech/find/core/hibernatetest/TestRole.hbm.xml"/> <mapping resource="au/com/dytech/find/core/hibernatetest/TestUser.hbm.xml"/> </session-factory> </hibernate-configuration> ////////////////////////////////////////////// // HibernateQueryTest.java // ////////////////////////////////////////////// package au.com.dytech.find.core.hibernatetest; import java.io.File; import java.io.IOException; import java.util.Iterator; import java.util.List; import javax.naming.NamingException; import junit.framework.TestCase; import org.apache.commons.dbcp.BasicDataSource; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; import org.springframework.mock.jndi.SimpleNamingContextBuilder; import org.springframework.orm.hibernate3.SessionFactoryUtils; /** * This test exposes a bug in hibernate's query generation. * * @author Dytech Solutions Pty. Ltd. */ public class HibernateQueryTest extends TestCase { Session session; TestUser user1; TestPrivilege privilege1, privilege2, privilege3, privilege4; private Transaction transaction; /** * @see junit.framework.TestCase#setUp() */ public void setUp() throws Exception { user1 = new TestUser(); TestUser user2 = new TestUser(); TestRole role1 = new TestRole(); TestRole role2 = new TestRole(); TestRole role3 = new TestRole(); privilege1 = new TestPrivilege(); privilege2 = new TestPrivilege(); privilege3 = new TestPrivilege(); privilege4 = new TestPrivilege(); user1.addRole(role1); user1.addRole(role2); role1.addPrivilege(privilege1); role1.addPrivilege(privilege2); role2.addPrivilege(privilege1); role2.addPrivilege(privilege3); user2.addRole(role3); role3.addPrivilege(privilege1); role3.addPrivilege(privilege4); setupJndiContext(); session = getSession(); transaction = session.beginTransaction(); List oldUsers = session.createCriteria(TestUser.class).list(); for (Iterator iter = oldUsers.iterator(); iter.hasNext();) { TestUser oldUser = (TestUser) iter.next(); session.delete(oldUser); } transaction.commit(); transaction = session.beginTransaction(); session.save(user1); session.save(user2); transaction.commit(); transaction = session.beginTransaction(); } /** * @see junit.framework.TestCase#tearDown() */ public void tearDown() { transaction.commit(); } /** * Produces invalid SQL. */ public void test1() { Query query = session.createQuery("from TestPrivilege p where :user in p.roles.users"); query.setEntity("user", user1); List results = query.list(); assertEquals(3, results.size()); assertTrue(results.contains(privilege1)); assertTrue(results.contains(privilege2)); assertTrue(results.contains(privilege3)); } /** * Produces valid SQL, but no results are found. */ public void test2() { Query query = session.createQuery("from TestPrivilege p where :user in elements(p.roles.users)"); query.setEntity("user", user1); List results = query.list(); assertEquals(3, results.size()); assertTrue(results.contains(privilege1)); assertTrue(results.contains(privilege2)); assertTrue(results.contains(privilege3)); } /** * Successful Query! */ public void test3() { Query query = session.createQuery("select distinct u.roles.privileges from TestUser u where u = :user"); query.setEntity("user", user1); List results = query.list(); assertEquals(3, results.size()); assertTrue(results.contains(privilege1)); assertTrue(results.contains(privilege2)); assertTrue(results.contains(privilege3)); } /** * Create a new Hibernate Session. */ private Session getSession() { File configFile = new File( "src/code/au/com/dytech/find/core/hibernatetest/hibernate.cfg.xml").getAbsoluteFile(); Configuration cfg = new Configuration(); cfg.configure(configFile); cfg.buildMappings(); cfg.setProperty("hibernate.connection.datasource", "jdbc/FindDb"); SessionFactory sessionFactory = cfg.buildSessionFactory(); Session session = SessionFactoryUtils.getNewSession(sessionFactory); return session; } /** * Sets up testing JNDI resources * */ public void setupJndiContext() throws NamingException, IOException { if (SimpleNamingContextBuilder.getCurrentContextBuilder() == null) { SimpleNamingContextBuilder builder = SimpleNamingContextBuilder.emptyActivatedContextBuilder(); BasicDataSource ds = new BasicDataSource(); ds.setPassword("dbpassword"); ds.setDriverClassName("oracle.jdbc.driver.OracleDriver"); ds.setUsername("dbusername"); ds.setUrl("jdbc:oracle:thin:@dbserver:dbport:dbname"); ds.setMaxActive(10); ds.setInitialSize(1); builder.bind("java:comp/env/" + "jdbc/FindDb", ds); builder.bind("jdbc/FindDb", ds); } } } ////////////////////////////////////////////// // test1 stack trace // ////////////////////////////////////////////// org.hibernate.exception.SQLGrammarException: could not execute query at org.hibernate.exception.ErrorCodeConverter.convert(ErrorCodeConverter.java:70) at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43) at org.hibernate.loader.Loader.doList(Loader.java:1596) at org.hibernate.loader.Loader.list(Loader.java:1577) at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:395) at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:271) at org.hibernate.impl.SessionImpl.list(SessionImpl.java:844) at org.hibernate.impl.QueryImpl.list(QueryImpl.java:74) at au.com.dytech.find.core.hibernatetest.HibernateQueryTest.test1(HibernateQueryTest.java:97) 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:324) at junit.framework.TestCase.runTest(TestCase.java:154) at junit.framework.TestCase.runBare(TestCase.java:127) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:118) at junit.framework.TestSuite.runTest(TestSuite.java:208) at junit.framework.TestSuite.run(TestSuite.java:203) at junit.framework.TestSuite.runTest(TestSuite.java:208) at junit.framework.TestSuite.run(TestSuite.java:203) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:478) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:344) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196) Caused by: java.sql.SQLException: ORA-00936: missing expression at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:158) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:305) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:272) at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:626) at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:182) at oracle.jdbc.driver.T4CPreparedStatement.execute_for_describe(T4CPreparedStatement.java:589) at oracle.jdbc.driver.OracleStatement.execute_maybe_describe(OracleStatement.java:1025) at oracle.jdbc.driver.T4CPreparedStatement.execute_maybe_describe(T4CPreparedStatement.java:632) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1147) at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3035) at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3076) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:92) at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:120) at org.hibernate.loader.Loader.getResultSet(Loader.java:1272) at org.hibernate.loader.Loader.doQuery(Loader.java:391) at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:218) at org.hibernate.loader.Loader.doList(Loader.java:1593) ... 23 more ////////////////////////////////////////////// // test2 stack trace // ////////////////////////////////////////////// junit.framework.AssertionFailedError: expected:<3> but was:<0> at junit.framework.Assert.fail(Assert.java:47) at junit.framework.Assert.failNotEquals(Assert.java:282) at junit.framework.Assert.assertEquals(Assert.java:64) at junit.framework.Assert.assertEquals(Assert.java:201) at junit.framework.Assert.assertEquals(Assert.java:207) at au.com.dytech.find.core.hibernatetest.HibernateQueryTest.test2(HibernateQueryTest.java:114) 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:324) at junit.framework.TestCase.runTest(TestCase.java:154) at junit.framework.TestCase.runBare(TestCase.java:127) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:118) at junit.framework.TestSuite.runTest(TestSuite.java:208) at junit.framework.TestSuite.run(TestSuite.java:203) at junit.framework.TestSuite.runTest(TestSuite.java:208) at junit.framework.TestSuite.run(TestSuite.java:203) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:478) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:344) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)

    Hibernate JIRA | 1 decade ago | Dytech Solutions
    org.hibernate.exception.SQLGrammarException: could not execute query
  2. 0

    Summary: When executing the query "from Privilege p where :user in p.roles.users" an oracle SQLException: "missing expression" is thrown. Alternate queries were found, but this query should either work, or produce a hibernate query exception of some sort (ie malformed query, unsupported query etc), not left up to Oracle. This bug report contains: - 3 Java classes for model objects ~ TestUser.java - contains a set of TestRoles ~ TestRole.java - contains a set of TestUsers and a list of TestPrivileges ~ TestPrivilege.java - contains a set of TestRoles - 3 Hibernate mappings ~ All sets are mapped, some are inverse mappings. - 1 Hibernate configuration file ~ identifies the 3 mapping files - 1 JUnit test class with example queries ~ test1 produces invalid sql ~ test2 is valide, but unexpectedly returns no results ~ test3 is valid and returns correct results - 2 Stack traces, one from test1 and one test2 ////////////////////////////////////////////// // TestUser.java // ////////////////////////////////////////////// package au.com.dytech.find.core.hibernatetest; import java.util.HashSet; import java.util.Set; /** * A User of the system. * * @author Dytech Solutions Pty. Ltd. */ public class TestUser { Set roles; Long id; public TestUser() { roles = new HashSet(); } /** * @return Returns the id. */ public Long getId() { return id; } /** * @param id The id to set. */ public void setId(Long id) { this.id = id; } /** * @param role The role to add. */ public void addRole(TestRole role) { roles.add(role); role.getUsers().add(this); } /** * @return Returns the roles. */ public Set getRoles() { return roles; } /** * @param roles The roles to set. */ public void setRoles(Set roles) { this.roles = roles; } } ////////////////////////////////////////////// // TestRole.java // ////////////////////////////////////////////// package au.com.dytech.find.core.hibernatetest; import java.util.HashSet; import java.util.Set; /** * A role assumed by Users. * * @author Dytech Solutions Pty. Ltd. */ public class TestRole { Set privileges; Set users; Long id; public TestRole() { privileges = new HashSet(); users = new HashSet(); } /** * @return Returns the id. */ public Long getId() { return id; } /** * @param id The id to set. */ public void setId(Long id) { this.id = id; } /** * @param user The user to add. */ public void addUser(TestUser user) { user.addRole(this); } /** * @return Returns the users. */ public Set getUsers() { return users; } /** * @param users The users to set. */ public void setUsers(Set users) { this.users = users; } /** * @param privilege The pivilege to add. */ public void addPrivilege(TestPrivilege privilege) { privileges.add(privilege); privilege.getRoles().add(this); } /** * @return Returns the privileges. */ public Set getPrivileges() { return privileges; } /** * @param privileges The privileges to set. */ public void setPrivileges(Set privileges) { this.privileges = privileges; } } ////////////////////////////////////////////// // TestPrivilege.java // ////////////////////////////////////////////// package au.com.dytech.find.core.hibernatetest; import java.util.HashSet; import java.util.Set; /** * A privilege granted to roles. * * @author Dytech Solutions Pty. Ltd. */ public class TestPrivilege { Set roles; Long id; public TestPrivilege() { roles = new HashSet(); } /** * @return Returns the id. */ public Long getId() { return id; } /** * @param id The id to set. */ public void setId(Long id) { this.id = id; } /** * @param role The role to add. */ public void addRole(TestRole role) { role.addPrivilege(this); } /** * @return Returns the roles. */ public Set getRoles() { return roles; } /** * @param roles The roles to set. */ public void setRoles(Set roles) { this.roles = roles; } } ////////////////////////////////////////////// // TestUser.hbm.xml // ////////////////////////////////////////////// <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <class name="au.com.dytech.find.core.hibernatetest.TestUser" table="TEST_USER" > <id name="id" column="id" type="long"> <generator class="native"/> </id> <set name="roles" table="TEST_USER_ROLES" lazy="false" cascade="all"> <key column="USER_ID"/> <many-to-many class = "au.com.dytech.find.core.hibernatetest.TestRole" foreign-key = "FK_TEST_USER_ROLES_ROLE" column = "ROLE_ID"/> </set> </class> </hibernate-mapping> ////////////////////////////////////////////// // TestRole.hbm.xml // ////////////////////////////////////////////// <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <class name="au.com.dytech.find.core.hibernatetest.TestRole" table="TEST_ROLE" > <id name="id" column="id" type="long"> <generator class="native"/> </id> <set name="privileges" table="TEST_ROLE_PRIVILEGES" lazy="false" cascade="all"> <key column="ROLE_ID"/> <many-to-many class = "au.com.dytech.find.core.hibernatetest.TestPrivilege" foreign-key = "FK_TEST_ROLE_PRVLGS_PRVLG" column = "PRIVILEGE_ID"/> </set> <set name="users" inverse="true" cascade="all"> <key column="ROLE_ID"/> <many-to-many class = "au.com.dytech.find.core.hibernatetest.TestUser" foreign-key = "FK_TEST_ROLE_USERS_USER" column = "USER_ID"/> </set> </class> </hibernate-mapping> ////////////////////////////////////////////// // TestPrivilege.hbm.xml // ////////////////////////////////////////////// <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <class name="au.com.dytech.find.core.hibernatetest.TestPrivilege" table="TEST_PRIVILEGE" > <id name="id" column="id" type="long"> <generator class="native"/> </id> <set name="roles" inverse="true" cascade="all"> <key column="PRIVILEGE_ID"/> <many-to-many class = "au.com.dytech.find.core.hibernatetest.TestRole" foreign-key = "FK_TEST_PRIVILEGE_ROLES_ROLE" column = "ROLE_ID"/> </set> </class> </hibernate-mapping> ////////////////////////////////////////////// // hibernate.cfg.xml // ////////////////////////////////////////////// <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <property name="dialect">org.hibernate.dialect.OracleDialect</property> <property name="show_sql">false</property> <property name="cache.provider_class">org.hibernate.cache.EhCacheProvider</property> <mapping resource="au/com/dytech/find/core/hibernatetest/TestPrivilege.hbm.xml"/> <mapping resource="au/com/dytech/find/core/hibernatetest/TestRole.hbm.xml"/> <mapping resource="au/com/dytech/find/core/hibernatetest/TestUser.hbm.xml"/> </session-factory> </hibernate-configuration> ////////////////////////////////////////////// // HibernateQueryTest.java // ////////////////////////////////////////////// package au.com.dytech.find.core.hibernatetest; import java.io.File; import java.io.IOException; import java.util.Iterator; import java.util.List; import javax.naming.NamingException; import junit.framework.TestCase; import org.apache.commons.dbcp.BasicDataSource; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; import org.springframework.mock.jndi.SimpleNamingContextBuilder; import org.springframework.orm.hibernate3.SessionFactoryUtils; /** * This test exposes a bug in hibernate's query generation. * * @author Dytech Solutions Pty. Ltd. */ public class HibernateQueryTest extends TestCase { Session session; TestUser user1; TestPrivilege privilege1, privilege2, privilege3, privilege4; private Transaction transaction; /** * @see junit.framework.TestCase#setUp() */ public void setUp() throws Exception { user1 = new TestUser(); TestUser user2 = new TestUser(); TestRole role1 = new TestRole(); TestRole role2 = new TestRole(); TestRole role3 = new TestRole(); privilege1 = new TestPrivilege(); privilege2 = new TestPrivilege(); privilege3 = new TestPrivilege(); privilege4 = new TestPrivilege(); user1.addRole(role1); user1.addRole(role2); role1.addPrivilege(privilege1); role1.addPrivilege(privilege2); role2.addPrivilege(privilege1); role2.addPrivilege(privilege3); user2.addRole(role3); role3.addPrivilege(privilege1); role3.addPrivilege(privilege4); setupJndiContext(); session = getSession(); transaction = session.beginTransaction(); List oldUsers = session.createCriteria(TestUser.class).list(); for (Iterator iter = oldUsers.iterator(); iter.hasNext();) { TestUser oldUser = (TestUser) iter.next(); session.delete(oldUser); } transaction.commit(); transaction = session.beginTransaction(); session.save(user1); session.save(user2); transaction.commit(); transaction = session.beginTransaction(); } /** * @see junit.framework.TestCase#tearDown() */ public void tearDown() { transaction.commit(); } /** * Produces invalid SQL. */ public void test1() { Query query = session.createQuery("from TestPrivilege p where :user in p.roles.users"); query.setEntity("user", user1); List results = query.list(); assertEquals(3, results.size()); assertTrue(results.contains(privilege1)); assertTrue(results.contains(privilege2)); assertTrue(results.contains(privilege3)); } /** * Produces valid SQL, but no results are found. */ public void test2() { Query query = session.createQuery("from TestPrivilege p where :user in elements(p.roles.users)"); query.setEntity("user", user1); List results = query.list(); assertEquals(3, results.size()); assertTrue(results.contains(privilege1)); assertTrue(results.contains(privilege2)); assertTrue(results.contains(privilege3)); } /** * Successful Query! */ public void test3() { Query query = session.createQuery("select distinct u.roles.privileges from TestUser u where u = :user"); query.setEntity("user", user1); List results = query.list(); assertEquals(3, results.size()); assertTrue(results.contains(privilege1)); assertTrue(results.contains(privilege2)); assertTrue(results.contains(privilege3)); } /** * Create a new Hibernate Session. */ private Session getSession() { File configFile = new File( "src/code/au/com/dytech/find/core/hibernatetest/hibernate.cfg.xml").getAbsoluteFile(); Configuration cfg = new Configuration(); cfg.configure(configFile); cfg.buildMappings(); cfg.setProperty("hibernate.connection.datasource", "jdbc/FindDb"); SessionFactory sessionFactory = cfg.buildSessionFactory(); Session session = SessionFactoryUtils.getNewSession(sessionFactory); return session; } /** * Sets up testing JNDI resources * */ public void setupJndiContext() throws NamingException, IOException { if (SimpleNamingContextBuilder.getCurrentContextBuilder() == null) { SimpleNamingContextBuilder builder = SimpleNamingContextBuilder.emptyActivatedContextBuilder(); BasicDataSource ds = new BasicDataSource(); ds.setPassword("dbpassword"); ds.setDriverClassName("oracle.jdbc.driver.OracleDriver"); ds.setUsername("dbusername"); ds.setUrl("jdbc:oracle:thin:@dbserver:dbport:dbname"); ds.setMaxActive(10); ds.setInitialSize(1); builder.bind("java:comp/env/" + "jdbc/FindDb", ds); builder.bind("jdbc/FindDb", ds); } } } ////////////////////////////////////////////// // test1 stack trace // ////////////////////////////////////////////// org.hibernate.exception.SQLGrammarException: could not execute query at org.hibernate.exception.ErrorCodeConverter.convert(ErrorCodeConverter.java:70) at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43) at org.hibernate.loader.Loader.doList(Loader.java:1596) at org.hibernate.loader.Loader.list(Loader.java:1577) at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:395) at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:271) at org.hibernate.impl.SessionImpl.list(SessionImpl.java:844) at org.hibernate.impl.QueryImpl.list(QueryImpl.java:74) at au.com.dytech.find.core.hibernatetest.HibernateQueryTest.test1(HibernateQueryTest.java:97) 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:324) at junit.framework.TestCase.runTest(TestCase.java:154) at junit.framework.TestCase.runBare(TestCase.java:127) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:118) at junit.framework.TestSuite.runTest(TestSuite.java:208) at junit.framework.TestSuite.run(TestSuite.java:203) at junit.framework.TestSuite.runTest(TestSuite.java:208) at junit.framework.TestSuite.run(TestSuite.java:203) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:478) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:344) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196) Caused by: java.sql.SQLException: ORA-00936: missing expression at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:158) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:305) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:272) at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:626) at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:182) at oracle.jdbc.driver.T4CPreparedStatement.execute_for_describe(T4CPreparedStatement.java:589) at oracle.jdbc.driver.OracleStatement.execute_maybe_describe(OracleStatement.java:1025) at oracle.jdbc.driver.T4CPreparedStatement.execute_maybe_describe(T4CPreparedStatement.java:632) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1147) at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3035) at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3076) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:92) at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:120) at org.hibernate.loader.Loader.getResultSet(Loader.java:1272) at org.hibernate.loader.Loader.doQuery(Loader.java:391) at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:218) at org.hibernate.loader.Loader.doList(Loader.java:1593) ... 23 more ////////////////////////////////////////////// // test2 stack trace // ////////////////////////////////////////////// junit.framework.AssertionFailedError: expected:<3> but was:<0> at junit.framework.Assert.fail(Assert.java:47) at junit.framework.Assert.failNotEquals(Assert.java:282) at junit.framework.Assert.assertEquals(Assert.java:64) at junit.framework.Assert.assertEquals(Assert.java:201) at junit.framework.Assert.assertEquals(Assert.java:207) at au.com.dytech.find.core.hibernatetest.HibernateQueryTest.test2(HibernateQueryTest.java:114) 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:324) at junit.framework.TestCase.runTest(TestCase.java:154) at junit.framework.TestCase.runBare(TestCase.java:127) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:118) at junit.framework.TestSuite.runTest(TestSuite.java:208) at junit.framework.TestSuite.run(TestSuite.java:203) at junit.framework.TestSuite.runTest(TestSuite.java:208) at junit.framework.TestSuite.run(TestSuite.java:203) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:478) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:344) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)

    Hibernate JIRA | 1 decade ago | Dytech Solutions
    org.hibernate.exception.SQLGrammarException: could not execute query
  3. 0

    Under My Evaluations, clicking the title of the evaluation seems to work, but clicking the (link) next to the title I see HTTP 500 - The server encountered an internal error () that prevented it from fulfilling this request. Is (link) just for testing and can be removed now? <span style="font-size:0.9em;">(<a href="http://localhost:8080/direct/eval-evaluation/1815" title="direct url to the evaluation">link</a>)</span> INFO: No evalGroupId supplied, doing abbreviated check for evalId=1815, userId=f0f507c4-e32a-4a79-00da-3197fa64517e (2007-06-06 11:33:41,679 http-8080-Processor23_org.sakaiproject.evaluation.logic.impl.EvalEvaluationsLogicImpl) WARN: Empty list of groups for user:f0f507c4-e32a-4a79-00da-3197fa64517e, permission: eval.take.evaluation (2007-06-06 11:33:41,685 http-8080-Processor23_org.sakaiproject.evaluation.logic.impl.EvalExternalLogicImpl) WARN: SQL Error: 936, SQLState: 42000 (2007-06-06 11:33:41,691 http-8080-Processor23_org.hibernate.util.JDBCExceptionReporter) ERROR: ORA-00936: missing expression (2007-06-06 11:33:41,691 http-8080-Processor23_org.hibernate.util.JDBCExceptionReporter) 2007-06-06 11:33:41,769 ERROR (AccessRegistrar.java:82) - <Error handling access request> Target exception of class org.springframework.jdbc.BadSqlGrammarException Successive lines until stack trace show causes progressing to exception site: Error fetching factory bean errorStateManager to initialise bean targettedMessageList --> Error setting dependency requestRSVC of bean errorStateManager --> Error fetching factory bean postDecoder to initialise bean requestRSVC --> Error setting dependency renderSystemDecoder of bean postDecoder --> Error fetching bean renderSystem from factory method getRenderSystem of factory bean renderSystemResolver --> Error fetching bean contentTypeInfo from factory method getContentTypeInfo of factory bean contentTypeInfoFactory --> Error fetching bean viewParameters from factory method getViewParameters of factory bean viewParamsInterceptorManager --> Error fetching bean defaultViewParameters from factory method getViewParameters of factory bean defaultViewInferrerManager --> Hibernate operation: could not execute query; bad SQL grammar [select this_.ID as ID23_0_, this_.LAST_MODIFIED as LAST2_23_0_, this_.OWNER as OWNER23_0_, this_.group_id as group4_23_0_, this_.group_type as group5_23_0_, this_.INSTRUCTOR_APPROVAL as INSTRUCTOR6_23_0_, this_.INSTRUCTORS_VIEW_RESULTS as INSTRUCT7_23_0_, this_.STUDENTS_VIEW_RESULTS as STUDENTS8_23_0_, this_.EVALUATION_FK as EVALUATION9_23_0_ from EVAL_ASSIGN_GROUP this_ where this_.EVALUATION_FK=? and this_.INSTRUCTOR_APPROVAL=? and this_.group_id in ()]; nested exception is java.sql.SQLException: ORA-00936: missing expression org.springframework.jdbc.BadSqlGrammarException: Hibernate operation: could not execute query; bad SQL grammar [select this_.ID as ID23_0_, this_.LAST_MODIFIED as LAST2_23_0_, this_.OWNER as OWNER23_0_, this_.group_id as group4_23_0_, this_.group_type as group5_23_0_, this_.INSTRUCTOR_APPROVAL as INSTRUCTOR6_23_0_, this_.INSTRUCTORS_VIEW_RESULTS as INSTRUCT7_23_0_, this_.STUDENTS_VIEW_RESULTS as STUDENTS8_23_0_, this_.EVALUATION_FK as EVALUATION9_23_0_ from EVAL_ASSIGN_GROUP this_ where this_.EVALUATION_FK=? and this_.INSTRUCTOR_APPROVAL=? and this_.group_id in ()]; nested exception is java.sql.SQLException: ORA-00936: missing expression java.sql.SQLException: ORA-00936: missing expression at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:316) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:282) at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:639) at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:185) at oracle.jdbc.driver.T4CPreparedStatement.execute_for_describe(T4CPreparedStatement.java:503) at oracle.jdbc.driver.OracleStatement.execute_maybe_describe(OracleStatement.java:965) at oracle.jdbc.driver.T4CPreparedStatement.execute_maybe_describe(T4CPreparedStatement.java:535) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1051) at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:2984) at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3026) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:92) at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:139) at org.hibernate.loader.Loader.getResultSet(Loader.java:1669) at org.hibernate.loader.Loader.doQuery(Loader.java:662) at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224) at org.hibernate.loader.Loader.doList(Loader.java:2145) at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029) at org.hibernate.loader.Loader.list(Loader.java:2024) at org.hibernate.loader.criteria.CriteriaLoader.list(CriteriaLoader.java:94) at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1533) at org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:283) at org.springframework.orm.hibernate3.HibernateTemplate$37.doInHibernate(HibernateTemplate.java:988) at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:366) at org.springframework.orm.hibernate3.HibernateTemplate.findByCriteria(HibernateTemplate.java:978) at org.sakaiproject.genericdao.hibernate.HibernateBasicGenericDao.findByProperties(HibernateBasicGenericDao.java:119) at org.sakaiproject.genericdao.hibernate.HibernateBasicGenericDao.findByProperties(HibernateBasicGenericDao.java:109) at org.sakaiproject.genericdao.hibernate.HibernateBasicGenericDao.findByProperties(HibernateBasicGenericDao.java:83) at sun.reflect.GeneratedMethodAccessor98.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:287) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:181) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:148) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176) at $Proxy5.findByProperties(Unknown Source) at org.sakaiproject.evaluation.logic.impl.EvalEvaluationsLogicImpl.canTakeEvaluation(EvalEvaluationsLogicImpl.java:652) at org.sakaiproject.evaluation.tool.inferrers.EvaluationVPInferrer.inferDefaultViewParametersImpl(EvaluationVPInferrer.java:170) at org.sakaiproject.evaluation.tool.inferrers.EvaluationVPInferrer.access$000(EvaluationVPInferrer.java:49) at org.sakaiproject.evaluation.tool.inferrers.EvaluationVPInferrer$1.run(EvaluationVPInferrer.java:96) at org.sakaiproject.genericdao.hibernate.HibernateGenericDao.invokeTransactionalAccess(HibernateGenericDao.java:94) at sun.reflect.GeneratedMethodAccessor130.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:287) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:181) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:148) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176) at $Proxy5.invokeTransactionalAccess(Unknown Source) at org.sakaiproject.evaluation.tool.wrapper.ModelAccessWrapperInvoker.invokeRunnable(ModelAccessWrapperInvoker.java:39) at org.sakaiproject.evaluation.tool.inferrers.EvaluationVPInferrer.inferDefaultViewParameters(EvaluationVPInferrer.java:94) at uk.ac.cam.caret.sakai.rsf.entitybroker.EVPIManager.getViewParameters(EVPIManager.java:57) at uk.org.ponder.rsf.viewstate.DefaultViewInferrerManager.getViewParameters(DefaultViewInferrerManager.java:21) 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 uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:27) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:21) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:81) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:464) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.PerRequestInfo$1.locateBean(PerRequestInfo.java:47) at uk.org.ponder.rsac.RSACBridgeProxy.getTarget(RSACBridgeProxy.java:64) at uk.org.ponder.rsac.RSACPeaProxyFactory.intercept(RSACPeaProxyFactory.java:62) at uk.org.ponder.rsf.viewstate.ViewParameters$$EnhancerByCGLIB$$a25f3849.get(<generated>) at uk.org.ponder.rsf.viewstate.BasicViewParametersParser.parse(BasicViewParametersParser.java:62) at sun.reflect.GeneratedMethodAccessor120.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.springframework.util.MethodInvoker.invoke(MethodInvoker.java:248) at org.springframework.beans.factory.config.MethodInvokingFactoryBean.doInvoke(MethodInvokingFactoryBean.java:124) at org.springframework.beans.factory.config.MethodInvokingFactoryBean.afterPropertiesSet(MethodInvokingFactoryBean.java:113) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:571) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.PerRequestInfo$1.locateBean(PerRequestInfo.java:47) at uk.org.ponder.rsac.RSACBridgeProxy.getTarget(RSACBridgeProxy.java:64) at uk.org.ponder.rsac.RSACPeaProxyFactory.intercept(RSACPeaProxyFactory.java:62) at uk.org.ponder.rsf.viewstate.ViewParameters$$EnhancerByCGLIB$$5ca323fe.get(<generated>) at uk.org.ponder.rsf.viewstate.ViewParamsInterceptorManager.getViewParameters(ViewParamsInterceptorManager.java:22) at sun.reflect.GeneratedMethodAccessor115.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:27) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:21) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:81) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:464) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.PerRequestInfo$1.locateBean(PerRequestInfo.java:47) at uk.org.ponder.rsac.RSACBridgeProxy.getTarget(RSACBridgeProxy.java:64) at uk.org.ponder.rsac.RSACPeaProxyFactory.intercept(RSACPeaProxyFactory.java:62) at uk.org.ponder.rsf.viewstate.ViewParameters$$EnhancerByCGLIB$$4dbcb9e3.get(<generated>) at uk.org.ponder.rsf.content.ContentTypeInfoFactory.getContentType(ContentTypeInfoFactory.java:46) at uk.org.ponder.rsf.content.ContentTypeInfoFactory.getContentTypeInfo(ContentTypeInfoFactory.java:60) at sun.reflect.GeneratedMethodAccessor114.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:27) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:21) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:81) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:464) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.PerRequestInfo$1.locateBean(PerRequestInfo.java:47) at uk.org.ponder.rsac.RSACBridgeProxy.getTarget(RSACBridgeProxy.java:64) at uk.org.ponder.rsac.RSACPeaProxyFactory.intercept(RSACPeaProxyFactory.java:62) at uk.org.ponder.rsf.content.ContentTypeInfo$$EnhancerByCGLIB$$f63a8ba4.get(<generated>) at uk.org.ponder.rsf.renderer.RenderSystemResolver.getRenderSystem(RenderSystemResolver.java:33) at sun.reflect.GeneratedMethodAccessor113.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:27) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:21) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:81) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:464) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.RSACBeanLocator.fetchDependent(RSACBeanLocator.java:626) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:513) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:456) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.RSACBeanLocator.fetchDependent(RSACBeanLocator.java:626) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:513) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:456) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.PerRequestInfo$1.locateBean(PerRequestInfo.java:47) at uk.org.ponder.rsac.RSACErrorBridge.invokeRunnable(RSACErrorBridge.java:32) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:436) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.PerRequestInfo$1.locateBean(PerRequestInfo.java:47) at uk.ac.cam.caret.sakai.rsf.entitybroker.AccessRegistrar.handleAccess(AccessRegistrar.java:78) at org.sakaiproject.entitybroker.servlet.DirectServlet.dispatch(DirectServlet.java:180) at org.sakaiproject.entitybroker.servlet.DirectServlet.handleRequest(DirectServlet.java:138) at org.sakaiproject.entitybroker.servlet.DirectServlet.doGet(DirectServlet.java:101) at javax.servlet.http.HttpServlet.service(HttpServlet.java:690) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:532) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685) at java.lang.Thread.run(Thread.java:613) WARN: dispatch(): exception: (2007-06-06 11:33:41,778 http-8080-Processor23_org.sakaiproject.entitybroker.servlet.DirectServlet) org.springframework.jdbc.BadSqlGrammarException: Hibernate operation: could not execute query; bad SQL grammar [select this_.ID as ID23_0_, this_.LAST_MODIFIED as LAST2_23_0_, this_.OWNER as OWNER23_0_, this_.group_id as group4_23_0_, this_.group_type as group5_23_0_, this_.INSTRUCTOR_APPROVAL as INSTRUCTOR6_23_0_, this_.INSTRUCTORS_VIEW_RESULTS as INSTRUCT7_23_0_, this_.STUDENTS_VIEW_RESULTS as STUDENTS8_23_0_, this_.EVALUATION_FK as EVALUATION9_23_0_ from EVAL_ASSIGN_GROUP this_ where this_.EVALUATION_FK=? and this_.INSTRUCTOR_APPROVAL=? and this_.group_id in ()]; nested exception is java.sql.SQLException: ORA-00936: missing expression java.sql.SQLException: ORA-00936: missing expression at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:316) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:282) at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:639) at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:185) at oracle.jdbc.driver.T4CPreparedStatement.execute_for_describe(T4CPreparedStatement.java:503) at oracle.jdbc.driver.OracleStatement.execute_maybe_describe(OracleStatement.java:965) at oracle.jdbc.driver.T4CPreparedStatement.execute_maybe_describe(T4CPreparedStatement.java:535) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1051) at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:2984) at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3026) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:92) at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:139) at org.hibernate.loader.Loader.getResultSet(Loader.java:1669) at org.hibernate.loader.Loader.doQuery(Loader.java:662) at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224) at org.hibernate.loader.Loader.doList(Loader.java:2145) at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029) at org.hibernate.loader.Loader.list(Loader.java:2024) at org.hibernate.loader.criteria.CriteriaLoader.list(CriteriaLoader.java:94) at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1533) at org.hibernate.impl.CriteriaImpl.list(CriteriaImpl.java:283) at org.springframework.orm.hibernate3.HibernateTemplate$37.doInHibernate(HibernateTemplate.java:988) at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:366) at org.springframework.orm.hibernate3.HibernateTemplate.findByCriteria(HibernateTemplate.java:978) at org.sakaiproject.genericdao.hibernate.HibernateBasicGenericDao.findByProperties(HibernateBasicGenericDao.java:119) at org.sakaiproject.genericdao.hibernate.HibernateBasicGenericDao.findByProperties(HibernateBasicGenericDao.java:109) at org.sakaiproject.genericdao.hibernate.HibernateBasicGenericDao.findByProperties(HibernateBasicGenericDao.java:83) at sun.reflect.GeneratedMethodAccessor98.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:287) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:181) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:148) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176) at $Proxy5.findByProperties(Unknown Source) at org.sakaiproject.evaluation.logic.impl.EvalEvaluationsLogicImpl.canTakeEvaluation(EvalEvaluationsLogicImpl.java:652) at org.sakaiproject.evaluation.tool.inferrers.EvaluationVPInferrer.inferDefaultViewParametersImpl(EvaluationVPInferrer.java:170) at org.sakaiproject.evaluation.tool.inferrers.EvaluationVPInferrer.access$000(EvaluationVPInferrer.java:49) at org.sakaiproject.evaluation.tool.inferrers.EvaluationVPInferrer$1.run(EvaluationVPInferrer.java:96) at org.sakaiproject.genericdao.hibernate.HibernateGenericDao.invokeTransactionalAccess(HibernateGenericDao.java:94) at sun.reflect.GeneratedMethodAccessor130.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:287) at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:181) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:148) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176) at $Proxy5.invokeTransactionalAccess(Unknown Source) at org.sakaiproject.evaluation.tool.wrapper.ModelAccessWrapperInvoker.invokeRunnable(ModelAccessWrapperInvoker.java:39) at org.sakaiproject.evaluation.tool.inferrers.EvaluationVPInferrer.inferDefaultViewParameters(EvaluationVPInferrer.java:94) at uk.ac.cam.caret.sakai.rsf.entitybroker.EVPIManager.getViewParameters(EVPIManager.java:57) at uk.org.ponder.rsf.viewstate.DefaultViewInferrerManager.getViewParameters(DefaultViewInferrerManager.java:21) 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 uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:27) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:21) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:81) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:464) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.PerRequestInfo$1.locateBean(PerRequestInfo.java:47) at uk.org.ponder.rsac.RSACBridgeProxy.getTarget(RSACBridgeProxy.java:64) at uk.org.ponder.rsac.RSACPeaProxyFactory.intercept(RSACPeaProxyFactory.java:62) at uk.org.ponder.rsf.viewstate.ViewParameters$$EnhancerByCGLIB$$a25f3849.get(<generated>) at uk.org.ponder.rsf.viewstate.BasicViewParametersParser.parse(BasicViewParametersParser.java:62) at sun.reflect.GeneratedMethodAccessor120.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.springframework.util.MethodInvoker.invoke(MethodInvoker.java:248) at org.springframework.beans.factory.config.MethodInvokingFactoryBean.doInvoke(MethodInvokingFactoryBean.java:124) at org.springframework.beans.factory.config.MethodInvokingFactoryBean.afterPropertiesSet(MethodInvokingFactoryBean.java:113) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:571) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.PerRequestInfo$1.locateBean(PerRequestInfo.java:47) at uk.org.ponder.rsac.RSACBridgeProxy.getTarget(RSACBridgeProxy.java:64) at uk.org.ponder.rsac.RSACPeaProxyFactory.intercept(RSACPeaProxyFactory.java:62) at uk.org.ponder.rsf.viewstate.ViewParameters$$EnhancerByCGLIB$$5ca323fe.get(<generated>) at uk.org.ponder.rsf.viewstate.ViewParamsInterceptorManager.getViewParameters(ViewParamsInterceptorManager.java:22) at sun.reflect.GeneratedMethodAccessor115.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:27) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:21) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:81) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:464) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.PerRequestInfo$1.locateBean(PerRequestInfo.java:47) at uk.org.ponder.rsac.RSACBridgeProxy.getTarget(RSACBridgeProxy.java:64) at uk.org.ponder.rsac.RSACPeaProxyFactory.intercept(RSACPeaProxyFactory.java:62) at uk.org.ponder.rsf.viewstate.ViewParameters$$EnhancerByCGLIB$$4dbcb9e3.get(<generated>) at uk.org.ponder.rsf.content.ContentTypeInfoFactory.getContentType(ContentTypeInfoFactory.java:46) at uk.org.ponder.rsf.content.ContentTypeInfoFactory.getContentTypeInfo(ContentTypeInfoFactory.java:60) at sun.reflect.GeneratedMethodAccessor114.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:27) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:21) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:81) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:464) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.PerRequestInfo$1.locateBean(PerRequestInfo.java:47) at uk.org.ponder.rsac.RSACBridgeProxy.getTarget(RSACBridgeProxy.java:64) at uk.org.ponder.rsac.RSACPeaProxyFactory.intercept(RSACPeaProxyFactory.java:62) at uk.org.ponder.rsf.content.ContentTypeInfo$$EnhancerByCGLIB$$f63a8ba4.get(<generated>) at uk.org.ponder.rsf.renderer.RenderSystemResolver.getRenderSystem(RenderSystemResolver.java:33) at sun.reflect.GeneratedMethodAccessor113.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:27) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:21) at uk.org.ponder.reflect.JDKReflectiveCache.invokeMethod(JDKReflectiveCache.java:81) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:464) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.RSACBeanLocator.fetchDependent(RSACBeanLocator.java:626) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:513) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:456) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.RSACBeanLocator.fetchDependent(RSACBeanLocator.java:626) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:513) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:456) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.PerRequestInfo$1.locateBean(PerRequestInfo.java:47) at uk.org.ponder.rsac.RSACErrorBridge.invokeRunnable(RSACErrorBridge.java:32) at uk.org.ponder.rsac.RSACBeanLocator.createBean(RSACBeanLocator.java:436) at uk.org.ponder.rsac.RSACBeanLocator.getLocalBean(RSACBeanLocator.java:340) at uk.org.ponder.rsac.RSACBeanLocator.getBean(RSACBeanLocator.java:367) at uk.org.ponder.rsac.PerRequestInfo$1.locateBean(PerRequestInfo.java:47) at uk.ac.cam.caret.sakai.rsf.entitybroker.AccessRegistrar.handleAccess(AccessRegistrar.java:78) at org.sakaiproject.entitybroker.servlet.DirectServlet.dispatch(DirectServlet.java:180) at org.sakaiproject.entitybroker.servlet.DirectServlet.handleRequest(DirectServlet.java:138) at org.sakaiproject.entitybroker.servlet.DirectServlet.doGet(DirectServlet.java:101) at javax.servlet.http.HttpServlet.service(HttpServlet.java:690) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:532) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685) at java.lang.Thread.run(Thread.java:613)

    Sakai JIRA | 10 years ago | Richard Ellis
    java.sql.SQLException: ORA-00936: missing expression
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 0

    数据库连接的自动重连

    GitHub | 4 years ago | fengzhiguan
    java.sql.SQLException: Io 异常: Software caused connection abort: recv failed
  6. 0

    java.sql.SQLException: ORA-0094 caught when using quartz

    Stack Overflow | 5 years ago | Xuanzi Han
    java.sql.SQLException: ORA-00942: table or view does not exist

    12 unregistered visitors
    Not finding the right solution?
    Take a tour to get the most out of Samebug.

    Tired of useless tips?

    Automated exception search integrated into your IDE

    Root Cause Analysis

    1. java.sql.SQLException

      ORA-00936: missing expression

      at oracle.jdbc.driver.DatabaseError.throwSqlException()
    2. Oracle jdbc
      OraclePreparedStatement.executeQuery
      1. oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:158)
      2. oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:305)
      3. oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:272)
      4. oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:626)
      5. oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:182)
      6. oracle.jdbc.driver.T4CPreparedStatement.execute_for_describe(T4CPreparedStatement.java:589)
      7. oracle.jdbc.driver.OracleStatement.execute_maybe_describe(OracleStatement.java:1025)
      8. oracle.jdbc.driver.T4CPreparedStatement.execute_maybe_describe(T4CPreparedStatement.java:632)
      9. oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1147)
      10. oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3035)
      11. oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3076)
      11 frames
    3. Commons DBCP
      DelegatingPreparedStatement.executeQuery
      1. org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:92)
      1 frame
    4. Hibernate
      QueryLoader.list
      1. org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:120)
      2. org.hibernate.loader.Loader.getResultSet(Loader.java:1272)
      3. org.hibernate.loader.Loader.doQuery(Loader.java:391)
      4. org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:218)
      5. org.hibernate.loader.Loader.doList(Loader.java:1593)
      6. org.hibernate.loader.Loader.list(Loader.java:1577)
      7. org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:395)
      7 frames
    5. Hibernate HQL/JP-QL Parser
      QueryTranslatorImpl.list
      1. org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:271)
      1 frame
    6. Hibernate
      QueryImpl.list
      1. org.hibernate.impl.SessionImpl.list(SessionImpl.java:844)
      2. org.hibernate.impl.QueryImpl.list(QueryImpl.java:74)
      2 frames
    7. au.com.dytech
      HibernateQueryTest.test1
      1. au.com.dytech.find.core.hibernatetest.HibernateQueryTest.test1(HibernateQueryTest.java:97)
      1 frame
    8. Java RT
      Method.invoke
      1. sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      2. sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      3. sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      4. java.lang.reflect.Method.invoke(Method.java:324)
      4 frames
    9. JUnit
      TestSuite.run
      1. junit.framework.TestCase.runTest(TestCase.java:154)
      2. junit.framework.TestCase.runBare(TestCase.java:127)
      3. junit.framework.TestResult$1.protect(TestResult.java:106)
      4. junit.framework.TestResult.runProtected(TestResult.java:124)
      5. junit.framework.TestResult.run(TestResult.java:109)
      6. junit.framework.TestCase.run(TestCase.java:118)
      7. junit.framework.TestSuite.runTest(TestSuite.java:208)
      8. junit.framework.TestSuite.run(TestSuite.java:203)
      9. junit.framework.TestSuite.runTest(TestSuite.java:208)
      10. junit.framework.TestSuite.run(TestSuite.java:203)
      10 frames
    10. JUnit3 Runner
      RemoteTestRunner.main
      1. org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:478)
      2. org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:344)
      3. org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
      3 frames