You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by db...@apache.org on 2008/01/30 12:05:21 UTC
svn commit: r616722 - in /openejb/trunk/openejb3:
assembly/openejb-tomcat/openejb-tomcat-webapp/src/main/resources/META-INF/org.apache.openejb.tomcat/
container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/
container/openejb-core/src...
Author: dblevins
Date: Wed Jan 30 03:05:16 2008
New Revision: 616722
URL: http://svn.apache.org/viewvc?rev=616722&view=rev
Log:
Cut down in the INFO logging in the assembler by creating a child logger for services and configuring it on warning by default
Elimited some false reportings of "unused property"
Fixed isolation level setting that was preventing the server from starting
Yanked the ActiveMQResourceAdapter ThreadPoolSize property from the service-jar.xml files as the resource adapter doesn't have that property
Added in (and commented out) the beginning of a list of properties that the ActiveMQResourceAdapter does support. We should get these into the service-jar.xml
Added:
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/IsolationLevels.java
Modified:
openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-webapp/src/main/resources/META-INF/org.apache.openejb.tomcat/service-jar.xml
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/activemq/ActiveMQResourceAdapter.java
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/BasicDataSource.java
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/BasicManagedDataSource.java
openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb.embedded/service-jar.xml
openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb/service-jar.xml
openejb/trunk/openejb3/container/openejb-core/src/main/resources/embedded.logging.properties
openejb/trunk/openejb3/container/openejb-core/src/main/resources/logging.properties
Modified: openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-webapp/src/main/resources/META-INF/org.apache.openejb.tomcat/service-jar.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-webapp/src/main/resources/META-INF/org.apache.openejb.tomcat/service-jar.xml?rev=616722&r1=616721&r2=616722&view=diff
==============================================================================
--- openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-webapp/src/main/resources/META-INF/org.apache.openejb.tomcat/service-jar.xml (original)
+++ openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-webapp/src/main/resources/META-INF/org.apache.openejb.tomcat/service-jar.xml Wed Jan 30 03:05:16 2008
@@ -653,9 +653,6 @@
# DataSource for persistence messages
DataSource Default Unmanaged JDBC Database
- # Specifies the size of the thread pool available to AciveMQ.
- ThreadPoolSize 30
-
</ServiceProvider>
<ServiceProvider
Modified: openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java?rev=616722&r1=616721&r2=616722&view=diff
==============================================================================
--- openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java (original)
+++ openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/assembler/classic/Assembler.java Wed Jan 30 03:05:16 2008
@@ -729,7 +729,7 @@
}
public void createExternalContext(JndiContextInfo contextInfo) throws OpenEJBException {
- logger.info("createService", contextInfo.service, contextInfo.id, contextInfo.className);
+ logger.getChildLogger("service").info("createService", contextInfo.service, contextInfo.id, contextInfo.className);
InitialContext result;
try {
@@ -750,7 +750,7 @@
// Update the config tree
config.facilities.remoteJndiContexts.add(contextInfo);
- logger.debug("createService.success", contextInfo.service, contextInfo.id, contextInfo.className);
+ logger.getChildLogger("service").debug("createService.success", contextInfo.service, contextInfo.id, contextInfo.className);
}
public void createContainer(ContainerInfo serviceInfo) throws OpenEJBException {
@@ -789,7 +789,7 @@
// Update the config tree
config.containerSystem.containers.add(serviceInfo);
- logger.debug("createService.success", serviceInfo.service, serviceInfo.id, serviceInfo.className);
+ logger.getChildLogger("service").debug("createService.success", serviceInfo.service, serviceInfo.id, serviceInfo.className);
}
public void removeContainer(String containerId) {
@@ -840,7 +840,7 @@
// Update the config tree
config.facilities.intraVmServer = serviceInfo;
- logger.debug("createService.success", serviceInfo.service, serviceInfo.id, serviceInfo.className);
+ logger.getChildLogger("service").debug("createService.success", serviceInfo.service, serviceInfo.id, serviceInfo.className);
}
private void replaceResourceAdapterProperty(ObjectRecipe serviceRecipe) throws OpenEJBException {
@@ -927,7 +927,7 @@
if (classLoader == null) classLoader = ClassLoader.getSystemClassLoader();
connectionManagerRecipe.setProperty("classLoader", classLoader);
- logger.info("createResource.createConnectionManager", serviceInfo.id, service.getClass().getName());
+ logger.getChildLogger("service").info("createResource.createConnectionManager", serviceInfo.id, service.getClass().getName());
// create the connection manager
ConnectionManager connectionManager = (ConnectionManager) connectionManagerRecipe.create();
@@ -958,7 +958,7 @@
// Update the config tree
config.facilities.resources.add(serviceInfo);
- logger.debug("createService.success", serviceInfo.service, serviceInfo.id, serviceInfo.className);
+ logger.getChildLogger("service").debug("createService.success", serviceInfo.service, serviceInfo.id, serviceInfo.className);
}
private int getIntProperty(Properties properties, String propertyName, int defaultValue) {
@@ -1004,7 +1004,7 @@
// Update the config tree
config.facilities.connectionManagers.add(serviceInfo);
- logger.debug("createService.success", serviceInfo.service, serviceInfo.id, serviceInfo.className);
+ logger.getChildLogger("service").debug("createService.success", serviceInfo.service, serviceInfo.id, serviceInfo.className);
}
public void createSecurityService(SecurityServiceInfo serviceInfo) throws OpenEJBException {
@@ -1037,7 +1037,7 @@
// Update the config tree
config.facilities.securityService = serviceInfo;
- logger.debug("createService.success", serviceInfo.service, serviceInfo.id, serviceInfo.className);
+ logger.getChildLogger("service").debug("createService.success", serviceInfo.service, serviceInfo.id, serviceInfo.className);
}
public void createTransactionManager(TransactionServiceInfo serviceInfo) throws OpenEJBException {
@@ -1089,7 +1089,7 @@
Assembler.getContext().put(JtaEntityManagerRegistry.class.getName(), jtaEntityManagerRegistry);
SystemInstance.get().setComponent(JtaEntityManagerRegistry.class, jtaEntityManagerRegistry);
- logger.debug("createService.success", serviceInfo.service, serviceInfo.id, serviceInfo.className);
+ logger.getChildLogger("service").debug("createService.success", serviceInfo.service, serviceInfo.id, serviceInfo.className);
}
private void logUnusedProperties(ObjectRecipe serviceRecipe, ServiceInfo info) {
@@ -1099,12 +1099,17 @@
private void logUnusedProperties(Map<String, Object> unsetProperties, ServiceInfo info) {
for (String property : unsetProperties.keySet()) {
- logger.warning("unusedProperty", property, info.id);
+ //TODO: DMB: Make more robust later
+ if (property.equalsIgnoreCase("properties")) return;
+ if (property.equalsIgnoreCase("transactionManager")) return;
+ //---
+
+ logger.getChildLogger("service").warning("unusedProperty", property, info.id);
}
}
private ObjectRecipe createRecipe(ServiceInfo info) {
- logger.info("createService", info.service, info.id, info.className);
+ logger.getChildLogger("service").info("createService", info.service, info.id, info.className);
ObjectRecipe serviceRecipe = new ObjectRecipe(info.className, info.factoryMethod, info.constructorArgs.toArray(new String[0]), null);
serviceRecipe.allow(Option.CASE_INSENSITIVE_PROPERTIES);
serviceRecipe.allow(Option.IGNORE_MISSING_PROPERTIES);
Modified: openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/activemq/ActiveMQResourceAdapter.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/activemq/ActiveMQResourceAdapter.java?rev=616722&r1=616721&r2=616722&view=diff
==============================================================================
--- openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/activemq/ActiveMQResourceAdapter.java (original)
+++ openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/activemq/ActiveMQResourceAdapter.java Wed Jan 30 03:05:16 2008
@@ -36,7 +36,74 @@
public void setDataSource(String dataSource) {
this.dataSource = dataSource;
}
-
+// DMB: Work in progress. These all should go into the service-jar.xml
+// Sources of info:
+// - http://activemq.apache.org/resource-adapter-properties.html
+// - http://activemq.apache.org/camel/maven/camel-core/apidocs/org/apache/camel/processor/RedeliveryPolicy.html
+//
+// /**
+// * 100 The maximum number of messages sent to a consumer on a durable topic until acknowledgements are received
+// * @param integer
+// */
+// public void setDurableTopicPrefetch(Integer integer) {
+// super.setDurableTopicPrefetch(integer);
+// }
+//
+// /**
+// * 1000 The delay before redeliveries start. Also configurable on the ActivationSpec.
+// * @param aLong
+// */
+// public void setInitialRedeliveryDelay(Long aLong) {
+// super.setInitialRedeliveryDelay(aLong);
+// }
+//
+// /**
+// * 100 The maximum number of messages sent to a consumer on a JMS stream until acknowledgements are received
+// * @param integer
+// */
+// public void setInputStreamPrefetch(Integer integer) {
+// super.setInputStreamPrefetch(integer);
+// }
+//
+// /**
+// * 5 The maximum number of redeliveries or -1 for no maximum. Also configurable on the ActivationSpec.
+// * @param integer
+// */
+// public void setMaximumRedeliveries(Integer integer) {
+// super.setMaximumRedeliveries(integer);
+// }
+//
+// public void setQueueBrowserPrefetch(Integer integer) {
+// super.setQueueBrowserPrefetch(integer);
+// }
+//
+// /**
+// * 1000 The maximum number of messages sent to a consumer on a queue until acknowledgements are received
+// * @param integer
+// */
+// public void setQueuePrefetch(Integer integer) {
+// super.setQueuePrefetch(integer);
+// }
+//
+// /**
+// * 5 The multiplier to use if exponential back off is enabled. Also configurable on the ActivationSpec.
+// * @param aShort
+// */
+// public void setRedeliveryBackOffMultiplier(Short aShort) {
+// super.setRedeliveryBackOffMultiplier(aShort);
+// }
+//
+// public void setRedeliveryUseExponentialBackOff(Boolean aBoolean) {
+// super.setRedeliveryUseExponentialBackOff(aBoolean);
+// }
+//
+// /**
+// * 32766 The maximum number of messages sent to a consumer on a non-durable topic until acknowledgements are received
+// * @param integer
+// */
+// public void setTopicPrefetch(Integer integer) {
+// super.setTopicPrefetch(integer);
+// }
public void start(BootstrapContext bootstrapContext) throws ResourceAdapterInternalException {
Properties properties = new Properties();
Modified: openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/BasicDataSource.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/BasicDataSource.java?rev=616722&r1=616721&r2=616722&view=diff
==============================================================================
--- openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/BasicDataSource.java (original)
+++ openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/BasicDataSource.java Wed Jan 30 03:05:16 2008
@@ -22,9 +22,12 @@
import javax.sql.DataSource;
import java.sql.SQLException;
import java.util.Properties;
+import java.util.Map;
+import java.util.HashMap;
import java.io.File;
public class BasicDataSource extends org.apache.commons.dbcp.BasicDataSource {
+
public synchronized String getUserName() {
return super.getUsername();
}
@@ -47,6 +50,12 @@
public synchronized void setJdbcUrl(String string) {
super.setUrl(string);
+ }
+
+ public synchronized void setDefaultTransactionIsolation(String s) {
+ if (s == null || s.equals("")) return;
+ int level = IsolationLevels.getIsolationLevel(s);
+ super.setDefaultTransactionIsolation(level);
}
protected synchronized DataSource createDataSource() throws SQLException {
Modified: openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/BasicManagedDataSource.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/BasicManagedDataSource.java?rev=616722&r1=616721&r2=616722&view=diff
==============================================================================
--- openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/BasicManagedDataSource.java (original)
+++ openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/BasicManagedDataSource.java Wed Jan 30 03:05:16 2008
@@ -49,6 +49,12 @@
super.setUrl(string);
}
+ public synchronized void setDefaultTransactionIsolation(String s) {
+ if (s == null || s.equals("")) return;
+ int level = IsolationLevels.getIsolationLevel(s);
+ super.setDefaultTransactionIsolation(level);
+ }
+
protected synchronized DataSource createDataSource() throws SQLException {
if (dataSource != null) {
return dataSource;
Added: openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/IsolationLevels.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/IsolationLevels.java?rev=616722&view=auto
==============================================================================
--- openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/IsolationLevels.java (added)
+++ openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/resource/jdbc/IsolationLevels.java Wed Jan 30 03:05:16 2008
@@ -0,0 +1,45 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.openejb.resource.jdbc;
+
+import org.apache.openejb.util.Join;
+
+import java.util.Map;
+import java.util.HashMap;
+
+/**
+ * @version $Rev$ $Date$
+ */
+public class IsolationLevels {
+
+ private static Map<String,Integer> isolation = new HashMap<String,Integer>();
+ static {
+ isolation.put("NONE", 0);
+ isolation.put("READ_COMMITTED", 2);
+ isolation.put("READ_UNCOMMITTED", 1);
+ isolation.put("REPEATABLE_READ", 4);
+ isolation.put("SERIALIZABLE", 8);
+ }
+
+ public static int getIsolationLevel(String s) {
+ if (!isolation.containsKey(s)) throw new IllegalArgumentException("No such transaction isolation level '"+s+"'. Possible values are "+Join.join(", ", isolation.keySet()));
+ int level = isolation.get(s);
+ return level;
+ }
+
+
+}
Modified: openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb.embedded/service-jar.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb.embedded/service-jar.xml?rev=616722&r1=616721&r2=616722&view=diff
==============================================================================
--- openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb.embedded/service-jar.xml (original)
+++ openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb.embedded/service-jar.xml Wed Jan 30 03:05:16 2008
@@ -644,9 +644,6 @@
# DataSource for persistence messages
DataSource
- # Specifies the size of the thread pool available to AciveMQ.
- ThreadPoolSize 30
-
</ServiceProvider>
<ServiceProvider
Modified: openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb/service-jar.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb/service-jar.xml?rev=616722&r1=616721&r2=616722&view=diff
==============================================================================
--- openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb/service-jar.xml (original)
+++ openejb/trunk/openejb3/container/openejb-core/src/main/resources/META-INF/org.apache.openejb/service-jar.xml Wed Jan 30 03:05:16 2008
@@ -645,9 +645,6 @@
# DataSource for persistence messages
DataSource Default Unmanaged JDBC Database
- # Specifies the size of the thread pool available to AciveMQ.
- ThreadPoolSize 30
-
</ServiceProvider>
<ServiceProvider
Modified: openejb/trunk/openejb3/container/openejb-core/src/main/resources/embedded.logging.properties
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/resources/embedded.logging.properties?rev=616722&r1=616721&r2=616722&view=diff
==============================================================================
--- openejb/trunk/openejb3/container/openejb-core/src/main/resources/embedded.logging.properties (original)
+++ openejb/trunk/openejb3/container/openejb-core/src/main/resources/embedded.logging.properties Wed Jan 30 03:05:16 2008
@@ -51,6 +51,7 @@
log4j.category.OpenEJB = warn
log4j.category.OpenEJB.server = info
log4j.category.OpenEJB.startup = info
+log4j.category.OpenEJB.startup.service = warn
log4j.category.OpenEJB.startup.config = info
log4j.category.OpenEJB.hsql = info
log4j.category.CORBA-Adapter = info
Modified: openejb/trunk/openejb3/container/openejb-core/src/main/resources/logging.properties
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/resources/logging.properties?rev=616722&r1=616721&r2=616722&view=diff
==============================================================================
--- openejb/trunk/openejb3/container/openejb-core/src/main/resources/logging.properties (original)
+++ openejb/trunk/openejb3/container/openejb-core/src/main/resources/logging.properties Wed Jan 30 03:05:16 2008
@@ -19,6 +19,7 @@
log4j.category.OpenEJB = warn,R
log4j.category.OpenEJB.server = info
log4j.category.OpenEJB.startup = info
+log4j.category.OpenEJB.startup.service = warn
log4j.category.OpenEJB.startup.config = info
log4j.category.OpenEJB.hsql = info
log4j.category.OpenEJB.ws = info