gdamour 2005/03/12 01:53:04
Modified: modules/openejb-builder/src/java/org/openejb/deployment
CMPContainerBuilder.java CMPEntityBuilder.java
Log:
GERONIMO-581
o extract the messages defined by QueryException.
o declare QueryException as the thrown exception when possible.
Revision Changes Path
1.18 +4 -4
openejb/modules/openejb-builder/src/java/org/openejb/deployment/CMPContainerBuilder.java
Index: CMPContainerBuilder.java
===================================================================
RCS file:
/home/projects/openejb/scm/openejb/modules/openejb-builder/src/java/org/openejb/deployment/CMPContainerBuilder.java,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- CMPContainerBuilder.java 4 Mar 2005 09:35:50 -0000 1.17
+++ CMPContainerBuilder.java 12 Mar 2005 06:53:03 -0000 1.18
@@ -317,13 +317,13 @@
}
}
- private Map createFinders(EJB ejb) throws Exception {
+ private Map createFinders(EJB ejb) throws QueryException {
EJBQLToPhysicalQuery toPhysicalQuery = new
EJBQLToPhysicalQuery(ejbSchema, sqlSchema, globalSchema);
return toPhysicalQuery.buildFinders(ejb);
}
- private Map createSelects(EJB ejb) throws Exception {
+ private Map createSelects(EJB ejb) throws QueryException {
EJBQLToPhysicalQuery toPhysicalQuery = new
EJBQLToPhysicalQuery(ejbSchema, sqlSchema, globalSchema);
return toPhysicalQuery.buildSelects(ejb);
@@ -346,7 +346,7 @@
return cmpFieldAccessors;
}
- private LinkedHashMap createCMRFieldAccessors() throws Exception {
+ private LinkedHashMap createCMRFieldAccessors() throws QueryException {
IdentityDefinerBuilder identityDefinerBuilder = new
IdentityDefinerBuilder(ejbSchema, globalSchema);
IdentityDefiner identityDefiner =
identityDefinerBuilder.getIdentityDefiner(ejb);
1.24 +22 -2
openejb/modules/openejb-builder/src/java/org/openejb/deployment/CMPEntityBuilder.java
Index: CMPEntityBuilder.java
===================================================================
RCS file:
/home/projects/openejb/scm/openejb/modules/openejb-builder/src/java/org/openejb/deployment/CMPEntityBuilder.java,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -r1.23 -r1.24
--- CMPEntityBuilder.java 12 Mar 2005 04:12:13 -0000 1.23
+++ CMPEntityBuilder.java 12 Mar 2005 06:53:04 -0000 1.24
@@ -60,6 +60,8 @@
import javax.management.ObjectName;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
import org.apache.geronimo.common.DeploymentException;
import org.apache.geronimo.gbean.GBeanData;
import org.apache.geronimo.j2ee.deployment.EARContext;
@@ -98,6 +100,7 @@
import org.tranql.ejb.SelectEJBQLQuery;
import org.tranql.ejb.TransactionManagerDelegate;
import org.tranql.pkgenerator.PrimaryKeyGeneratorDelegate;
+import org.tranql.ql.QueryException;
import org.tranql.schema.Association.JoinDefinition;
import org.tranql.sql.Column;
import org.tranql.sql.EndTable;
@@ -113,6 +116,8 @@
* @version $Revision$ $Date$
*/
class CMPEntityBuilder extends EntityBuilder {
+ private static final Log log = LogFactory.getLog(CMPEntityBuilder.class);
+
public CMPEntityBuilder(OpenEJBModuleBuilder builder) {
super(builder);
}
@@ -734,7 +739,22 @@
builder.setTransactionManagerDelegate(tmDelegate);
try {
- GBeanData gbean = builder.createConfiguration();
+ GBeanData gbean;
+ try {
+ gbean = builder.createConfiguration();
+ } catch (QueryException e) {
+ log.error("Deployment exception.", e);
+ Throwable exception = e;
+ StringBuffer message = new StringBuffer();
+ while (null != exception) {
+ message.append('\t');
+ message.append(exception.getMessage());
+ message.append('\n');
+ exception = exception.getCause();
+ }
+ throw new DeploymentException("A stack-trace has been
provided on the server-side.\n" +
+ "Message\n" + message.toString());
+ }
gbean.setName(containerObjectName);
gbean.setReferencePattern("TransactionContextManager",
earContext.getTransactionContextManagerObjectName());
gbean.setReferencePattern("TrackedConnectionAssociator",
earContext.getConnectionTrackerObjectName());