Now I've tried it on another way:

1- download apache-openjpa-2.0.0-M3 and apache-openjpa-1.2.1:
gilbe...@sugep-dmasi:~/bin/apache-openjpa-2.0.0-M3/

gilbe...@sugep-dmasi:~/bin/apache-openjpa-1.2.1/

2- applied the patch[1]
3- create a new directory example from reversemapping one:
gilbe...@sugep-dmasi
:~/bin/apache-openjpa-2.0.0-M3/examples/park_schema/build.xml
gilbe...@sugep-dmasi
:~/bin/apache-openjpa-2.0.0-M3/examples/park_schema/schema
gilbe...@sugep-dmasi
:~/bin/apache-openjpa-2.0.0-M3/examples/park_schema/schema/dropdb.sql
gilbe...@sugep-dmasi
:~/bin/apache-openjpa-2.0.0-M3/examples/park_schema/schema/ToursDB_schema.sql

Changed dropdb.sql and ToursDB_schema.sql to drop and create my own
database.
I did it for apache-openjpa-1.2.1 as well.
4-run ant
      [sql] Executing resource:
/home/gilberto/dev/bin/apache-openjpa-1.2.1/examples/park_schema/schema/ToursDB_schema.sql
      [sql] 27 of 27 SQL statements executed
successfully


reverse-map-schema:
[reversemappingtool] 515  none  INFO   [main] openjpa.Tool - The reverse
mapping tool will run on the database.  The tool is gathering schema
information; this process may take some time.  Enable the
org.apache.openjpa.jdbc.Schema logging category to see messages about schema
data.

[reversemappingtool] 1000  none  INFO   [main] openjpa.jdbc.JDBC - Using
dictionary class "org.apache.openjpa.jdbc.sql.DerbyDictionary".
[reversemappingtool] <openjpa-1.2.1-r752877:753278 fatal user error>
org.apache.openjpa.util.UserException: A connection could not be obtained
for driver class "org.apache.derby.jdbc.EmbeddedDriver" and URL
"jdbc:derby:/home/gilberto/bin/apache-openjpa-1.2.1/examples/park_schema/park_schema-database;create=true".
You may have specified an invalid URL.

That one will fail because we are using an Embedded instance of Derby and we
have two task in the build.xml file that is trying to it.

So, to correct it, run it again with the following parameter: ant
-Dinitialize-db-skip=true

But... With apache-openjpa-1.2.1 version I could generate the orm.xml file.
It doesn't work with apache-openjpa-2.0.0-M3 version, giving  me this error:

gilbe...@sugep-dmasi:~/bin/apache-openjpa-2.0.0-M3/examples/park_schema> ant
-Dinitialize-db-skip=true
Buildfile:
build.xml


initialize-db:

reverse-map-schema:
[reversemappingtool] 586  none  INFO   [main] openjpa.Tool - The reverse
mapping tool will run on the database.  The tool is gathering schema
information; this process may take some time.  Enable the
org.apache.openjpa.jdbc.Schema logging category to see messages about schema
data.

[reversemappingtool] 1395  none  INFO   [main] openjpa.jdbc.JDBC - Using
dictionary class "org.apache.openjpa.jdbc.sql.DerbyDictionary".
[reversemappingtool] java.sql.SQLException: Table "APP.CUSTOMER" has a
foreign key to table "APP.PERSON" that has not been generated.  You must run
the schema generator on all inter-related tables at
once.

[reversemappingtool]    at
org.apache.openjpa.jdbc.schema.SchemaGenerator.generateForeignKeys(SchemaGenerator.java:780)

[reversemappingtool]    at
org.apache.openjpa.jdbc.schema.SchemaGenerator.generateForeignKeys(SchemaGenerator.java:731)

[reversemappingtool]    at
org.apache.openjpa.jdbc.schema.SchemaGenerator.generateForeignKeys(SchemaGenerator.java:431)

[reversemappingtool]    at
org.apache.openjpa.jdbc.schema.SchemaGenerator.generateSchemas(SchemaGenerator.java:278)

[reversemappingtool]    at
org.apache.openjpa.jdbc.schema.SchemaGenerator.generateSchemas(SchemaGenerator.java:243)

[reversemappingtool]    at
org.apache.openjpa.jdbc.meta.ReverseMappingTool.run(ReverseMappingTool.java:1974)

[reversemappingtool]    at
org.apache.openjpa.jdbc.ant.ReverseMappingToolTask.executeOn(ReverseMappingToolTask.java:287)

[reversemappingtool]    at
org.apache.openjpa.lib.ant.AbstractTask.execute(AbstractTask.java:171)

[reversemappingtool]    at
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)

[reversemappingtool]    at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
[reversemappingtool]    at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

[reversemappingtool]    at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

[reversemappingtool]    at
java.lang.reflect.Method.invoke(Method.java:597)

[reversemappingtool]    at
org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)

[reversemappingtool]    at
org.apache.tools.ant.Task.perform(Task.java:348)

[reversemappingtool]    at
org.apache.tools.ant.Target.execute(Target.java:357)

[reversemappingtool]    at
org.apache.tools.ant.Target.performTasks(Target.java:385)

[reversemappingtool]    at
org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337)

[reversemappingtool]    at
org.apache.tools.ant.Project.executeTarget(Project.java:1306)

[reversemappingtool]    at
org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)

[reversemappingtool]    at
org.apache.tools.ant.Project.executeTargets(Project.java:1189)

[reversemappingtool]    at
org.apache.tools.ant.Main.runBuild(Main.java:758)

[reversemappingtool]    at
org.apache.tools.ant.Main.startAnt(Main.java:217)

[reversemappingtool]    at
org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)

[reversemappingtool]    at
org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)

That's all!
For now, I will work with the apache-openjpa-1.2.1 version of the orm.xml
file.

Gilberto


[1]
http://issues.apache.org/jira/secure/attachment/12430065/OPENJPA-1091.1.2.x.diff.txt

-- 
View this message in context: 
http://n2.nabble.com/ReverseMappingTool-generate-orm-xml-from-Database-schema-tp4261755p4440094.html
Sent from the OpenJPA Users mailing list archive at Nabble.com.

Reply via email to