[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [eclipselink-users] How can I generate tables from entities?
|
Hello, Michael,
thank you very much for your fast and helpful response. Your unsigned
persistence jar-file really did it, the table generator works fine now.
In my case, which is admittedly a very simple one, it is even possible
to generate tables with
<property name="eclipselink.ddl-generation" value="create-tables" />
I tried to boil my entity declaration down to the absolute necessary,
the result is attached.
Some further feedback:
1. I changed all the prefixes of the properties in persistence.xml to javax.persistence as
you recommended.
But I'm still getting the follwing output lines:
[EL Info]: property eclipselink.jdbc.user is deprecated, property
javax.persistence.jdbc.user should be used instead.
[EL Info]: property eclipselink.jdbc.driver is deprecated, property
javax.persistence.jdbc.driver should be used instead.
[EL Info]: property eclipselink.jdbc.url is deprecated, property
javax.persistence.jdbc.url should be used instead.
[EL Info]: property eclipselink.jdbc.password is deprecated, property
javax.persistence.jdbc.password should be used instead.
2. With the line
<property
name="javax.persistence.ddl-generation.output-mode" value="both"/>
I tried to prompt EclipseLink to output the DDL in a text file, as
well, which I then couldn't find in the directory specified in the XML
element
<property
name="javax.persistence.application-location" value="C:\JPA"/>
How can one call the table generator from within a program?
Let me say that I'm really impressed by your fast and effective support.
best regards
Gerhard
Michael O'Brien schrieb:
Gerhard,
Your directory structure looks fine - specifically the position of
persistence.xml off of META-INF is good.
You may use the following EclipseLink JPA SE schema generation
example as a reference.
There are differences in my database url (which includes a valid
schema - IE no "null" schema) and ddl generation properties that
include dropping the tables before recreating them - on each run.
jdbc:oracle:thin:@127.0.0.1:1521:orcl
<property name="eclipselink.ddl-generation" value="drop-and-create-tables" />
http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/trunk/examples/org.eclipse.persistence.example.jpa.server.common.ddlgen/
For point #6 where you get a signed jar exception after adding
eclipselink to your project...
- you can use the following unsigned persistence jar - I had the
same issue when initially setting up Tomcat for SE persistence a couple
days ago.
http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/trunk/plugins/javax.persistence_unsigned_for_testing_1.0.0.jar
- the deprecated jdbc properties are ok - just change to using
javax.persistence prefixes for the future
For point #7
- I have specified my schema on the url
- I have modified sequence generation on my entity from the
original Dali entity source generation.
http://dev.eclipse.org/svnroot/rt/org.eclipse.persistence/trunk/examples/org.eclipse.persistence.example.jpa.server.common.ddlgen/src/org/eclipse/persistence/example/jpa/server/business/Cell.java
thank you
/michael
Gerhard Kratz wrote:
Hello,
my e-mail client seems to have a line-feed aversion. What seems
important to me with the directory structure is:
- that file persistence.xml seems to be in the right place, namely in
the subdirectory META-INF
- a class file has been generated
best regards
Gerhard
_______________________________________________
eclipselink-users mailing list
eclipselink-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/eclipselink-users
_______________________________________________
eclipselink-users mailing list
eclipselink-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/eclipselink-users
--
Prof. Dr. Gerhard Kratz
Fachhochschule Frankfurt am Main
Fachbereich 2: Informatik und Ingenieurwissenschaften
Nibelungenplatz 1
60318 Frankfurt am Main
WWW: http://www.fh-frankfurt.de/~g_kratz
http://bscw.fh-frankfurt.de
|
package employee1;
import javax.persistence.*;
import java.math.*;
@Entity
@Table(schema="test")
public class Employee {
@Id @GeneratedValue
private BigInteger personId;
private String name;
public Employee() {
}
public BigInteger getPersonId() {
return this.personId;
}
public void setPersonid(BigInteger personId) {
this.personId = personId;
}
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
}