You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openjpa.apache.org by pc...@apache.org on 2006/07/19 23:35:07 UTC
svn commit: r423615 [37/44] - in /incubator/openjpa/trunk: ./
openjpa-jdbc-5/ openjpa-jdbc-5/src/ openjpa-jdbc-5/src/main/
openjpa-jdbc-5/src/main/java/ openjpa-jdbc-5/src/main/java/org/
openjpa-jdbc-5/src/main/java/org/apache/ openjpa-jdbc-5/src/main/...
Propchange: incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/SelectImpl.java
------------------------------------------------------------------------------
svn:executable = *
Added: incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/Sized.java
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/Sized.java?rev=423615&view=auto
==============================================================================
--- incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/Sized.java (added)
+++ incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/Sized.java Wed Jul 19 14:34:44 2006
@@ -0,0 +1,33 @@
+/*
+ * Copyright 2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.openjpa.jdbc.sql;
+
+/**
+ * A sized value. Used to represent both a value and its size for calls
+ * to {@link Row#setObject}.
+ *
+ * @author Abe White
+ */
+public class Sized {
+
+ public final Object value;
+ public final int size;
+
+ public Sized(Object value, int size) {
+ this.value = value;
+ this.size = size;
+ }
+}
Propchange: incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/Sized.java
------------------------------------------------------------------------------
svn:executable = *
Added: incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/SybaseDictionary.java
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/SybaseDictionary.java?rev=423615&view=auto
==============================================================================
--- incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/SybaseDictionary.java (added)
+++ incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/SybaseDictionary.java Wed Jul 19 14:34:44 2006
@@ -0,0 +1,298 @@
+/*
+ * Copyright 2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.openjpa.jdbc.sql;
+
+import java.math.BigDecimal;
+import java.math.BigInteger;
+import java.sql.Connection;
+import java.sql.PreparedStatement;
+import java.sql.SQLException;
+import java.sql.Types;
+import java.util.Arrays;
+
+import org.apache.openjpa.jdbc.schema.Column;
+import org.apache.openjpa.jdbc.schema.ForeignKey;
+import org.apache.openjpa.jdbc.schema.PrimaryKey;
+import org.apache.openjpa.jdbc.schema.Table;
+import org.apache.openjpa.jdbc.schema.Unique;
+import org.apache.openjpa.lib.jdbc.DelegatingConnection;
+import org.apache.openjpa.lib.util.Localizer;
+import org.apache.openjpa.meta.JavaTypes;
+
+/**
+ * Dictionary for Sybase.
+ * The main point of interest is that by default, every table
+ * that is created will have a unique column named "UNQ_INDEX" of
+ * the "IDENTITY" type. OpenJPA will not ever utilize this column. However,
+ * due to internal Sybase restrictions, this column is required
+ * in order to support pessimistic (datastore) locking, since Sybase
+ * requires that any tables in a "SELECT ... FOR UPDATE" clause have
+ * a unique index that is <strong>not</strong> included in the list
+ * of columns, as described in the
+ * <a href="http://www.sybase.com/detail/1,6904,1023075,00.html"
+ * >Sybase documentation</a>. This behavior can be surpressed by setting the
+ * dictionary property <code>CreateIdentityColumn=false</code>. The
+ * name of the unique column can be changed by setting the property
+ * <code>IdentityColumnName=COLUMN_NAME</code>.
+ * A good Sybase type reference is can be found <a
+ * href="http://www.ispirer.com/doc/sqlways36/sybase/syb_dtypes.html">here</a>.
+ */
+public class SybaseDictionary
+ extends AbstractSQLServerDictionary {
+
+ private static Localizer _loc = Localizer.forPackage
+ (SybaseDictionary.class);
+
+ /**
+ * If true, then whenever the <code>schematool</code> creates a
+ * table, it will append an additional IDENTITY column to the
+ * table's creation SQL. This is so Sybase will be able to
+ * perform <code>SELECT...FOR UPDATE</code> statements.
+ */
+ public boolean createIdentityColumn = true;
+
+ /**
+ * If {@link #createIdentityColumn} is true, then the
+ * <code>identityColumnName</code> will be the name of the
+ * additional unique column that will be created.
+ */
+ public String identityColumnName = "UNQ_INDEX";
+
+ public SybaseDictionary() {
+ platform = "Sybase";
+ schemaCase = SCHEMA_CASE_PRESERVE;
+ forUpdateClause = "FOR UPDATE AT ISOLATION SERIALIZABLE";
+
+ supportsLockingWithDistinctClause = false;
+ supportsNullTableForGetColumns = false;
+ requiresAutoCommitForMetaData = true;
+
+ maxTableNameLength = 30;
+ maxColumnNameLength = 30;
+ maxIndexNameLength = 30;
+ maxConstraintNameLength = 30;
+
+ bigintTypeName = "NUMERIC(38)";
+ bitTypeName = "TINYINT";
+
+ // Sybase doesn't understand "X CROSS JOIN Y", but it does understand
+ // the equivalent "X JOIN Y ON 1 = 1"
+ crossJoinClause = "JOIN";
+ requiresConditionForCrossJoin = true;
+
+ // these tables should not be reflected on
+ systemTableSet.addAll(Arrays.asList(new String[]{
+ "IJDBC_FUNCTION_ESCAPES", "JDBC_FUNCTION_ESCAPES",
+ "SPT_IJDBC_CONVERSION", "SPT_IJDBC_MDA", "SPT_IJDBC_TABLE_TYPES",
+ "SPT_JDBC_CONVERSION", "SPT_JDBC_TABLE_TYPES", "SPT_JTEXT",
+ "SPT_LIMIT_TYPES", "SPT_MDA", "SPT_MONITOR", "SPT_VALUES",
+ "SYBLICENSESLOG",
+ }));
+
+ // reserved words specified at:
+ // http://manuals.sybase.com/onlinebooks/group-as/asg1250e/
+ // refman/@Generic__BookTextView/26603
+ reservedWordSet.addAll(Arrays.asList(new String[]{
+ "ARITH_OVERFLOW", "BREAK", "BROWSE", "BULK", "CHAR_CONVERT",
+ "CHECKPOINT", "CLUSTERED", "COMPUTE", "CONFIRM", "CONTROLROW",
+ "DATABASE", "DBCC", "DETERMINISTIC", "DISK DISTINCT", "DUMMY",
+ "DUMP", "ENDTRAN", "ERRLVL", "ERRORDATA", "ERROREXIT", "EXCLUSIVE",
+ "EXIT", "EXP_ROW_SIZE", "FILLFACTOR", "FUNC", "FUNCTION",
+ "HOLDLOCK", "IDENTITY_GAP", "IDENTITY_INSERT", "IDENTITY_START",
+ "IF", "INDEX", "INOUT", "INSTALL", "INTERSECT", "JAR", "KILL",
+ "LINENO", "LOAD", "LOCK", "MAX_ROWS_PER_PAGE", "MIRROR",
+ "MIRROREXIT", "MODIFY", "NEW", "NOHOLDLOCK", "NONCLUSTERED",
+ "NUMERIC_TRUNCATION", "OFF", "OFFSETS", "ONCE", "ONLINE", "OUT",
+ "OVER", "PARTITION", "PERM", "PERMANENT", "PLAN", "PRINT", "PROC",
+ "PROCESSEXIT", "PROXY_TABLE", "QUIESCE", "RAISERROR", "READ",
+ "READPAST", "READTEXT", "RECONFIGURE", "REFERENCES REMOVE", "REORG",
+ "REPLACE", "REPLICATION", "RESERVEPAGEGAP", "RETURN", "RETURNS",
+ "ROLE", "ROWCOUNT", "RULE", "SAVE", "SETUSER", "SHARED",
+ "SHUTDOWN", "SOME", "STATISTICS", "STRINGSIZE", "STRIPE",
+ "SYB_IDENTITY", "SYB_RESTREE", "SYB_TERMINATE", "TEMP", "TEXTSIZE",
+ "TRAN", "TRIGGER", "TRUNCATE", "TSEQUAL", "UNPARTITION", "USE",
+ "USER_OPTION", "WAITFOR", "WHILE", "WRITETEXT",
+ }));
+ }
+
+ public int getJDBCType(int metaTypeCode, boolean lob) {
+ switch (metaTypeCode) {
+ // the default mapping for BYTE is a TINYINT, but Sybase's TINYINT
+ // type can't handle the complete range for a Java byte
+ case JavaTypes.BYTE:
+ case JavaTypes.BYTE_OBJ:
+ return getPreferredType(Types.SMALLINT);
+ default:
+ return super.getJDBCType(metaTypeCode, lob);
+ }
+ }
+
+ public void setBigInteger(PreparedStatement stmnt, int idx, BigInteger val,
+ Column col)
+ throws SQLException {
+ // setBigDecimal doesn't work here: in one case, a stored value
+ // of 7799438514924349440 turns into 7799438514924349400
+ // setObject gets around this in the Sybase JDBC drivers
+ setObject(stmnt, idx, new BigDecimal(val), Types.BIGINT, col);
+ }
+
+ public String[] getAddForeignKeySQL(ForeignKey fk) {
+ // Sybase has problems with adding foriegn keys via ALTER TABLE command
+ return new String[0];
+ }
+
+ public String[] getCreateTableSQL(Table table) {
+ if (!createIdentityColumn)
+ return super.getCreateTableSQL(table);
+
+ StringBuffer buf = new StringBuffer();
+ buf.append("CREATE TABLE ").append(getFullName(table, false)).
+ append(" (");
+
+ Column[] cols = table.getColumns();
+ boolean hasIdentity = false;
+
+ for (int i = 0; i < cols.length; i++) {
+ if (cols[i].isAutoAssigned())
+ hasIdentity = true;
+
+ buf.append(i == 0 ? "" : ", ");
+ buf.append(getDeclareColumnSQL(cols[i], false));
+ }
+
+ // add an identity column if we do not already have one
+ if (!hasIdentity)
+ buf.append(", ").append(identityColumnName).
+ append(" NUMERIC IDENTITY UNIQUE");
+
+ PrimaryKey pk = table.getPrimaryKey();
+ if (pk != null)
+ buf.append(", ").append(getPrimaryKeyConstraintSQL(pk));
+
+ Unique[] unqs = table.getUniques();
+ String unqStr;
+ for (int i = 0; i < unqs.length; i++) {
+ unqStr = getUniqueConstraintSQL(unqs[i]);
+ if (unqStr != null)
+ buf.append(", ").append(unqStr);
+ }
+
+ buf.append(")");
+ return new String[]{ buf.toString() };
+ }
+
+ protected String getDeclareColumnSQL(Column col, boolean alter) {
+ StringBuffer buf = new StringBuffer();
+ buf.append(col).append(" ");
+ buf.append(getTypeName(col));
+
+ // can't add constraints to a column we're adding after table
+ // creation, cause some data might already be inserted
+ if (!alter) {
+ if (col.getDefaultString() != null && !col.isAutoAssigned())
+ buf.append(" DEFAULT ").append(col.getDefaultString());
+ if (col.isAutoAssigned())
+ buf.append(" IDENTITY");
+ }
+
+ if (col.isNotNull())
+ buf.append(" NOT NULL");
+ else if (!col.isPrimaryKey()) {
+ // sybase forces you to explicitly specify that
+ // you will allow NULL values
+ buf.append(" NULL");
+ }
+
+ return buf.toString();
+ }
+
+ public String[] getDropColumnSQL(Column column) {
+ // Sybase uses "ALTER TABLE DROP <COLUMN_NAME>" rather than the
+ // usual "ALTER TABLE DROP COLUMN <COLUMN_NAME>"
+ return new String[]{ "ALTER TABLE "
+ + getFullName(column.getTable(), false) + " DROP " + column };
+ }
+
+ public void refSchemaComponents(Table table) {
+ // note that we use getColumns() rather than getting the column by name
+ // because under some circumstances this method is called under the
+ // dynamic schema factory, where getting a column by name creates
+ // that column
+ Column[] cols = table.getColumns();
+ for (int i = 0; i < cols.length; i++)
+ if (identityColumnName.equalsIgnoreCase(cols[i].getName()))
+ cols[i].ref();
+ }
+
+ public void endConfiguration() {
+ super.endConfiguration();
+
+ // warn about jdbc compliant flag
+ String url = conf.getConnectionURL();
+ if (url != null && url.length() > 0
+ && url.toLowerCase().indexOf("jdbc:sybase:tds") != -1
+ && url.toLowerCase().indexOf("be_as_jdbc_compliant_as_possible=")
+ == -1) {
+ log.warn(_loc.get("sybase-compliance", url));
+ }
+ }
+
+ public Connection decorate(Connection conn)
+ throws SQLException {
+ return new SybaseConnection(super.decorate(conn));
+ }
+
+ /**
+ * Connection wrapper to cache the {@link Connection#getCatalog} result,
+ * which takes a very long time with the Sybase Connection (and
+ * which we frequently invoke).
+ */
+ private static class SybaseConnection
+ extends DelegatingConnection {
+
+ private String _catalog = null;
+
+ public SybaseConnection(Connection conn) {
+ super(conn);
+ }
+
+ public String getCatalog()
+ throws SQLException {
+ if (_catalog == null)
+ _catalog = super.getCatalog();
+ return _catalog;
+ }
+
+ public void setAutoCommit(boolean autocommit)
+ throws SQLException {
+ // the sybase jdbc driver demands that the Connection always
+ // be rolled back before autocommit status changes. Failure to
+ // do so will yield "SET CHAINED command not allowed within
+ // multi-statement transaction." exceptions
+ try {
+ super.setAutoCommit(autocommit);
+ } catch (SQLException e) {
+ // failed for some reason: try rolling back and then
+ // setting autocommit again.
+ if (autocommit)
+ super.commit();
+ else
+ super.rollback();
+ super.setAutoCommit(autocommit);
+ }
+ }
+ }
+}
Propchange: incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/SybaseDictionary.java
------------------------------------------------------------------------------
svn:executable = *
Added: incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/Union.java
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/Union.java?rev=423615&view=auto
==============================================================================
--- incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/Union.java (added)
+++ incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/Union.java Wed Jul 19 14:34:44 2006
@@ -0,0 +1,76 @@
+/*
+ * Copyright 2006 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.openjpa.jdbc.sql;
+
+/**
+ * SQL UNION.
+ *
+ * @author Abe White
+ */
+public interface Union
+ extends SelectExecutor {
+
+ /**
+ * Return the selects that make up this union.
+ */
+ public Select[] getSelects();
+
+ /**
+ * Get the union-level ordering, if any.
+ */
+ public String getOrdering();
+
+ /**
+ * Whether this union will return at most a single result. Setting this
+ * flag makes it more efficient to execute logical unions that are actually
+ * made up from multiple selects executed in batch.
+ */
+ public boolean isSingleResult();
+
+ /**
+ * Whether this union will return at most a single result. Setting this
+ * flag makes it more efficient to execute logical unions that are actually
+ * made up from multiple selects executed in batch.
+ */
+ public void setSingleResult(boolean single);
+
+ /**
+ * Whether this is a true UNION, rather than a logical combination of
+ * independent selects.
+ */
+ public boolean isUnion();
+
+ /**
+ * Force the use of a series of standard selects rather than a true UNION.
+ */
+ public void abortUnion();
+
+ /**
+ * Select data using the given selector.
+ */
+ public void select(Selector selector);
+
+ /**
+ * A callback used to create the selects in a SQL union.
+ */
+ public static interface Selector {
+
+ /**
+ * Populate the <code>i</code>th select in the union.
+ */
+ public void select(Select sel, int i);
+ }
+}
Propchange: incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/Union.java
------------------------------------------------------------------------------
svn:executable = *
Added: incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/package.html
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/package.html?rev=423615&view=auto
==============================================================================
--- incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/package.html (added)
+++ incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/package.html Wed Jul 19 14:34:44 2006
@@ -0,0 +1,9 @@
+<html>
+<body>
+<p><strong>OpenJPA-JDBC SQL Abstraction</strong></p>
+
+<p>
+ Utilities for generating SQL.
+</p>
+</body>
+</html>
Propchange: incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/package.html
------------------------------------------------------------------------------
svn:executable = *
Added: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/META-INF/services/org.apache.openjpa.conf.ProductDerivation
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/META-INF/services/org.apache.openjpa.conf.ProductDerivation?rev=423615&view=auto
==============================================================================
--- incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/META-INF/services/org.apache.openjpa.conf.ProductDerivation (added)
+++ incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/META-INF/services/org.apache.openjpa.conf.ProductDerivation Wed Jul 19 14:34:44 2006
@@ -0,0 +1 @@
+org.apache.openjpa.jdbc.conf.JDBCProductDerivation
Propchange: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/META-INF/services/org.apache.openjpa.conf.ProductDerivation
------------------------------------------------------------------------------
svn:executable = *
Added: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/ant/localizer.properties
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/ant/localizer.properties?rev=423615&view=auto
==============================================================================
--- incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/ant/localizer.properties (added)
+++ incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/ant/localizer.properties Wed Jul 19 14:34:44 2006
@@ -0,0 +1,2 @@
+bad-conf: The options supplied to the {0} are not valid. Please check your \
+ ant build file.
Propchange: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/ant/localizer.properties
------------------------------------------------------------------------------
svn:executable = *
Added: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/conf/localizer.properties
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/conf/localizer.properties?rev=423615&view=auto
==============================================================================
--- incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/conf/localizer.properties (added)
+++ incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/conf/localizer.properties Wed Jul 19 14:34:44 2006
@@ -0,0 +1,226 @@
+Schema-name: Schema
+Schema-desc: The default schema for unqualified table names.
+Schema-type: Connecting
+Schema-cat: Database.Schemas
+Schema-displayorder: 50
+
+Schemas-name: Schemas
+Schemas-desc: A comma-separated list of the schemas and/or tables you are \
+ using for persistent class tables.
+Schemas-type: Connecting
+Schemas-cat: Database.Schemas
+Schemas-displayorder: 50
+
+TransactionIsolation-name: JDBC transaction isolation level
+TransactionIsolation-desc: The name of the JDBC transaction isolation \
+ level to use. "default" indicates to use \
+ the JDBC driver''s default level. \
+ Other standard values are "none", "read-committed", "read-uncommitted", \
+ "repeatable-read", and "serializable".
+TransactionIsolation-type: Connecting
+TransactionIsolation-cat: Database.Transactions
+TransactionIsolation-displayorder: 50
+TransactionIsolation-expert: true
+
+ResultSetType-name: JDBC result set type
+ResultSetType-desc: The name of the JDBC result set type to use. Standard \
+ values are "forward-only", "scroll-sensitive", and "scroll-insensitive".
+ResultSetType-type: Optimization
+ResultSetType-cat: JDBC
+ResultSetType-displayorder: 50
+ResultSetType-expert: true
+
+FetchDirection-name: JDBC fetch direction
+FetchDirection-desc: The name of the JDBC fetch direction to use. Standard \
+ values are "forward", "reverse", and "unknown".
+FetchDirection-type: Optimization
+FetchDirection-cat: JDBC
+FetchDirection-displayorder: 50
+FetchDirection-expert: true
+
+EagerFetchMode-name: Eager fetch mode
+EagerFetchMode-desc: Specifies the default eager fetch mode to use. Either \
+ "none" to never eagerly-load relations, "join" for selecting 1-1 relations \
+ along with the target object using inner or outer joins, or "parallel" for \
+ selecting 1-1 relations via joins, and collections (including to-many \
+ relations) along with the target object using separate select statements \
+ executed in parallel.
+EagerFetchMode-type: Optimization
+EagerFetchMode-cat: Fetching
+EagerFetchMode-displayorder: 50
+EagerFetchMode-expert: true
+
+SubclassFetchMode-name: Subclass fetch mode
+SubclassFetchMode-desc: Specifies the default subclass fetch mode to use. \
+ Eitehr "none" to always select data in base class tables only, "join" to \
+ outer-join to tables for all subclasses, or "parallel" to execute a \
+ separate select in parallel for each possible subclass. Parallel mode is \
+ only applicable to Query execution; in other situations it mirrors \
+ join mode.
+SubclassFetchMode-type: Optimization
+SubclassFetchMode-cat: Fetching
+SubclassFetchMode-displayorder: 50
+SubclassFetchMode-expert: true
+
+LRSSize-name: Large result set size mode
+LRSSize-desc: The mode to use for calculating the size of large result sets. \
+ Legal values are "unknown", "last", and "query".
+LRSSize-type: Optimization
+LRSSize-cat: JDBC
+LRSSize-displayorder: 50
+LRSSize-expert: true
+
+SynchronizeMappings-name: Automatically synchronize schema
+SynchronizeMappings-desc: Controls whether OpenJPA will attempt to run the \
+ mapping tool on all persistent classes to synchronize their mappings \
+ and schema at runtime.
+SynchronizeMappings-type: General
+SynchronizeMappings-cat: Mappings
+SynchronizeMappings-displayorder: 50
+SynchronizeMappings-expert: true
+
+JDBCListeners-name: JDBC event listeners
+JDBCListeners-desc: A comma-separated list of \
+ org.apache.openjpa.lib.jdbc.JDBCListener implementations to install on \
+ all connection pools.
+JDBCListeners-type: Connecting
+JDBCListeners-cat: JDBC.Advanced
+JDBCListeners-displayorder: 50
+JDBCListeners-expert: true
+
+ConnectionDecorators-name: Connection decorators
+ConnectionDecorators-desc: A comma-separated list of \
+ org.apache.openjpa.lib.jdbc.ConnectionDecorator implementations to install \
+ on all connection pools.
+ConnectionDecorators-type: Connecting
+ConnectionDecorators-cat: JDBC.Advanced
+ConnectionDecorators-displayorder: 50
+ConnectionDecorators-expert: true
+ConnectionDecorators-interface: org.apache.openjpa.lib.jdbc.ConnectionDecorator
+
+DBDictionary-name: Database dictionary
+DBDictionary-desc: The org.apache.openjpa.jdbc.sql.DBDictionary to use for database \
+ interaction. This is auto-detected based on the ConnectionURL setting, \
+ so you need only set this to override the default with your own custom \
+ dictionary or if you are using an unrecognized driver.
+DBDictionary-type: Connecting
+DBDictionary-cat: Database
+DBDictionary-displayorder: 50
+DBDictionary-interface: org.apache.openjpa.jdbc.sql.DBDictionary
+
+UpdateManager-name: Update manager
+UpdateManager-desc: The org.apache.openjpa.jdbc.kernel.UpdateManager to use to flush \
+ persistent object modifications to the database.
+UpdateManager-type: General
+UpdateManager-cat: JDBC.Interaction
+UpdateManager-displayorder: 50
+UpdateManager-expert: true
+UpdateManager-interface: org.apache.openjpa.jdbc.kernel.UpdateManager
+
+DriverDataSource-name: Update manager
+DriverDataSource-desc: The org.apache.openjpa.jdbc.schema.DriverDataSource to use to wrap \
+ a JDBC driver in a DataSource.
+DriverDataSource-type: General
+DriverDataSource-cat: JDBC.Interaction
+DriverDataSource-displayorder: 50
+DriverDataSource-expert: true
+DriverDataSource-interface: org.apache.openjpa.jdbc.schema.DriverDataSource
+
+SchemaFactory-name: Schema factory
+SchemaFactory-desc: The org.apache.openjpa.jdbc.schema.SchemaFactory that \
+ will provide information about the existing tables and other database \
+ structures at runtime.
+SchemaFactory-type: General
+SchemaFactory-cat: JDBC.Interaction
+SchemaFactory-displayorder: 50
+SchemaFactory-expert: true
+SchemaFactory-interface: org.apache.openjpa.jdbc.schema.SchemaFactory
+
+SQLFactory-name: SQL factory
+SQLFactory-desc: The org.apache.openjpa.jdbc.sql.SQLFactory used to create SQL constructs.
+SQLFactory-type: General
+SQLFactory-cat: JDBC.Interaction
+SQLFactory-displayorder: 50
+SQLFactory-expert: true
+SQLFactory-interface: org.apache.openjpa.jdbc.sql.SQLFactory
+
+MappingFactory-name: Mapping factory
+MappingFactory-desc: The org.apache.openjpa.meta.MetaDataFactory that will provide the \
+ object-relational mapping information needed to map each persistent class \
+ to the database, if it isn't provided by current metadata MetaDataFactory.
+MappingFactory-type: General
+MappingFactory-cat: Mappings
+MappingFactory-displayorder: 50
+MappingFactory-expert: true
+MappingFactory-interface: org.apache.openjpa.meta.MetaDataFactory
+
+MappingDefaults-name: Mapping defaults
+MappingDefaults-desc: The org.apache.openjpa.jdbc.meta.MappingDefaults that determines \
+ default table names, column names, and other information.
+MappingDefaults-type: General
+MappingDefaults-cat: Mappings
+MappingDefaults-displayorder: 50
+MappingDefaults-interface: org.apache.openjpa.jdbc.meta.MappingDefaults
+
+ConnectionDriverName-values: org.hsqldb.jdbcDriver,org.hsql.jdbcDriver,\
+ COM.cloudscape.core.JDBCDriver,in.co.daffodil.db.jdbc.DaffodilDBDriver,\
+ com.ddtek.jdbc.db2.DB2Driver,interbase.interclient.Driver,\
+ com.mysql.jdbc.Driver,com.ddtek.jdbc.oracle.OracleDriver,\
+ org.postgresql.Driver,com.pointbase.jdbc.jdbcUniversalDriver,\
+ org.sourceforge.jxdbcon.JXDBConDriver,\
+ com.ddtek.jdbc.sqlserver.SQLServerDriver,com.jnetdirect.jsql.JSQLDriver,\
+ com.microsoft.jdbc.sqlserver.SQLServerDriver,\
+ weblogic.jdbc.mssqlserver4.Driver,com.ddtek.jdbc.sybase.SybaseDriver,\
+ oracle.jdbc.pool.OracleDataSource,org.axiondb.jdbc.AxionDriver,\
+ COM.ibm.db2.jdbc.app.DB2Driver,com.ibm.as400.access.AS400JDBCDriver,\
+ COM.FirstSQL.Dbcp.DbcpDriver,COM.ibm.db2.jdbc.net.DB2Driver,\
+ org.enhydra.instantdb.jdbc.idbDriver,com.informix.jdbc.IfxDriver,\
+ com.microsoft.jdbc.sqlserver.SQLServerDriver,\
+ com.imaginary.sql.msql.MsqlDriver,sun.jdbc.odbc.JdbcOdbcDriver,\
+ oracle.jdbc.driver.OracleDriver,intersolv.jdbc.sequelink.SequeLinkDriver,\
+ openlink.jdbc2.Driver,com.pointbase.jdbc.jdbcUniversalDriver,\
+ postgres95.PGDriver,postgresql.Driver,solid.jdbc.SolidDriver,\
+ centura.java.sqlbase.SqlbaseDriver,interbase.interclient.Driver,\
+ com.mckoi.JDBCDriver,com.inet.tds.TdsDriver,\
+ com.microsoft.jdbc.sqlserver.SQLServerDriver,com.thinweb.tds.Driver,\
+ weblogic.jdbc.mssqlserver4.Driver,com.mysql.jdbc.DatabaseMetaData,\
+ org.gjt.mm.mysql.Driver,com.sap.dbtech.jdbc.DriverSapDB,\
+ com.sybase.jdbc2.jdbc.SybDriver,com.sybase.jdbc.SybDriver,\
+ com.internetcds.jdbc.tds.Driver,weblogic.jdbc.pool.Driver
+ConnectionURL-values: jdbc:JSQLConnect://<hostname>/database=<database>,\
+ jdbc:cloudscape:<database>;create=true,\
+ jdbc:twtds:sqlserver://<hostname>/<database>,\
+ jdbc:daffodilDB_embedded:<database>;create=true,\
+ jdbc:datadirect:db2://<hostname>:50000;databaseName=<database>,\
+ jdbc:inetdae:<hostname>:1433,\
+ jdbc:datadirect:oracle://<hostname>:1521;SID=<database>;\
+ MaxPooledStatements=0,\
+ jdbc:datadirect:sqlserver://<hostname>:1433;SelectMethod=cursor;\
+ DatabaseName=<database>,jdbc:datadirect:sybase://<hostname>:5000,\
+ jdbc:db2://<hostname>/<database>,jdbc:hsqldb:<database>,\
+ jdbc:idb:<database>.properties,\
+ jdbc:informix-sqli://<hostname>:1526/<database>:INFORMIXSERVER=<database>,\
+ jdbc:interbase://<hostname>//<database>.gdb,\
+ jdbc:microsoft:sqlserver://<hostname>:1433;DatabaseName=<database>;\
+ SelectMethod=cursor,jdbc:mysql://<hostname>/<database>?autoReconnect=true,\
+ jdbc:oracle:thin:@<hostname>:1521:<database>,\
+ jdbc:postgresql://<hostname>:5432/<database>,\
+ jdbc:postgresql:net//<hostname>/<database>,\
+ jdbc:sybase:Tds:<hostname>:4100/<database>?ServiceName=<database>,\
+ jdbc:weblogic:mssqlserver4:<database>@<hostname>:1433,\
+ jdbc:odbc:<database>,jdbc:sequelink://<hostname>:4003/[Oracle],\
+ jdbc:sequelink://<hostname>:4004/[Informix];Database=<database>,\
+ jdbc:sequelink://<hostname>:4005/[Sybase];Database=<database>,\
+ jdbc:sequelink://<hostname>:4006/[SQLServer];Database=<database>,\
+ jdbc:sequelink://<hostname>:4011/[ODBC MS Access];Database=<database>,\
+ jdbc:openlink://<hostname>/DSN=SQLServerDB/UID=sa/PWD=,\
+ jdbc:solid://<hostname>:<port>/<UID>/<PWD>,\
+ jdbc:dbaw://<hostname>:8889/<database>
+
+connecting-for-dictionary: OpenJPA will now connect to the database to attempt to \
+ determine what type of database dictionary to use. To prevent this \
+ connection in the future, set your org.apache.openjpa.jdbc.DBDictionary configuration \
+ property to the appropriate value for your database (see the documentation \
+ for available values).
+map-factory: Using mapping factory "{0}".
+meta-factory: Using metadata factory "{0}".
Propchange: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/conf/localizer.properties
------------------------------------------------------------------------------
svn:executable = *
Added: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/kernel/exps/localizer.properties
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/kernel/exps/localizer.properties?rev=423615&view=auto
==============================================================================
--- incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/kernel/exps/localizer.properties (added)
+++ incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/kernel/exps/localizer.properties Wed Jul 19 14:34:44 2006
@@ -0,0 +1,11 @@
+bad-getobjectid: Attempt to get the object id of a non-persistent or \
+ embedded object field "{0}".
+non-pers-field: Field "{0}" is not persistent, and thus cannot be queried.
+no-in-mem: The filter listener "{0}" does not support in-memory operation; it \
+ can only be used with queries against the database.
+const-only: The filter listener "{0}" requires a constant argument.
+path-only: The target for filter listener "{0}" must be "this" or some \
+ field traversal to a related objects, such as "company.address".
+no-col: The column "{0}" given to filter "{1}" doesn''t exist in the table \
+ of the specified target.
+cant-convert: Attempt to compare incompatible types "{0}" and "{1}".
Propchange: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/kernel/exps/localizer.properties
------------------------------------------------------------------------------
svn:executable = *
Added: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/kernel/localizer.properties
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/kernel/localizer.properties?rev=423615&view=auto
==============================================================================
--- incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/kernel/localizer.properties (added)
+++ incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/kernel/localizer.properties Wed Jul 19 14:34:44 2006
@@ -0,0 +1,81 @@
+error-rollback: An error occurred attempting to rollback to the savepoint "{0}"
+error-save: An error occurred attempting to set the savepoint "{0}". This \
+ driver may not support JDBC 3 savepoints.
+mult-mapping-aggregate: Cannot perform an aggregate query on a hierarchy with \
+ unjoined subclasses: {0}
+sqlquery-missing-params: SQL query "{0}" declares a parameter index "{1}" for \
+ which no value was given. The given parameters were: {2}
+no-sql: You have not specified a SQL filter to execute in your SQL query.
+del-ins-cycle: An unresolvable constraint cycle was detected. This typically \
+ means that you are persisting a new object with the same primary key value \
+ as an object you are deleting in the same transaction, and at the same \
+ time you have circular foreign key dependencies in the transaction. The \
+ combination of these two factors can sometimes lead to a situation in \
+ which OpenJPA cannot meet all the database constraints.
+ref-cycle: An unresolvable constraint cycle was detected. This typically \
+ means that a mapping in a table other than the class'' primary table has \
+ a foreign key that is part of a circular foreign key dependency. OpenJPA \
+ sometimes cannot meet circular dependencies when some of the involved \
+ mappings are in secondary tables.
+update-failed-no-failed-obj: Database operation failed. Update count for SQL \
+ statement was {0}. Statement: {1}
+virtual-mapping: Cannot instantiate virtual mapping "{0}".
+press-key-end: Server running. Press enter to stop.
+no-server-conf: There is no persistence server configured.
+server-usage: Usage: java org.apache.openjpa.jdbc.kernel.StartPersistenceServer\n\
+ \t[-properties/-p <properties file or resource>]\n\
+ \t[-<property name> <property value>]*
+cant-lock-on-load: The database is unable to lock this query. Each object \
+ matching the query will be locked individually after it is loaded; \
+ however, it is technically possible that another transaction could modify \
+ the data before the lock is obtained. See the documentation on Object \
+ Locking for details.\n"{0}"
+start-trans-for-lock: Though you are using optimistic transactions, OpenJPA is \
+ now beginning a datastore transaction because you have requested a lock \
+ on some data.
+millis-timeout: JDBC lock manager does not support millisecond-granularity \
+ timeouts. Use timeouts that are multiples of 1000 for even second values.
+millis-query-timeout: JDBC lock manager does not support \
+ millisecond-granularity timeouts. Use timeouts that are multiples \
+ of 1000 for even second values.
+batch-not-supported: The update count for the statement was an invalid \
+ value ({0}). This indicates that your database or JDBC driver does not \
+ have complete support for executing batch statements. Batch \
+ functionality should be disabled by including "BatchLimit=0" in \
+ your org.apache.openjpa.jdbc.DBDictionary configuration property. Statement: {1}
+bad-synch-mappings: Invalid SynchronizeMappings operation ("{0}") specified. \
+ Valid operations are: {1}
+make-native-seq: Creating sequence.
+drop-native-seq: Dropping sequence.
+make-seq-table: Creating sequence table.
+drop-seq-table: Dropping sequence table.
+bad-seq-up: Attempt to update the sequence table "{0}" failed. The sequence \
+ table is typically created when you run the mappingtool''s refresh action \
+ on any datastore identity class. If you have not run the mappingtool but \
+ want to create the sequence table, run:\n\
+ java org.apache.openjpa.jdbc.kernel.TableJDBCSeq -action add
+bad-seq-type: This sequence of type "{0}" cannot generate values for \
+ persistent type "{1}".
+no-seq-sql: Error instantiating named sequence "{0}": Your database dictionary \
+ does not support native sequences. To tell the dictionary how to select \
+ sequence values, use:\n\
+ org.apache.openjpa.jdbc.DBDictionary: NextSequenceQuery="SELECT NEXT VALUE FOR \{0\}"\n\
+ Where the above string is replaced with the proper SQL for your database.
+invalid-seq-sql: No rows returned for sql "{0}". Check your configuration.
+insert-seq: Inserting row for this mapping into sequence table.
+no-seq-row: There is no row for mapping "{0}" in sequence table "{1}", and \
+ the attempt to insert a row has apparently failed.
+update-seq: Updating sequence values.
+get-seq: Getting current sequence values.
+seq-usage: Usage: java org.apache.openjpa.jdbc.kernel.TableJDBCSeq\n\
+ \t[-properties/-p <properties file or resource>]\n\
+ \t[-<property name> <property value>]*\n\
+ \t-action/-a <add | drop | get | set> [value]
+clstable-seq-usage: Usage: java org.apache.openjpa.jdbc.kernel.ClassTableJDBCSeq\n\
+ \t[-properties/-p <properties file or resource>]\n\
+ \t[-<property name> <property value>]*\n\
+ \t-action/-a <add | drop | get | set>\n\
+ \t[class name | .java file | .class file | .jdo file] [value]
+native-seq-usage: Usage: java org.apache.openjpa.jdbc.kernel.NativeJDBCSeq\n\
+ \t[-properties/-p <properties file or resource>]\n\
+ \t[-<property name> <property value>]*
Propchange: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/kernel/localizer.properties
------------------------------------------------------------------------------
svn:executable = *
Added: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/meta/java-keywords.rsrc
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/meta/java-keywords.rsrc?rev=423615&view=auto
==============================================================================
--- incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/meta/java-keywords.rsrc (added)
+++ incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/meta/java-keywords.rsrc Wed Jul 19 14:34:44 2006
@@ -0,0 +1 @@
+abstract,abs,assert,assertion,boolean,bool,break,brk,byte,bits,case,cse,catch,ctch,char,ch,class,type,const,cnst,continue,cont,default,def,do,doIt,double,dbl,else,els,extends,extend,final,fnl,finally,fnly,float,flt,for,forWhat,goto,go2,if,ifTrue,implements,impl,import,imports,instanceof,instance,int,integer,interface,intrface,long,longint,native,natively,new,isNew,null,isNull,package,pkg,private,priv,protected,protect,public,pub,return,ret,short,shrt,static,stat,super,sup,switch,change,synchronized,synch,this,thisOne,throw,thrw,throws,thrws,transient,trans,try,tryIt,void,isVoid,volatile,vol,while,whil
Propchange: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/meta/java-keywords.rsrc
------------------------------------------------------------------------------
svn:executable = *
Added: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/meta/localizer.properties
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/meta/localizer.properties?rev=423615&view=auto
==============================================================================
--- incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/meta/localizer.properties (added)
+++ incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/meta/localizer.properties Wed Jul 19 14:34:44 2006
@@ -0,0 +1,400 @@
+resolve-mapping: Resolving mapping for "{0}".
+init-mapping: Initializing mapping for "{0}".
+strategy: "{0}" has mapping strategy "{1}".
+field-strategy: \t"{0}" has mapping strategy "{1}".
+no-equiv-col: Cannot use "{0}" as the mapped-by value for a field in "{1}". \
+ There is no column "{2}" in this subclass'' table.
+no-equiv-field: Cannot use "{0}" as the mapped-by value for a field in "{1}". \
+ There is no target-field "{2}" for column "{3}" in this subclass.
+bad-equiv-field: Cannot use "{0}" as the mapped-by value for a field in "{1}". \
+ The target-field "{2}" for column "{3}" is mapped to multiple columns.
+no-mapping: No mapping information found for type "{0}".
+bad-mapped-by: Collection field "{0}" declares that it is mapped by "{1}", but \
+ this is not a valid inverse relation.
+no-targetfield: Some of the columns on "{0}" are missing target field \
+ declarations.
+bad-targetfield: "{0}" has a column with target field "{1}", but that is not a \
+ primary key field of the related class.
+bad-col-lg-counts: Cannot synchronize mapping information: the number of \
+ version columns is not equal to the number of lock groups.
+no-joinable: You cannot join on column "{0}". It is not managed by a mapping \
+ that supports joins.
+join-required: Missing table name for field "{0}". This field cannot reside \
+ in the owning class table.
+bad-discrim-value: The declared discriminator value "{1}" for type "{0}" \
+ cannot be parsed as a number, though it starts with a digit.
+unexpected-cols: You have supplied columns for "{0}", but this mapping cannot \
+ have columns in this context.
+unexpected-index: "{0}" is marked as indexed, but OpenJPA does not support \
+ an index on this mapping in this context.
+unexpected-unique: "{0}" is marked as having a unique constraint, but OpenJPA \
+ does not support a constraint on this mapping in this context.
+unexpected-fk: "{0}" is marked as having a foreign key, but OpenJPA does not \
+ support a foreign key on this mapping in this context.
+unexpected-join: "{0}" has columns with targets, but OpenJPA does not support any \
+ joins on this mapping in this context.
+unexpected-strategy: "{0}" has an invalid mapping strategy in this context. \
+ Expected "{1}" but found "{2}".
+no-table: No table was given for persistent type "{0}".
+bad-table: Table "{0}" given for "{1}" does not exist.
+generic-num-cols: For "{0}", expected {1} column(s), but found {2}.
+generic-no-col-name: No column name was given for "{0}".
+generic-bad-col-name: "{0}" declares column "{1}", but this column does not \
+ exist in table "{2}".
+generic-incompat-col: "{0}" declares a column "{1}" whose jdbc-type is not \
+ compatible with the expected type "{2}".
+generic-bad-col: "{0}" declares a column that is not compatible with the \
+ expected type "{1}". Column details:\n{2}
+datastoreid-num-cols: For type "{0}", expected {1} datastore identity \
+ column(s), but found {2}.
+datastoreid-no-col-name: No datastore identity column name was given for "{0}".
+datastoreid-bad-col-name: Type "{0}" declares datastore identity column "{1}", \
+ but this column does not exist in table "{2}".
+datastoreid-incompat-col: Type "{0}" declares a datastore identity column \
+ "{1}" whose jdbc-type is not compatible with the expected type "{2}".
+datastoreid-bad-col: Type "{0}" declares a datastore identity column that is \
+ not compatible with the expected type "{1}". Column details:\n{2}
+nondfg-field-orderable: Cannot order "{0}" on "{1}", because that field is not \
+ in the default fetch group. You can only order on fields that will be \
+ selected when the related object is loaded.
+order-conflict: Field "{0}" declares both a synthetic ordering column and \
+ order-by values. You cannot use both.
+order-no-col-name: No order column name was given for "{0}".
+order-bad-col-name: "{0}" declares order column "{1}", but this column does \
+ not exist in table "{2}".
+order-incompat-col: "{0}" declares an order column "{1}" whose jdbc-type is \
+ not compatible with the expected type "{2}".
+order-bad-col: "{0}" declares an order column column that is not compatible \
+ with the expected type "{1}". Column details:\n{2}
+null-ind-no-col-name: No null-indicator column name was given for "{0}".
+null-ind-bad-col-name: "{0}" declares null-indicator column "{1}", but this \
+ column does not exist in table "{2}".
+null-ind-incompat-col: "{0}" declares a null-indicator column "{1}" whose \
+ jdbc-type is not compatible with the expected type "{2}".
+null-ind-bad-col: "{0}" declares a null-indicator column column that is not \
+ compatible with the expected type "{1}". Column details:\n{2}
+generic-no-index-cols: "{0}" declares an index, but has no columns.
+generic-index-exists: "{0}" marks its columns as explicitly not indexed, but \
+ an index exists.
+generic-index-not-unique: "{0}" marks its columns as having a unique index, \
+ but the existing index on those columns is not unique.
+generic-no-unique-cols: "{0}" declares a unique constraint, but has no columns.
+generic-unique-exists: "{0}" marks its columns as explicitly not unique, but \
+ a unique constraint exists.
+generic-unique-support: "{0}" marks its columns as having a unique constraint, \
+ but your database does not support unique constraints. Include \
+ "SupportsUniqueConstraints=true" in the org.apache.openjpa.jdbc.DBDictionary \
+ configuration property to override this default.
+generic-defer-unique: "{0}" marks its columns as having a deferred unique \
+ constraint, but the existing constraint on these columns is not deferred. \
+ OpenJPA cannot change the deferrability of a constraint.
+generic-create-defer-unique: "{0}" marks its columns as having a deferred \
+ unique constraint, but the database dictionary "{1}" reports that it does \
+ not support deferred constraints. Creating an undeferred constraint.
+generic-no-fk-cols: "{0}" declares a foreign key, but has no columns.
+generic-no-fkcol-name: "{0}" does not supply a name for at least one declared \
+ column.
+generic-bad-fkconst: "{0}" declares invalid constant value target "{1}" for \
+ column with name "{2}".
+generic-bad-fktarget-inverse: "{0}" declares a target for column "{1}" in \
+ table "{3}", but all targets must be in table "{2}".
+generic-bad-fk-inverse: "{0}" declares a column in table "{1}", but all \
+ columns must be in table "{2}".
+generic-bad-fk-self-inverse: "{0}" declares an inverse self-join on table \
+ "{1}", but this mapping does not allow inverse joins. If you did not \
+ intend to make this an inverse join, take the table name out of the \
+ column names for this mapping.
+generic-no-fkcol-name-adapt: "{0}" does not supply a name for at least one \
+ declared column. Since this mapping can involve multiple columns or uses \
+ constant joins, each column must give either its name or a non-constant \
+ target.
+generic-no-fkcol-target-adapt: "{0}" does not supply a target for column \
+ "{1}". Since this mapping can involve multiple columns and the a target \
+ column with the same name doesn''t exist, you must give a target explicitly.
+generic-bad-fktarget: "{0}" defines a target of "{1}" for column "{2}", but \
+ that target does not exist in table "{3}".
+generic-bad-fktargetcls: "{0}" defines target field "{1}" for column \
+ "{2}", but OpenJPA cannot deterimine the owning class for that field.
+generic-bad-fktargetfield: "{0}" defines target field "{1}" for column \
+ "{2}", but that field does not exist in type "{3}".
+generic-fktargetfield-cols: "{0}" defines target field "{1}" for column \
+ "{2}", but that field is either unmapped or has multiple columns.
+generic-mult-fk-tables: "{0}" uses columns from multiple different tables: \
+ "{1}", "{2}"
+generic-fk-exists: "{0}" marks its columns as explicitly not having a foreign \
+ key delete action, but a database foreign key exists on these columns.
+generic-defer-fk: "{0}" marks its columns as having a deferred foreign key, \
+ but the existing constraint on these columns is not deferred. OpenJPA cannot \
+ change the deferrability of a constraint.
+generic-create-defer-fk: "{0}" marks its columns as having a deferred foreign \
+ key, but the database dictionary "{1}" reports that it does not support \
+ deferred constraints. Creating an undeferred constraint.
+generic-unsupported-fk-action: "{0}" uses an unsupported foreign key delete or \
+ update action on its columns. Reverting to a logical foreign key.
+generic-const-join: "{0}" attmpts to join a constant value to another constant \
+ value.
+superclass-no-fk-cols: Type "{0}" is missing information on how to join to \
+ its superclass.
+superclass-no-fkcol-name: Type "{0}" does not supply a name for at least one \
+ declared superclass join column.
+superclass-bad-fkconst: Type "{0}" declares invalid constant value target \
+ "{1}" for the column with name "{2}" in its superclass join.
+superclass-bad-fktarget-inverse: Type "{0}" declares superclass join column \
+ "{1}" with a target in table "{3}", but all targets must be in table "{2}".
+superclass-bad-fk-inverse: Type "{0}" declares a superclass join in table \
+ "{1}", but all columns must be in table "{2}".
+superclass-no-fkcol-name-adapt: Type "{0}" does not supply a name for at \
+ least one declared column in its superclass join. Since this join can \
+ involve multiple columns, each column must give either its name or its \
+ target.
+superclass-no-fkcol-target-adapt: Type "{0}" does not supply a target for \
+ column "{1}" in its superclass join. Since this mapping can involve \
+ multiple columns and the a target column with the same name doesn''t \
+ exist, you must give a target explicitly.
+superclass-bad-fktarget: Type "{0}" defines a target of "{1}" for superclass \
+ join column "{2}", but that target does not exist in table "{3}".
+superclass-bad-fktargetcls: "{0}" defines target field "{1}" for superclass \
+ join column "{2}", but OpenJPA cannot deterimine the owning class for that \
+ field.
+superclass-bad-fktargetfield: Type "{0}" defines target field of "{1}" for \
+ superclass join column "{2}", but that field does not exist in type "{3}".
+superclass-fktargetfield-cols: Type "{0}" defines target field "{1}" for \
+ superclass join column "{2}", but that field is either unmapped or has \
+ multiple columns.
+superclass-mult-fk-tables: The superclass join on type "{0}" uses columns from \
+ multiple different tables: "{1}", "{2}"
+superclass-fk-exists: Type "{0}" marks its superclass join columns as \
+ explicitly not having a foreign key delete action, but a database foreign \
+ key exists on these columns.
+superclass-defer-fk: Type "{0}" marks its superclass join columns as having a \
+ deferred foreign key, but the existing constraint on these columns is not \
+ deferred. OpenJPA cannot change the deferrability of a constraint.
+superclass-create-defer-fk: Type "{0}" marks its superclass join columns as \
+ having a deferred foreign key, but the database dictionary "{1}" reports \
+ that it does not support deferred constraints. Creating an undeferred \
+ constraint.
+superclass-unsupported-fk-action: Type "{0}" uses an unsupported foreign key \
+ delete or update action on its superclass join columns. Reverting to a \
+ logical foreign key.
+superclass-const-join: "{0}" attmpts to join a constant value to another \
+ constant value.
+join-no-index-cols: "{0}" declares a join index, but has no join columns.
+join-index-exists: "{0}" marks its join columns as explicitly not indexed, but \
+ an index exists.
+join-index-not-unique: "{0}" marks its join columns as having a unique index, \
+ but the existing index on those columns is not unique.
+join-no-unique-cols: "{0}" declares a unique join constraint, but has no \
+ join columns.
+join-unique-exists: "{0}" marks its join columns as explicitly not unique, but \
+ a unique constraint exists.
+join-unique-support: "{0}" marks its join columns as having a unique \
+ constraint, but your database does not support unique constraints. \
+ Include "SupportsUniqueConstraints=true" in the org.apache.openjpa.jdbc.DBDictionary \
+ configuration property to override this default.
+join-defer-unique: "{0}" marks its join columns as having a deferred unique \
+ constraint, but the existing constraint on these columns is not deferred. \
+ OpenJPA cannot change the deferrability of a constraint.
+join-create-defer-unique: "{0}" marks its join columns as having a deferred \
+ unique constraint, but the database dictionary "{1}" reports that it does \
+ not support deferred constraints. Creating an undeferred constraint.
+join-no-fk-cols: "{0}" declares a join foreign key, but has no join columns.
+join-no-fkcol-name: "{0}" does not supply a name for at least one declared \
+ join column.
+join-bad-fkconst: "{0}" declares invalid constant value target "{1}" for \
+ join column with name "{2}".
+join-bad-fktarget-inverse: "{0}" declares a target for join column "{1}" in \
+ table "{3}", but all join targets must be in table "{2}".
+join-bad-fk-inverse: "{0}" declares a join column in table "{1}", but all \
+ join columns must be in table "{2}".
+join-bad-fk-self-inverse: "{0}" declares an inverse self-join on table \
+ "{1}", but this mapping does not allow inverse joins. If you did not \
+ intend to make this an inverse join, take the table name out of the \
+ column names for this mapping.
+join-no-fkcol-name-adapt: "{0}" does not supply a name for at least one \
+ declared join column. Since this join can involve multiple columns or \
+ uses constant joins, each column must give either its name or a \
+ non-constant target.
+join-no-fkcol-target-adapt: "{0}" does not supply a target for join column \
+ "{1}". Since this join can involve multiple columns and the a target \
+ column with the same name doesn''t exist, you must give a target explicitly.
+join-bad-fktarget: "{0}" defines a target of "{1}" for join column "{2}", but \
+ that target does not exist in table "{3}".
+join-bad-fktargetcls: "{0}" defines target field "{1}" for join column "{2}", \
+ but OpenJPA cannot deterimine the owning class for that field.
+join-bad-fktargetfield: "{0}" defines target field of "{1}" for join column \
+ "{2}", but that field does not exist in type "{3}".
+join-fktargetfield-cols: "{0}" defines target field "{1}" for join column \
+ "{2}", but that field is either unmapped or has multiple columns.
+join-mult-fk-tables: "{0}" uses join columns from multiple different tables: \
+ "{1}", "{2}"
+join-fk-exists: "{0}" marks its join columns as explicitly not having a \
+ foreign key delete action, but a database foreign key exists on these \
+ columns.
+join-defer-fk: "{0}" marks its join columns as having a deferred foreign key, \
+ but the existing constraint on these columns is not deferred. OpenJPA cannot \
+ change the deferrability of a constraint.
+join-create-defer-fk: "{0}" marks its join columns as having a deferred \
+ foreign key, but the database dictionary "{1}" reports that it does not \
+ support deferred constraints. Creating an undeferred constraint.
+join-unsupported-fk-action: "{0}" uses an unsupported foreign key delete or \
+ update action on its join columns. Reverting to a logical foreign key.
+join-const-join: "{0}" attmpts to join a constant value to another constant \
+ value.
+unmapped: Attempt to map "{0}" failed: the owning entity is not mapped.
+col-wrong-table: When mapping "{0}" to table "{1}", found a column mapped to \
+ illegal table "{2}".
+target-wrong-cls: When mapping "{0}", found join with a target-field in class \
+ "{1}". This class does not match the expected source or target mappings \
+ for the join ("{2}", "{3}").
+no-equiv-mapped-by: "{0}" does not have a valid mapping. It declares that it \
+ is mapped by "{2}", but "{1}", a subclass of its declared type, does not \
+ inherit that relation field.
+cant-inverse: "{0}" is not a valid mapping. Inverse foreign key-based \
+ relations to types with unjoined subclasses are not supported.
+importexport-instantiate: Could not instantiate library to import \
+ or export mapping information.
+tool-usage: Usage: java org.apache.openjpa.jdbc.meta.MappingTool\n\
+ \t[-properties/-p <properties file or resource>]\n\
+ \t[-<property name> <property value>]*\n\
+ \t[-file/-f <stdout | output file or resource>]\n\
+ \t[-schemaFile/-sf <stdout | output file or resource>]\n\
+ \t[-sqlFile/-sql <stdout | output file or resource>]\n\
+ \t[-schemaAction/-sa <add | retain | drop | refresh | build | none>]\n\
+ \t[-schemas/-s <schemas and tables>]\n\
+ \t[-readSchema/-rs <true/t | false/f>]\n\
+ \t[-primaryKeys/-pk <true/t | false/f>]\n\
+ \t[-foreignKeys/-fk <true/t | false/f>]\n\
+ \t[-indexes/-ix <true/t | false/f>]\n\
+ \t[-dropTables/-dt <true/t | false/f>]\n\
+ \t[-openjpaTables/-kt <true/t | false/f>]\n\
+ \t[-dropSequences/-dsq <true/t | false/f>]\n\
+ \t[-sequences/-sq <true/t | false/f>]\n\
+ \t[-ignoreErrors/-i <true/t | false/f>]\n\
+ \t[-action/-a <refresh | add | buildSchema | drop | validate | import \n\
+ | export>]\n\
+ \t<class name | .java file | .class file | .jdo file | .orm file | \
+ .mapping file>*
+tool-running: Mapping tool running on type "{0}" with action "{1}".
+tool-time: The tool is now reading existing schema information; this process \
+ may take some time. Enable the org.apache.openjpa.jdbc.Schema logging category to see \
+ messages about schema data. Also see the -readSchema tool flag.
+tool-record: Recording mapping and schema changes.
+bad-store: Your configured MetaDataFactory or MappingFactory plugin does not \
+ support storing information. You must write the information by hand. If \
+ you are trying to create a schema using default column and table names, \
+ run mappingtool with the "buildSchema" action instead of the \
+ "refresh" or "add" actions.
+bad-drop: Some of the following mappings may not have been dropped: {0}. \
+ Undropped mappings will not affect the system.
+no-drop-meta: The schema for type "{0}" may not be dropped, because its \
+ mapping could not be parsed.
+bad-bk-file: Could not create a backup file for "{0}".
+running-all-classes: No targets were given. Running on all classes listed in \
+ your configuration, or all persistent classes in the classpath if no \
+ classes are configured.
+fatal-change: There has been a fatal change to the definition of "{0}" or its \
+ schema since it was last mapped, or the mapping you defined is invalid:\n\
+ {1}\nOpenJPA will attempt to create a new mapping.
+bad-field-strategy: Field "{0}" declared custom mapping strategy "{1}", but \
+ this strategy cannot be instantiated.
+bad-cls-strategy: Could not instantiate custom class strategy "{1}" \
+ for type "{0}". Make sure this is a valid ClassStrategy implementation.
+bad-discrim-strategy: Could not instantiate custom discriminator strategy \
+ "{1}" for type "{0}". Make sure this is a valid DiscriminatorStrategy \
+ implementation.
+bad-version-strategy: Could not instantiate custom version strategy \
+ "{1}" for type "{0}". Make sure this is a valid VersionStrategy \
+ implementation.
+bad-value-handler: "{0}" declared custom value handler "{1}", but this handler \
+ cannot be instantiated.
+bad-mapped-strategy: The type for "{0}" is mapped to custom strategy "{1}", \
+ but this strategy cannot be instantiated.
+no-field-strategy: OpenJPA cannot map field "{0}" efficiently. It is of an \
+ unsupported type. The field value will be serialized to a BLOB by default.
+max-embed-lob: "{0}" is being mapped with a handler that may not be able to \
+ store values over {1} bytes/chars long.
+incomplete-join: The system has detected an incomplete join on column "{0}". \
+ When you specify a join between tables, you must join to all the columns \
+ of any fields involved.
+bad-remap: Column "{0}" cannot be involved in polymorphic table-per-class \
+ relationships because its corresponding field is mapped differently in \
+ various classes in the hierarchy.
+unmap-table: Table "{0}" could not be reverse mapped. This means that the \
+ table does not have a primary key (primary keys are required to establish \
+ unique identifiers for all persistent objects) and does not match a known \
+ pattern for a table used for cross-reference or value collections.
+unmap-cols: The following columns of table "{0}" could not be reverse \
+ mapped "{1}".
+no-pk-fields: Reverse-mapped type "{0}" is configured to use application \
+ identity, but has no primary key fields.
+class-code: Writing java code for generated type "{0}".
+cant-use-char: Column "{0}" is type CHAR(1), but OpenJPA cannot \
+ reverse map it into a Java char because OpenJPA is currently configured to \
+ store Java chars into numeric database columns. To configure OpenJPA to \
+ store Java chars into CHAR(1) columns, set the following property:\n\
+ org.apache.openjpa.jdbc.DBDictionary: StoreCharsAsNumbers=false
+revtool-running: 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.
+revtool-running-file: The reverse mapping tool will run on schema file "{0}".
+revtool-map: Calculating reverse mappings.
+revtool-write-code: Writing generated class source code.
+revtool-write-appid: Writing generated application identity classes.
+revtool-write-metadata: Writing generated metadata.
+revtool-usage: Usage: java org.apache.openjpa.jdbc.meta.ReverseMappingTool\n\
+ \t[-properties/-p <properties file or resource>]\n\
+ \t[-<property name> <property value>]*\n\
+ \t[-directory/-d <output directory>]\n\
+ \t[-schemas/-s <schema and table list>]\n\
+ \t[-package/-pkg <package name>]\n\
+ \t[-useSchemaName/-sn <true/t | false/f>]\n\
+ \t[-useForeignKeyName/-fkn <true/t | false/f>]\n\
+ \t[-nullableAsObject/-no <true/t | false/f>]\n\
+ \t[-blobAsObject/-bo <true/t | false/f>]\n\
+ \t[-typeMap/-type <types>]\n\
+ \t[-primaryKeyOnJoin/-pkj <true/t | false/f>]\n\
+ \t[-useDatastoreIdentity/-ds <true/t | false/f>]\n\
+ \t[-useBuiltinIdentityClass/-bic <true/t | false/f>]\n\
+ \t[-innerIdentityClasses/-inn <true/t | false/f>]\n\
+ \t[-identityClassSuffix/-is <suffix>]\n\
+ \t[-inverseRelations/-ir <true/t | false/f>]\n\
+ \t[-detachable/-det <true/t | false/f>]\n\
+ \t[-discriminatorStrategy/-ds <strategy>]\n\
+ \t[-versionStrategy/-vs <strategy>]\n\
+ \t[-metadata/-md <package | class>]\n\
+ \t[-customizerClass/-cc <full class name>]\n\
+ \t[-customizerProperties/-cp <properties file or resource>]\n\
+ \t[-customizer/-c.<property name> <property value>]*\n\
+ \t[-codeFormat/-cf.<property name> <property value>]*\n\
+ \t[.schema file]*
+custom-class: Customized name found for class "{0}": will rename as "{1}".
+custom-no-class: No customized name found for class "{0}" of table "{1}".
+custom-rm-class: Removing class "{0}" of table "{1}" from reverse mapped set.
+custom-field: Customized name found for field "{0}" in type "{1}": will \
+ rename as "{1}".
+custom-no-field: No customized name found for field "{0}" in type "{1}".
+custom-rm-field: Removing field "{0}" in type "{1}" from reverse mapped set.
+custom-unused-props: The following customizer properties were not used in \
+ the reverse mapping process: {0}.
+reverse-type: Overriding type mapping for column of type name "{0}" to Java \
+ class "{1}".
+no-reverse-type: No overridden type mapping for column of type name "{0}".
+no-query-res: There is no query result mapping for "{0}" with name "{1}".
+null-path: Attempt to add a null or empty path to result type "{1}" in mapping \
+ "{0}".
+bad-path: Result path "{2}" in result type "{1}" of mapping "{0}" contains \
+ invalid fields.
+untraversable-path: Result path "{2}" in result type "{1}" of mapping "{0}" \
+ attempts to traverse through a non-relation field.
+num-cols-path: Result path "{2}" in result type "{1}" of mapping "{0}" \
+ attempts to map a field that does not have exactly 1 column.
+lock-group-requires-perf-pack: Field "{0}" declares the lock-group extension. \
+ In order to use custom lock groups, you must have a performance pack or \
+ enterprise edition license. Contact sales@bea.com for details on \
+ upgrading your license.
+sub-lock-groups: Type "{0}" has a mapped superclass, and therefore cannot \
+ declare additional lock groups. Use the "lock-groups" extension on the \
+ mapped superclass to declare any additional lock groups needed by this \
+ type. {1}
+vers-mult-lock-groups: Type "{0}" cannot use a version field because it has \
+ multiple lock groups.
Propchange: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/meta/localizer.properties
------------------------------------------------------------------------------
svn:executable = *
Added: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/meta/strats/localizer.properties
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/meta/strats/localizer.properties?rev=423615&view=auto
==============================================================================
--- incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/meta/strats/localizer.properties (added)
+++ incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/meta/strats/localizer.properties Wed Jul 19 14:34:44 2006
@@ -0,0 +1,121 @@
+rel-to-unknownid: You cannot map a logical foreign key relation to an object \
+ with an unknown identity type.
+cant-mapped-by: Field "{0}" cannot declare that it is mapped by another field. \
+ Its mapping strategy ({1}) does not support mapping by another field.
+mapped-inverse-unjoined: Field "{0}" as defined in "{1}" cannot be mapped by \
+ "{2}". You cannot use an inverse foreign key to map a superclass field of \
+ an unjoined subclass.
+mapped-by-unmapped: Field "{0}" cannot be mapped by "{1}", because the related \
+ type is unmapped.
+cant-join: Cannot join across "{0}". The related type has unjoined subclasses.
+cant-inverse: "{0}" is not a valid mapping. Inverse foreign key-based \
+ relations to types with unjoined subclasses are not supported.
+cant-load: "{0}" is not a valid mapping. The related type has subclasses that \
+ are not reachable via joins, so OpenJPA must be able to construct an oid \
+ from the mapped foreign key. But your foreign key does not represent all \
+ primary key values of the related type.
+flush-virtual: Attempt to flush an unmapped object of type "{0}" with oid "{1}".
+cant-project-owned: "{0}" cannot be used in a projection, because it can only \
+ be loaded as part of its owning object.
+not-embeddable: "{0}" is mapped as embedded, but embedded field "{1}" is not \
+ embeddable. Embedded element/key/value types are limited to simple fields \
+ and direct relations to other persistent types.
+oid-invalid: Object id data "{0}" loaded from the database for "{1}" is not in \
+ the correct format. Please ensure that your database records are in the \
+ correct format.
+lrs-no-owner: This container was loaded in large result set field "{0}", but \
+ has been removed from its owning field. Therefore, it can no longer be \
+ used.
+not-full: Type "{0}" specifies a full class mapping strategy, but has a mapped \
+ persistence capable superclass or is embedded. Use a valid subclass or \
+ embedded strategy instead.
+not-base-vers: Type "{0}" specifies a version strategy, but has a mapped \
+ persistence capable superclass or is embedded. Subclasses and embedded \
+ values must use the version strategy of the base or embedding class.
+not-base-disc: Type "{0}" specifies a discriminator strategy, but has a mapped \
+ persistence capable superclass or is embedded. Subclasses and embedded \
+ values must use the discriminator strategy of the base or embedding class.
+not-sub: Type "{0}" specifies a subclass mapping strategy, but does not \
+ have a mapped persistence capable superclass or is embedded. Use a valid \
+ base or embedded class strategy instead.
+not-embed: "{0}" specifies an embedded mapping strategy, but it is not \
+ embedded.
+not-oid: "{0}" species an object id mapping strategy, but it is not \
+ an object id field.
+oid-not-joinable: Field "{0}" embedded within object id field "{1}" cannot be \
+ a primary key value. Its mapping does not it to be a join target.
+flat-table: Type "{0}" uses a flat inheritance mapping, but declares a table \
+ name of "{1}", which does not match the superclass table "{2}".
+not-string: Field "{0}" declares a string field mapping strategy, but is not \
+ a string field.
+not-primitive: Field "{0}" declares a primitive field mapping strategy, but \
+ is not of a primitive type.
+not-clobstring: Field "{0}" declares a clob field mapping strategy, but is \
+ not a string field.
+not-bytes: Field "{0}" declares a byte array field mapping strategy, but is \
+ not a byte array field.
+not-chars: Field "{0}" declares a char array field mapping strategy, but is \
+ not a char array field.
+not-serialized: Field "{0}" declares a blob mapping strategy, but the \
+ field''s value is not serialized. Set the field''s "serialized" attribute \
+ to true.
+not-relation: "{0}" declares a relation mapping strategy, but is not a \
+ direct, non-embedded relation to another persistence-capable object.
+not-elem-relation: "{0}" declares a to-many relation strategy, but its \
+ elements are not direct, non-embedded relations to another mapped \
+ persistence-capable object.
+not-inv-relation: Field "{0}" declares "{1}" as its mapped-by field, but this \
+ field is not a direct relation.
+not-inv-relation-coll: Field "{0}" declares "{1}" as its mapped-by field, but \
+ this field is not a collection of inverse relations.
+not-coll: Field "{0}" declares a collection mapping strategy, but is not a \
+ collection or array type.
+coll-owner: Inefficient mapping: You have declared that field "{0}" is mapped \
+ by collection "{1}". The mapping would be much more efficient if instead \
+ you map "{0}" and declare that "{1}" is mapped by it.
+class-crit-owner: Field "{0}" declares that it uses class criteria for joins, \
+ and this field is not owned by an inverse field. As a result, it is \
+ impossible to correctly null the inverse foreign keys when the field is \
+ deleted. OpenJPA may leave orphan key values in the database if you do not \
+ provide an owning inverse relation using the "mapped-by" attribute.
+not-map: Field "{0}" declares a map mapping strategy, but is not a map type.
+mapped-by-key: Map field "{0}" is attempting to use a map table, but its key \
+ is mapped by another field. Use an inverse key or join table mapping.
+not-mapped-by-key: Map field "{0}" is attempting to use an inverse key or join \
+ table mapping, but its key is not mapped by another field. Use a map \
+ table mapping.
+no-handler: Field "{0}" declares a handler-based mapping strategy, but no \
+ value handler is installed.
+auto-assign-handler: Attempt to use an auto-assigned column value in a handler \
+ with multiple columns. To use an auto-assigned column value with field \
+ "{0}", you will have to write a custom field mapping that implements the \
+ org.apache.openjpa.jdbc.meta.Joinable interface.
+no-lock-groups: Type "{0}" does not have any fields that participate in \
+ optimistic locking. Set its version strategy to "none".
+load-subs: Loading subclasses from discriminator column of "{0}".
+no-class-name: The discriminator column "{1}" for type "{1}" contains a null \
+ or empty value.
+cant-init-subs: The discriminator for type "{0}" cannot compute the list of \
+ its subclasses on its own. You should either use a discriminator strategy \
+ that has this ability (such as the class-name strategy), include the set \
+ of persistent classes in the "org.apache.openjpa.MetaDataFactory" property so that OpenJPA \
+ can discover all persistent classes at startup, or make sure that all \
+ subclasses of this type have had their class instantiated in the JVM \
+ before performing any persistent operations on this class or its \
+ subclasses. If this class does not have any subclasses, consider making \
+ the class final or changing its discriminator strategy to "final".
+no-discrim-value: Type "{0}" uses the value-map discriminator strategy, but \
+ does not declare a discriminator value.
+dup-discrim-value: Discriminator value "{0}" is used for two different \
+ classes in the same inheritance tree: "{1}", "{2}"
+outer-join-support: The subclass-join class indicator mapped to "{0}" requires \
+ outer joins to function. Your database dictionary is configured to use \
+ "traditional" join syntax, which does not support outer joins. To \
+ use SQL 92 joins instead, set the following property:\n\
+ org.apache.openjpa.jdbc.DBDictionary: JoinSyntax=sql92
+unknown-discrim-value: Could not map disciminator value "{0}" to any \
+ known subclasses of the requested class "{1}" (known discriminator \
+ values: {2}).
+bad-unmapped-rel: "{0}" cannot be mapped without stringifying the oid of \
+ the related object to a string column. The related type is unmapped and \
+ its "{1}" primary key field does not use a simple mapping.
Propchange: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/meta/strats/localizer.properties
------------------------------------------------------------------------------
svn:executable = *
Added: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/schema/localizer.properties
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/schema/localizer.properties?rev=423615&view=auto
==============================================================================
--- incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/schema/localizer.properties (added)
+++ incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/schema/localizer.properties Wed Jul 19 14:34:44 2006
@@ -0,0 +1,132 @@
+bad-join: The following error was detected when creating a foreign key: \
+ "{0}". The foreign key is being ignored.
+no-driver: A JDBC Driver or DataSource class name must be specified in the \
+ ConnectionDriverName property.
+bad-driver: The specified driver "{0}" is neither a java.sql.Driver \
+ nor a javax.sql.DataSource class name.
+bad-sch-ref: The schema information table could not be created: {0}
+bad-sch-read: Attempt to read the schema information table failed; continuing \
+ on the assumption that the table has not been created yet, and there is \
+ no data to read: {0}
+bad-sch-write-1: First attempt to write to the schema information table \
+ failed; will attempt to create the table in case it has been dropped \
+ before re-trying: {0}
+bad-sch-write-2: Attempt to write the schema information table for the second \
+ time failed. See previous log messages for possible reasons.
+bad-seq-num: Bad numeric constant for attribute in sequence "{0}".
+pk-resolve: The column "{0}" specified as a primary key for table "{1}" \
+ does not exist in that table.
+index-info: Unable to get index information for table "{0}": "{1}"
+index-resolve: The column "{1}" specified as part of index "{0}" on table \
+ "{2}" does not exist in that table.
+unq-resolve: The column "{1}" specified as part of unique constraint "{0}" on \
+ table "{2}" does not exist in that table.
+fk-totable: The foreign table "{1}" specified in foreign key "{0}" on \
+ table "{2}" does not exist or does not have a primary key.
+fk-nocol: The column "{1}" specified by foreign key "{0}" on table "{2}" \
+ does not exist in that table.
+fk-nopkcol: The column "{1}" of table "{2}" joined to by foreign key "{0}" \
+ on table "{3}" does not exist or is not a primary key column.
+bad-name: You must supply a valid name for this schema component.
+dup-col-name: The name "{0}" is already taken by a column in this table.
+table-mismatch: You are attempting to add a column from table "{0}" to a \
+ constraint or index on table "{1}".
+fk-mismatch: You are attempting to link to a primary key column in table \
+ "{0}" in a foreign key that is already linked to primary key columns in \
+ table "{1}".
+ser-schema: Writing schema "{0}".
+tool-norepos: You cannot perform this action until you set the schema group \
+ to act on.
+tool-running: Schema tool will run on schema file "{0}".
+tool-import-store: Storing imported schema data in schema factory.
+tool-export-gen: Gathering schema information to export; this process \
+ may take some time. Enable the org.apache.openjpa.jdbc.Schema logging category to see \
+ messages about the collection of schema data.
+tool-action: Schema tool running action "{0}". This process may take some \
+ time. Enable the org.apache.openjpa.jdbc.Schema logging category to see messages about \
+ the collection of schema data, and the org.apache.openjpa.jdbc.SQL category to see \
+ generated SQL commands.
+tool-record: Recording schema changes.
+tool-export-write: Writing schema data to XML.
+tool-usage: Usage: java org.apache.openjpa.jdbc.schema.SchemaTool\n\
+ \t[-properties/-p <properties file or resource>]\n\
+ \t[-<property name> <property value>]*\n\
+ \t[-file/-f <stdout | output file or resource>]\n\
+ \t[-ignoreErrors/-i <true/t | false/f>]\n\
+ \t[-dropTables/-dt <true/t | false/f>]\n\
+ \t[-openjpaTables/-kt <true/t | false/f>]\n\
+ \t[-dropSequences/-dsq <true/t | false/f>]\n\
+ \t[-sequences/-sq <true/t | false/f>]\n\
+ \t[-primaryKeys/-pk <true/t | false/f>]\n\
+ \t[-foreignKeys/-fk <true/t | false/f>]\n\
+ \t[-indexes/-ix <true/t | false/f>]\n\
+ \t[-record/-r <true/t | false/f>]\n\
+ \t[-action/-a <add | retain | drop | refresh | build | reflect\n\
+ \t\t| createDB | dropDB | import | export>]\n\
+ \t<.schema file or resource>*
+sch-reflect: Reflecting on schemas "{0}". This process may take some time. \
+ Enable the org.apache.openjpa.jdbc.Schema logging category to see messages about the \
+ collection of schema data.
+sch-reflect-write: Writing XML representation of schema.
+drop-index: The index "{0}" was not dropped from table "{1}".
+drop-fk: The foreign key "{0}" was not dropped from table "{1}".
+drop-pk: The primary key "{0}" was not dropped from table "{1}".
+drop-col: The column "{0}" was not dropped from table "{1}".
+drop-table: The table "{0}" was not dropped.
+drop-seq: The sequence "{0}" was not dropped.
+add-col: The column "{0}" was not added to table "{1}".
+add-index: The index "{0}" was not created on table "{1}".
+too-many-indexes: The index "{0}" was not created on table "{1}", since it \
+ would go beyond the maximum index limit of {2}.
+add-pk: The primary key "{0}" was not added to table "{1}".
+add-fk: The foreign key "{0}" was not added to table "{1}".
+add-table: The table "{0}" was not created.
+add-seq: The sequence "{0}" was not added to the database.
+bad-col: Existing column "{0}" on table "{1}" is incompatible with the \
+ same column in the given schema definition. Existing column:\n{2}\
+ Given column:\n{3}
+bad-pk: Existing primary key "{0}" on table "{1}" is incompatible with \
+ the same primary key in the given schema definition.
+bad-index: Existing index "{0}" on table "{1}" is incompatible with the \
+ same index in the given schema definition.
+bad-fk: Existing foreign key "{0}" on table "{1}" is incompatible with \
+ the same foreign key in the given schema definition.
+bad-fk-action-hint: "{1}" is not a recognized foreign key action, though it \
+ closely resembles the standard action "{2}". Available actions are: {3}
+bad-fk-action: "{1}" is not a recognized foreign key action. Available \
+ actions are: {2}
+gen-pk: Found existing primary key "{0}" on table "{1} ({2})".
+gen-index: Found existing index "{0}" on table "{1} ({2})".
+gen-fk: Found existing foreign key "{0}" on table "{1} ({2})" linking to \
+ table "{3} ({4})". Sequence: "{5}".
+gen-nofktable: Table "{0}" has a foreign key to table "{1}" that has not been \
+ generated. You must run the schema generator on all inter-related tables \
+ at once.
+gen-tables: Reading table information for schema name "{0}", table name "{1}".
+gen-pks: Reading primary keys for schema name "{0}", table name "{1}".
+gen-indexes: Reading indexes for schema name "{0}", table name "{1}".
+gen-fks: Reading foreign keys for schema name "{0}", table name "{1}".
+col-table: Reading column information for table "{0}".
+gen-column: Found existing column "{0}" on table "{1}".
+gen-seqs: Reading sequence information for schema "{0}", sequence name "{1}".
+no-idx-meta: Unable to get index metadata for table "{0}": {1}
+make-sch-table: Creating table to hold schema information.
+drop-sch-table: Dropping schema table.
+sch-usage: Usage: java org.apache.openjpa.jdbc.schema.TableSchemaFactory\n\
+ \t[-properties <properties file or resource>]\n\
+ \t[-<property name> <property value>]\n\
+ \t-action/-a <add | drop>
+refresh-cancelled: Refresh operation cancelled.
+generating-schemas: Reading schemas
+generating-schema: Reading schema "{0}"
+generating-all-primaries: Reading primary keys for schema "{0}"
+generating-all-indexes: Reading indexes for schema "{0}"
+generating-all-foreigns: Reading foreign keys for schema "{0}"
+generating-columns: Reading columns for table "{1}"
+generating-primary: Reading primary keys for table "{1}"
+generating-indexes: Reading indexes for table "{1}"
+generating-foreign: Reading foreign keys for table "{1}"
+generating-sequences: Reading sequences for schema "{0}"
+no-custom-ds: use a custom DataSource
+max-pool-license: Your license only permits a maximum of {0} pooled \
+ connections; the connection pool will be configured accordingly.
Propchange: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/schema/localizer.properties
------------------------------------------------------------------------------
svn:executable = *
Added: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/schema/schemas-doctype.rsrc
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/schema/schemas-doctype.rsrc?rev=423615&view=auto
==============================================================================
--- incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/schema/schemas-doctype.rsrc (added)
+++ incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/schema/schemas-doctype.rsrc Wed Jul 19 14:34:44 2006
@@ -0,0 +1,47 @@
+<!DOCTYPE schemas [
+ <!ELEMENT schemas (schema)*>
+ <!ELEMENT schema (table|sequence)*>
+ <!ATTLIST schema name CDATA #IMPLIED>
+ <!ELEMENT table (column|index|pk|fk)+>
+ <!ATTLIST table name CDATA #REQUIRED>
+ <!ELEMENT column EMPTY>
+ <!ATTLIST column name CDATA #REQUIRED>
+ <!ATTLIST column type (array|bigint|binary|bit|blob|char|clob|date|decimal|distinct|double|float|integer|java_object|longvarbinary|longvarchar|null|numeric|other|real|ref|smallint|struct|time|timestamp|tinyint|varbinary|varchar) #REQUIRED>
+ <!ATTLIST column type-name CDATA #IMPLIED>
+ <!ATTLIST column not-null (true|false) #IMPLIED>
+ <!ATTLIST column auto-assign (true|false) #IMPLIED>
+ <!ATTLIST column auto-increment (true|false) #IMPLIED> <!-- deprecated -->
+ <!ATTLIST column default CDATA #IMPLIED>
+ <!ATTLIST column size CDATA #IMPLIED>
+ <!ATTLIST column decimal-digits CDATA #IMPLIED>
+ <!ELEMENT index (on)*>
+ <!ATTLIST index name CDATA #REQUIRED>
+ <!ATTLIST index column CDATA #IMPLIED>
+ <!ATTLIST index unique (true|false) #IMPLIED>
+ <!ELEMENT pk (on)*>
+ <!ATTLIST pk name CDATA #IMPLIED>
+ <!ATTLIST pk logical (true|false) #IMPLIED>
+ <!ATTLIST pk column CDATA #IMPLIED>
+ <!ELEMENT on EMPTY>
+ <!ATTLIST on column CDATA #REQUIRED>
+ <!ELEMENT fk (join)*>
+ <!ATTLIST fk name CDATA #IMPLIED>
+ <!ATTLIST fk deferred (true|false) #IMPLIED>
+ <!ATTLIST fk to-table CDATA #REQUIRED>
+ <!ATTLIST fk column CDATA #IMPLIED>
+ <!ATTLIST fk delete-action (cascade|default|restrict|exception|none|null) #IMPLIED>
+ <!ATTLIST fk update-action (cascade|default|restrict|exception|none|null) #IMPLIED>
+ <!ELEMENT join EMPTY>
+ <!ATTLIST join column CDATA #IMPLIED>
+ <!ATTLIST join to-column CDATA #IMPLIED>
+ <!ATTLIST join value CDATA #IMPLIED>
+ <!ELEMENT unique (on)*>
+ <!ATTLIST unique name CDATA #IMPLIED>
+ <!ATTLIST unique column CDATA #IMPLIED>
+ <!ATTLIST unique deferred (true|false) #IMPLIED>
+ <!ELEMENT sequence EMPTY>
+ <!ATTLIST sequence name CDATA #REQUIRED>
+ <!ATTLIST sequence initial-value CDATA #IMPLIED>
+ <!ATTLIST sequence increment CDATA #IMPLIED>
+ <!ATTLIST sequence allocate CDATA #IMPLIED>
+]>
Propchange: incubator/openjpa/trunk/openjpa-jdbc/src/main/resources/org/apache/openjpa/jdbc/schema/schemas-doctype.rsrc
------------------------------------------------------------------------------
svn:executable = *