Note that there are some explanatory texts on larger screens.

plurals
  1. POHow to integrate struts2 with Hibernate
    primarykey
    data
    text
    <p>I am badly stuck integrating struts2 with Hibernate.</p> <p>I am using netbeans 7.1.2</p> <p>I have a very simple Java EE project which displays all the rows of a table "QUESTION" in the Derby (Java DB) database. I have made the table and mapped it to the hibernate.cfg.xml file.</p> <p>But when i right click and go to 'Run HQL Query' and execute the query</p> <p>"from Question", I get the following error:</p> <pre><code>org.hibernate.exception.SQLGrammarException: could not execute query at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:67) at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43) at org.hibernate.loader.Loader.doList(Loader.java:2223) at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2104) at org.hibernate.loader.Loader.list(Loader.java:2099) at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:378) at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:338) at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172) at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1121) at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79) Caused by: java.sql.SQLSyntaxErrorException: Table/View 'RAMBO.QUESTION' does not exist. at org.apache.derby.client.am.SQLExceptionFactory40.getSQLException(Unknown Source) at org.apache.derby.client.am.SqlException.getSQLException(Unknown Source) at org.apache.derby.client.am.Connection.prepareStatement(Unknown Source) at org.hibernate.jdbc.AbstractBatcher.getPreparedStatement(AbstractBatcher.java:505) at org.hibernate.jdbc.AbstractBatcher.getPreparedStatement(AbstractBatcher.java:423) at org.hibernate.jdbc.AbstractBatcher.prepareQueryStatement(AbstractBatcher.java:139) at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1547) at org.hibernate.loader.Loader.doQuery(Loader.java:673) at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236) at org.hibernate.loader.Loader.doList(Loader.java:2220) ... 9 more Caused by: org.apache.derby.client.am.SqlException: Table/View 'RAMBO.QUESTION' does not exist. at org.apache.derby.client.am.Statement.completeSqlca(Unknown Source) at org.apache.derby.client.net.NetStatementReply.parsePrepareError(Unknown Source) at org.apache.derby.client.net.NetStatementReply.parsePRPSQLSTTreply(Unknown Source) at org.apache.derby.client.net.NetStatementReply.readPrepareDescribeOutput(Unknown Source) at org.apache.derby.client.net.StatementReply.readPrepareDescribeOutput(Unknown Source) at org.apache.derby.client.net.NetStatement.readPrepareDescribeOutput_(Unknown Source) at org.apache.derby.client.am.Statement.readPrepareDescribeOutput(Unknown Source) at org.apache.derby.client.am.PreparedStatement.readPrepareDescribeInputOutput(Unknown Source) at org.apache.derby.client.am.PreparedStatement.flowPrepareDescribeInputOutput(Unknown Source) at org.apache.derby.client.am.PreparedStatement.prepare(Unknown Source) at org.apache.derby.client.am.Connection.prepareStatementX(Unknown Source) ... 17 more </code></pre> <p>My Hibernate.cfg.xml file:</p> <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"&gt; &lt;hibernate-configuration&gt; &lt;session-factory&gt; &lt;property name="hibernate.dialect"&gt;org.hibernate.dialect.DerbyDialect&lt;/property&gt; &lt;property name="hibernate.connection.driver_class"&gt;org.apache.derby.jdbc.ClientDriver&lt;/property&gt; &lt;property name="hibernate.connection.url"&gt;jdbc:derby://localhost:1527/Q4U&lt;/property&gt; &lt;property name="hibernate.connection.username"&gt;rambo&lt;/property&gt; &lt;property name="hibernate.connection.password"&gt;ho&lt;/property&gt; &lt;property name="hibernate.current_session_context_class"&gt;thread&lt;/property&gt; &lt;mapping resource="hibernate.hbm.xml"/&gt; &lt;mapping/&gt; &lt;/session-factory&gt; &lt;/hibernate-configuration&gt; </code></pre> <p>My Hibernate.hbm.xml file:</p> <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"&gt; &lt;hibernate-mapping&gt; &lt;class name="beans.Question" table="RAMBO.QUESTION"&gt; &lt;id name="qid" type="java.lang.Integer"&gt; &lt;column name="QID" /&gt; &lt;generator class="increment" /&gt; &lt;/id&gt; &lt;property name="opc" type="java.lang.Integer"&gt; &lt;column name="OPC" not-null="true"/&gt; &lt;/property&gt; &lt;property name="uid" type="java.lang.Integer"&gt; &lt;column name="UID" not-null="true"/&gt; &lt;/property&gt; &lt;property name="cid" type="java.lang.Integer"&gt; &lt;column name="CID" not-null="true"/&gt; &lt;/property&gt; &lt;property name="abuse" type="java.lang.Integer"&gt; &lt;column name="ABUSE" not-null="true"/&gt; &lt;/property&gt; &lt;property name="accuracy" type="java.lang.Float"&gt; &lt;column name="ACCURACY" not-null="true"/&gt; &lt;/property&gt; &lt;property name="poston" type="java.util.Date"&gt; &lt;column name="POSTON" not-null="true"/&gt; &lt;/property&gt; &lt;property name="body" type="java.lang.String"&gt; &lt;column name="BODY" not-null="true"/&gt; &lt;/property&gt; &lt;property name="op1" type="java.lang.String"&gt; &lt;column name="OP1" not-null="true"/&gt; &lt;/property&gt; &lt;property name="op2" type="java.lang.String"&gt; &lt;column name="OP2" not-null="true"/&gt; &lt;/property&gt; &lt;property name="op3" type="java.lang.String"&gt; &lt;column name="OP3" not-null="true"/&gt; &lt;/property&gt; &lt;property name="op4" type="java.lang.String"&gt; &lt;column name="OP4" not-null="true"/&gt; &lt;/property&gt; &lt;property name="op5" type="java.lang.String"&gt; &lt;column name="OP5" not-null="true"/&gt; &lt;/property&gt; &lt;property name="cname" type="java.lang.String"&gt; &lt;column name="CNAME" not-null="true"/&gt; &lt;/property&gt; &lt;/class&gt; &lt;/hibernate-mapping&gt; </code></pre> <p>Hibernate.reveng.xml file :</p> <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;!DOCTYPE hibernate-reverse-engineering PUBLIC "-//Hibernate/Hibernate Reverse Engineering DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-reverse-engineering-3.0.dtd"&gt; &lt;hibernate-reverse-engineering&gt; &lt;schema-selection match-schema="RAMBO"/&gt; &lt;table-filter match-name="USERS"/&gt; &lt;table-filter match-name="CATEGORY"/&gt; &lt;table-filter match-name="TESTS"/&gt; &lt;table-filter match-name="INBOX"/&gt; &lt;table-filter match-name="QUESTION"/&gt; &lt;table-filter match-name="ADMIN"/&gt; &lt;/hibernate-reverse-engineering&gt; </code></pre> <p>Question.java</p> <pre><code>package beans; import java.io.Serializable; import java.util.Date; public class Question implements Serializable { int qid, opc, uid, cid, abuse; float accuracy; Date poston; String body, op1, op2, op3, op4, op5, cname; // Also public getters and setters } </code></pre> <p>FindQuestion.java</p> <pre><code>package controller; import beans.Question; import com.opensymphony.xwork2.ActionSupport; import java.util.ArrayList; import java.util.List; import org.hibernate.Session; public class FindQuestion extends ActionSupport { private List questionList = new ArrayList(); @Override public String execute() throws Exception { try { Session session = HibernateUtil.getSessionFactory().getCurrentSession(); session.beginTransaction(); this.questionList = (List&lt;Question&gt;) session.createQuery("from Question"); session.getTransaction().commit(); } catch (Exception e) { } return SUCCESS; } } </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload