AppData can now output valid xml files with correct dtd (that's why Database needs to
return valid defaultIdMethod).

TorqueJDBCTransformTask takes into account the
DatabaseMetaData.storesUpperCaseIdentifiers() property in order to
correct(i.e. uppercase) the schema name (when needed)



Index: ./src/java/org/apache/torque/task/TorqueJDBCTransformTask.java
===================================================================
RCS file: 
/home/cvspublic/jakarta-turbine-torque/src/java/org/apache/torque/task/TorqueJDBCTransformTask.java,v
retrieving revision 1.14
diff -u -r1.14 TorqueJDBCTransformTask.java
--- ./src/java/org/apache/torque/task/TorqueJDBCTransformTask.java      27 Nov 2002 
11:30:59 -0000      1.14
+++ ./src/java/org/apache/torque/task/TorqueJDBCTransformTask.java      3 Dec 2002 
+18:31:20 -0000
@@ -85,6 +85,7 @@
  *
  * @author <a href="mailto:[EMAIL PROTECTED]";>Jason van Zyl</a>
  * @author <a href="mailto:[EMAIL PROTECTED]";>Fedor Karpelevitch</a>
+ * @author <a href="mailto:[EMAIL PROTECTED]";>Andreas Andreou</a>
  * @version $Id: TorqueJDBCTransformTask.java,v 1.14 2002/11/27 11:30:59 mpoeschl Exp 
$
  */
 public class TorqueJDBCTransformTask extends Task
@@ -226,6 +227,14 @@
 
         // Get the database Metadata.
         DatabaseMetaData dbMetaData = con.getMetaData();
+
+        // fix for schema name, found on Oracle, DB2 and SapDB
+        if ( dbMetaData.storesUpperCaseIdentifiers() &&
+             !dbMetaData.storesLowerCaseIdentifiers() )
+        {
+            dbSchema=dbSchema.toUpperCase();
+            log("Changed schema to : "+dbSchema);
+        }
 
         // The database map.
         List tableList = getTableNames(dbMetaData);
Index: ./src/java/org/apache/torque/engine/database/model/AppData.java
===================================================================
RCS file: 
/home/cvspublic/jakarta-turbine-torque/src/java/org/apache/torque/engine/database/model/AppData.java,v
retrieving revision 1.15
diff -u -r1.15 AppData.java
--- ./src/java/org/apache/torque/engine/database/model/AppData.java     29 Nov 2002 
13:50:29 -0000      1.15
+++ ./src/java/org/apache/torque/engine/database/model/AppData.java     3 Dec 2002 
+18:32:44 -0000
@@ -75,6 +75,7 @@
  * @author <a href="mailto:[EMAIL PROTECTED]>Leon Messerschmidt</a>
  * @author <a href="mailto:[EMAIL PROTECTED]>John McNally</a>
  * @author <a href="mailto:[EMAIL PROTECTED]>Daniel Rall</a>
+ * @author <a href="mailto:[EMAIL PROTECTED]";>Andreas Andreou</a>
  * @version $Id: AppData.java,v 1.15 2002/11/29 13:50:29 mpoeschl Exp $
  */
 public class AppData
@@ -326,12 +327,14 @@
     {
         StringBuffer result = new StringBuffer();
 
-        result.append ("<app-data>\n");
+        result.append ("<?xml version=\"1.0\"?>\n");
+        result.append ("<!DOCTYPE database SYSTEM \""+
+                       "http://jakarta.apache.org/turbine/dtd/database.dtd\";>\n");
+        result.append("<!-- Autogenerated by SQLToXMLSchema! -->\n");
         for (Iterator i = dbList.iterator(); i.hasNext();)
         {
             result.append (i.next());
         }
-        result.append ("</app-data>");
         return result.toString();
     }
 }
Index: ./src/java/org/apache/torque/engine/database/model/Database.java
===================================================================
RCS file: 
/home/cvspublic/jakarta-turbine-torque/src/java/org/apache/torque/engine/database/model/Database.java,v
retrieving revision 1.17
diff -u -r1.17 Database.java
--- ./src/java/org/apache/torque/engine/database/model/Database.java    29 Nov 2002 
13:50:29 -0000      1.17
+++ ./src/java/org/apache/torque/engine/database/model/Database.java    3 Dec 2002 
+18:45:58 -0000
@@ -204,6 +204,10 @@
      */
     public String getDefaultIdMethod()
     {
+        if (defaultIdMethod==null)
+        {
+            return "none";
+        }
         return defaultIdMethod;
     }
 
--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>


Reply via email to