wood burning stoves 2.0*
The moose likes EJB and other Java EE Technologies and the fly likes Jboss:Hypersonic:Manual  table creation:CreateException Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Murach's Java Servlets and JSP this week in the Servlets forum!
JavaRanch » Java Forums » Java » EJB and other Java EE Technologies
Bookmark "Jboss:Hypersonic:Manual  table creation:CreateException" Watch "Jboss:Hypersonic:Manual  table creation:CreateException" New topic
Author

Jboss:Hypersonic:Manual table creation:CreateException

clive jordan
Ranch Hand

Joined: Apr 27, 2005
Posts: 39
Hi Guys,

I know this is a rather jboss/hypersonic question, but I am having problems with manual database table creation with Hypersonic and entity beans.

I have a simple entity bean. I can ask Jboss to automatically create a table when the bean is deployed by defining this in my jbosscmp-jdbc.xml file:


And then I run my client to create a bean, all works fine and the entity is created in the database (checked using DatabaseManager).

If I drop the table and create it using SQL (actually from ant) using the following sql code:



The 'text' is a Hypersonic-specific sql statement.

and change the jbosscmp-jdbc.xml entry:




Then redeploy the app, all seems fine until I run the client. When the client calls the create() method, I get this:


CreateException:Could not create entity:java.sql.SQLException: The table's data source for has not been defined in statement [INSERT INTO PERSON (pid, name, age) VALUES (?, ?, ?)]


I have examined the table schema created by the sql file compared to that generated by jboss and they seem identical.

Am I missing something here or do I need to configure something else ?

Any help would be appreciated!

Thanks,
Clive
clive jordan
Ranch Hand

Joined: Apr 27, 2005
Posts: 39
Hi Guys,

I solved this problem so thought I'd round off in case anyone ever has the same issue.

In the hypersonic documentation, it states that you need to create a table with the text attribute in order to make it persistant and not a memory-only table:

[CODE}
create [B]text[/B] table person
(
pid varchar not null primary key,
name varchar,
age integer
);
[/CODE]

However, this seems to cause Jboss to not recognize the table. Removing the 'text' solved the problem. So either the documentation is incorrect (or I dont understand it) or Jboss does something under the covers to make the table permanent when accessing it.

Clive
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
 
subject: Jboss:Hypersonic:Manual table creation:CreateException
 
Similar Threads
unable to run ejb client
how debug a CMP entity error?
exception in running cmp in jboss4.0.2
EJB 2.0 Deployment problem
CMR configuration confusion