Gerhard, 
 
1) For your first issue where there are deprecation warnings, check the
following 
- are you using 2 or more persistence units in your persistence.xml?  I
have 2 persistence units in my persistence.xml - I changed all 2 x 4 =
8 properties to get rid of warnings during preprocessing of both
persistence units. 
- otherwise verify that your orm.xml is not overriding properties. 
 
For example... 
http://wiki.eclipse.org/EclipseLink/Examples/JPA/Tomcat_Web_Tutorial#Direct_connection_.28RESOURCE_LOCAL.29_Persistence.xml 
 
>Before: 
            <property name="eclipselink.jdbc.driver"
value="oracle.jdbc.driver.OracleDriver"/> 
            <property name="eclipselink.jdbc.url"
value="jdbc:oracle:thin:@127.0.0.1:1521:orcl"/> 
            <property name="eclipselink.jdbc.user" value="user"/> 
            <property name="eclipselink.jdbc.password"
value="pw"/> 
 
>generates 
[EL Info]: 2009-06-09
09:23:48.156--ServerSession(18680399)--Thread(Thread[main,5,main])--property
eclipselink.jdbc.user is deprecated, property
javax.persistence.jdbc.user should be used instead. 
[EL Info]: 2009-06-09
09:23:48.156--ServerSession(18680399)--Thread(Thread[main,5,main])--property
eclipselink.jdbc.driver is deprecated, property
javax.persistence.jdbc.driver should be used instead. 
[EL Info]: 2009-06-09
09:23:48.156--ServerSession(18680399)--Thread(Thread[main,5,main])--property
eclipselink.jdbc.url is deprecated, property javax.persistence.jdbc.url
should be used instead. 
[EL Info]: 2009-06-09
09:23:48.156--ServerSession(18680399)--Thread(Thread[main,5,main])--property
eclipselink.jdbc.password is deprecated, property
javax.persistence.jdbc.password should be used instead. 
 
>After a change to 
            <property name="javax.persistence.jdbc.driver"
value="oracle.jdbc.driver.OracleDriver"/> 
            <property name="javax.persistence.jdbc.url"
value="jdbc:oracle:thin:@127.0.0.1:1521:orcl"/> 
            <property name="javax.persistence.jdbc.user"
value="user"/> 
            <property name="javax.persistence.jdbc.password"
value="pw"/> 
 
>generates no more property warnings. 
 
 
2) For your lack of DDL script output, check that you are using the
following format. 
both drop-and-create-tables and create-tables will generate a
"dropDDL.jdbc" file. 
The key is that you should use "eclipselink.application-location" and
not the spec defined "javax.persistence.application-location" property
yet. 
 
>The following 
            <property name="eclipselink.ddl-generation"
value="drop-and-create-tables"/> 
            <property name="eclipselink.ddl-generation.output-mode"
value="both"/> 
            <property name="eclipselink.create-ddl-jdbc-file-name"
value="ddl.txt"/>       
            <property name="eclipselink.application-location"
value="c:/opt"/> 
 
>generates 
dropDDL.jdbc 
ddl.txt (with create table DDL entries) 
 
 
3) Table generator within a program? 
See the usage of the following class 
 http://fisheye2.atlassian.com/browse/eclipselink/trunk/foundation/org.eclipse.persistence.core/src/org/eclipse/persistence/tools/schemaframework/TableDefinition.java 
 
by the class 
http://fisheye2.atlassian.com/browse/eclipselink/trunk/foundation/org.eclipse.persistence.core/src/org/eclipse/persistence/tools/schemaframework/TableCreator.java 
 
using the method call 
public void
replaceTables(org.eclipse.persistence.sessions.DatabaseSession session) 
 
from for example 
http://fisheye2.atlassian.com/browse/eclipselink/trunk/jpa/eclipselink.jpa.test/src/org/eclipse/persistence/testing/tests/jpa/metamodel/MetamodelTest.java 
 
Note: When you use table generation in this way outside of standard JPA
properties and annotations - you will be using native API of
EclipseLink. 
 
 
thank you 
/michael 
 
 
Gerhard Kratz wrote:
  
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
  
 
_______________________________________________
eclipselink-users mailing list
eclipselink-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/eclipselink-users
  
 
 
 |