Hi,

I consulted a bunch of the existing information regarding generating DDL
without a db connection.  I was able to successfully do this with 1.2 from
the cmdline, but it still tries to get a connection when I execute from the
ant task.  Both are pointed at the same persistence.xml and I have not
specified any db connection properties in the file.  The output looks the
same up until the very end when it tries to record the schema.  Is this a
known issue?

CMDLINE

C:\Documents and Settings\Administrator\workspace2\JPQLPrototype>java
-cp .;META
-INF\;"C:\openjpa\openjpa_binaries\apache-openjpa-1.2.0
\lib"\..\openjpa-1.2.0.ja
r;"C:\openjpa\openjpa_binaries\apache-openjpa-1.2.0
\lib"\commons-collections-3.2
.jar;"C:\openjpa\openjpa_binaries\apache-openjpa-1.2.0
\lib"\serp-1.13.1.jar;"C:\
openjpa\openjpa_binaries\apache-openjpa-1.2.0
\lib"\commons-lang-2.1.jar;"C:\open
jpa\openjpa_binaries\apache-openjpa-1.2.0
\lib"\geronimo-jpa_3.0_spec-1.0.jar;"C:
\openjpa\openjpa_binaries\apache-openjpa-1.2.0
\lib"\geronimo-jta_1.1_spec-1.1.ja
r;"C:\openjpa\derbyjars"\derbytools.jar;"C:\openjpa
\derbyjars"\derby.jar;"C:\ope
njpa\derbyjars"\derbyclient.jar;"C:\openjpa
\derbyjars"\derbynet.jar;"C:\openjpa\
derbyjars"\derbyrun.jar  org.apache.openjpa.jdbc.meta.MappingTool
-properties pe
rsistence.xml#jpqlprototype  -schemaAction build -sql create.sql
-DBDictionary d
erby


ANT

 <!-- Call this target to generate DDL for your persistent classes..  Note
that we may have to update this based on where we locate persistence.xml
files -->
 <target name="generateddl">
  <!-- define the mappingtool task -->
  <taskdef name="mappingtool"
classname="org.apache.openjpa.jdbc.ant.MappingToolTask">
      <classpath refid="jpa.tooling.classpath"/>
  </taskdef>

  <!-- invoke the mapping tool -->
  <mappingtool sqlFile="./create.sql" action="buildSchema">.
        <!-- This assumes the persistence.xml file is in the META-INF
directory of the plugin. -->
        <config propertiesFile="./META-INF/persistence.xml"
DBDictionary="derby" />
        <classpath refid="jpa.tooling.classpath"/>
  </mappingtool>
</target>



Exception

C:\persist1\BUILD\include\jpa_common_build.xml:86:
<openjpa-1.2.0-r422266:683325
 fatal user error> org.apache.openjpa.util.UserException: A JDBC Driver or
DataS
ource class name must be specified in the ConnectionDriverName property.
        at org.apache.tools.ant.ProjectHelper.addLocationToBuildException
(Projec
tHelper.java:539)
        at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:384)
        at org.apache.tools.ant.taskdefs.CallTarget.execute
(CallTarget.java:107)

        at org.apache.tools.ant.UnknownElement.execute
(UnknownElement.java:275))
        at org.apache.tools.ant.Task.perform(Task.java:364)
        at org.apache.tools.ant.Target.execute(Target.java:341)
        at org.apache.tools.ant.Target.performTasks(Target.java:369)
        at org.apache.tools.ant.Project.executeSortedTargets
(Project.java:1216))
        at org.apache.tools.ant.Project.executeTarget(Project.java:1185)
        at org.apache.tools.ant.helper.DefaultExecutor.executeTargets
(DefaultExe
cutor.java:40).
        at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
        at org.apache.tools.ant.Main.runBuild(Main.java:668)
        at org.apache.tools.ant.Main.startAnt(Main.java:187)
        at org.apache.tools.ant.launch.Launcher.run(Launcher.java:246)
        at org.apache.tools.ant.launch.Launcher.main(Launcher.java:67)
Caused by: C:\persist1\BUILD\include\jpa_common_build.xml:86:
<openjpa-1.2.0-r42
2266:683325 fatal user error> org.apache.openjpa.util.UserException: A JDBC
Driv
er or DataSource class name must be specified in the ConnectionDriverName
proper
ty.
        at org.apache.openjpa.lib.ant.AbstractTask.execute
(AbstractTask.java:176
)
        at org.apache.tools.ant.UnknownElement.execute
(UnknownElement.java:275)
        at org.apache.tools.ant.Task.perform(Task.java:364)
        at org.apache.tools.ant.Target.execute(Target.java:341)
        at org.apache.tools.ant.Target.performTasks(Target.java:369)
        at org.apache.tools.ant.Project.executeSortedTargets
(Project.java:1216)
        at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets
(Single
CheckExecutor.java:37)
        at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
        at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:382)
        ... 13 more
Caused by: <openjpa-1.2.0-r422266:683325 fatal user error>
org.apache.openjpa.ut
il.UserException: A JDBC Driver or DataSource class name must be specified
in th
e ConnectionDriverName property.
        at org.apache.openjpa.jdbc.schema.DataSourceFactory.newDataSource
(DataSo
urceFactory.java:74)
        at
org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.createConnectionFa
ctory(JDBCConfigurationImpl.java:784)
        at
org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.getConnectionFacto
ry(JDBCConfigurationImpl.java:691).
        at org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.getDataSource
(JDBC
ConfigurationImpl.java:790)
        at
org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.getDataSource2(JDB
CConfigurationImpl.java:797)
        at org.apache.openjpa.jdbc.schema.SchemaTool.<init>
(SchemaTool.java:127)

        at org.apache.openjpa.jdbc.meta.MappingTool.newSchemaTool
(MappingTool.ja
va:310)
        at org.apache.openjpa.jdbc.meta.MappingTool.record
(MappingTool.java:490)

        at org.apache.openjpa.jdbc.meta.MappingTool.run
(MappingTool.java:1075)
        at org.apache.openjpa.jdbc.ant.MappingToolTask.executeOn
(MappingToolTask
.java:205)
        at org.apache.openjpa.lib.ant.AbstractTask.execute
(AbstractTask.java:172
)
        ... 21 more
--- Nested Exception ---
C:\persist1\BUILD\include\jpa_common_build.xml:86:
<openjpa-1.2.0-r422266:683325
 fatal user error> org.apache.openjpa.util.UserException: A JDBC Driver or
DataS
ource class name must be specified in the ConnectionDriverName property.
        at org.apache.openjpa.lib.ant.AbstractTask.execute
(AbstractTask.java:176
)
        at org.apache.tools.ant.UnknownElement.execute
(UnknownElement.java:275)
        at org.apache.tools.ant.Task.perform(Task.java:364)
        at org.apache.tools.ant.Target.execute(Target.java:341)
        at org.apache.tools.ant.Target.performTasks(Target.java:369)
        at org.apache.tools.ant.Project.executeSortedTargets
(Project.java:1216)
        at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets
(Single
CheckExecutor.java:37)
        at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
        at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:382)
        at org.apache.tools.ant.taskdefs.CallTarget.execute
(CallTarget.java:107)

        at org.apache.tools.ant.UnknownElement.execute
(UnknownElement.java:275))
        at org.apache.tools.ant.Task.perform(Task.java:364)
        at org.apache.tools.ant.Target.execute(Target.java:341)
        at org.apache.tools.ant.Target.performTasks(Target.java:369)
        at org.apache.tools.ant.Project.executeSortedTargets
(Project.java:1216))
        at org.apache.tools.ant.Project.executeTarget(Project.java:1185)
        at org.apache.tools.ant.helper.DefaultExecutor.executeTargets
(DefaultExe
cutor.java:40).
        at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
        at org.apache.tools.ant.Main.runBuild(Main.java:668)
        at org.apache.tools.ant.Main.startAnt(Main.java:187)
        at org.apache.tools.ant.launch.Launcher.run(Launcher.java:246)
        at org.apache.tools.ant.launch.Launcher.main(Launcher.java:67)
Caused by: <openjpa-1.2.0-r422266:683325 fatal user error>
org.apache.openjpa.ut
il.UserException: A JDBC Driver or DataSource class name must be specified
in th
e ConnectionDriverName property.
        at org.apache.openjpa.jdbc.schema.DataSourceFactory.newDataSource
(DataSo
urceFactory.java:74)
        at
org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.createConnectionFa
ctory(JDBCConfigurationImpl.java:784)
        at
org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.getConnectionFacto
ry(JDBCConfigurationImpl.java:691).
        at org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.getDataSource
(JDBC
ConfigurationImpl.java:790)
        at
org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl.getDataSource2(JDB
CConfigurationImpl.java:797)
        at org.apache.openjpa.jdbc.schema.SchemaTool.<init>
(SchemaTool.java:127)

        at org.apache.openjpa.jdbc.meta.MappingTool.newSchemaTool
(MappingTool.ja
va:310)
        at org.apache.openjpa.jdbc.meta.MappingTool.record
(MappingTool.java:490)

        at org.apache.openjpa.jdbc.meta.MappingTool.run
(MappingTool.java:1075)
        at org.apache.openjpa.jdbc.ant.MappingToolTask.executeOn
(MappingToolTask
.java:205)
        at org.apache.openjpa.lib.ant.AbstractTask.execute
(AbstractTask.java:172
)
        ... 21 more


Heather Sterling
Systems Management Development
Phone:  919-254-7163 T/L: 444-7163
Cell: 919-423-3143
Email: hst...@us.ibm.com

Reply via email to