[jboss-cvs] JBossAS SVN: r62423 - in trunk/ejb3/src: main/org/jboss/ejb3/interceptor and 1 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Apr 19 13:21:34 EDT 2007
Author: wolfc
Date: 2007-04-19 13:21:34 -0400 (Thu, 19 Apr 2007)
New Revision: 62423
Modified:
trunk/ejb3/src/main/org/jboss/ejb3/deployers/EJBRegistrationDeployer.java
trunk/ejb3/src/main/org/jboss/ejb3/interceptor/InterceptorInfoRepository.java
trunk/ejb3/src/resources/META-INF/ejb3-deployers-beans.xml
Log:
EJBTHREE-947: added option to the deployer
Modified: trunk/ejb3/src/main/org/jboss/ejb3/deployers/EJBRegistrationDeployer.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/deployers/EJBRegistrationDeployer.java 2007-04-19 15:18:53 UTC (rev 62422)
+++ trunk/ejb3/src/main/org/jboss/ejb3/deployers/EJBRegistrationDeployer.java 2007-04-19 17:21:34 UTC (rev 62423)
@@ -28,6 +28,7 @@
import org.jboss.ejb3.DeploymentScope;
import org.jboss.ejb3.Ejb3Deployment;
import org.jboss.ejb3.EJB3Deployer;
+import org.jboss.ejb3.interceptor.InterceptorInfoRepository;
import org.jboss.kernel.Kernel;
import org.jboss.virtual.VirtualFile;
import org.jboss.logging.Logger;
@@ -113,6 +114,16 @@
this.defaultPersistenceProperties = defaultPersistenceProperties;
}
+ public boolean getRelaxedSignatureChecking()
+ {
+ return InterceptorInfoRepository.getRelaxedSignatureChecking();
+ }
+
+ public void setRelaxedSignatureChecking(boolean b)
+ {
+ InterceptorInfoRepository.setRelaxedSignatureChecking(b);
+ }
+
public void deploy(DeploymentUnit unit) throws DeploymentException
{
try
Modified: trunk/ejb3/src/main/org/jboss/ejb3/interceptor/InterceptorInfoRepository.java
===================================================================
--- trunk/ejb3/src/main/org/jboss/ejb3/interceptor/InterceptorInfoRepository.java 2007-04-19 15:18:53 UTC (rev 62422)
+++ trunk/ejb3/src/main/org/jboss/ejb3/interceptor/InterceptorInfoRepository.java 2007-04-19 17:21:34 UTC (rev 62423)
@@ -73,6 +73,8 @@
private InterceptorSorter sorter = new InterceptorSorter();
+ private static boolean relaxedSignatureChecking = false;
+
public InterceptorInfoRepository()
{
}
@@ -508,6 +510,16 @@
}
}
+ private static boolean checkForRuntimeExceptions(Class<?> exceptions[])
+ {
+ boolean isRuntime = true;
+ for(Class<?> exceptionClass : exceptions)
+ {
+ isRuntime &= RuntimeException.class.isAssignableFrom(exceptionClass);
+ }
+ return isRuntime;
+ }
+
public static boolean checkValidBusinessSignature(Method method)
{
int modifiers = method.getModifiers();
@@ -559,13 +571,32 @@
return true;
}
else if (!Modifier.isStatic(modifiers) && method.getReturnType().equals(Void.TYPE)
- && method.getParameterTypes().length == 0 && method.getExceptionTypes().length == 0)
+ && method.getParameterTypes().length == 0)
{
- return true;
+ if(relaxedSignatureChecking)
+ {
+ return checkForRuntimeExceptions(method.getExceptionTypes());
+ }
+ else
+ {
+ return method.getExceptionTypes().length == 0;
+ }
}
return false;
}
+ public static boolean getRelaxedSignatureChecking()
+ {
+ return relaxedSignatureChecking;
+ }
+
+ public static void setRelaxedSignatureChecking(boolean b)
+ {
+ relaxedSignatureChecking = b;
+
+ log.trace("EJBTHREE-947: relaxed signature checking set to " + b);
+ }
+
public static String simpleType(Class type)
{
Class ret = type;
@@ -752,7 +783,7 @@
}
throw new RuntimeException("@" + ann.annotationType().getName()
- + " annotated method has the wrong signature - " + method);
+ + " annotated method has the wrong signature - " + method + " (EJB3 12.4)");
}
return method;
}
Modified: trunk/ejb3/src/resources/META-INF/ejb3-deployers-beans.xml
===================================================================
--- trunk/ejb3/src/resources/META-INF/ejb3-deployers-beans.xml 2007-04-19 15:18:53 UTC (rev 62422)
+++ trunk/ejb3/src/resources/META-INF/ejb3-deployers-beans.xml 2007-04-19 17:21:34 UTC (rev 62423)
@@ -106,6 +106,7 @@
<value>servlets-webdav.jar</value>
</set>
</property>
+ <property name="relaxedSignatureChecking">true</property>
<depends>AspectLibrary</depends>
</bean>
<bean name="EJBStage2Deployer" class="org.jboss.ejb3.deployers.EJBStage2Deployer">
More information about the jboss-cvs-commits
mailing list