Author: rmannibucau
Date: Mon Oct 10 22:04:58 2011
New Revision: 1181264
URL: http://svn.apache.org/viewvc?rev=1181264&view=rev
Log:
fixing heuristic used to get env entry type when not specified
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/CleanEnvEntries.java
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/CleanEnvEntries.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/CleanEnvEntries.java?rev=1181264&r1=1181263&r2=1181264&view=diff
==============================================================================
---
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/CleanEnvEntries.java
(original)
+++
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/CleanEnvEntries.java
Mon Oct 10 22:04:58 2011
@@ -16,6 +16,7 @@
*/
package org.apache.openejb.config;
+import org.apache.commons.lang.StringUtils;
import org.apache.openejb.OpenEJBException;
import org.apache.openejb.jee.EjbJar;
import org.apache.openejb.jee.EnterpriseBean;
@@ -205,13 +206,23 @@ public class CleanEnvEntries implements
}
// TODO Technically we should match by case
+ final String bestName = "set" +
StringUtils.capitalize(target.getInjectionTargetName());
final String name = "set" +
target.getInjectionTargetName().toLowerCase();
+ Class<?> found = null;
for (Method method : clazz.getDeclaredMethods()) {
- if (method.getParameterTypes().length == 1 &&
method.getName().toLowerCase().equals(name)) {
- return method.getParameterTypes()[0];
+ if (method.getParameterTypes().length == 1) {
+ if (method.getName().equals(bestName)) {
+ return method.getParameterTypes()[0];
+ } else if (method.getName().toLowerCase().equals(name)) {
+ found = method.getParameterTypes()[0];
+ }
}
}
+ if (found != null) {
+ return found;
+ }
+
} catch (Throwable e) {
}