Index: jaxrs/resteasy-cdi/src/main/java/org/jboss/resteasy/cdi/ResteasyCdiExtension.java =================================================================== --- jaxrs/resteasy-cdi/src/main/java/org/jboss/resteasy/cdi/ResteasyCdiExtension.java (revision 1249) +++ jaxrs/resteasy-cdi/src/main/java/org/jboss/resteasy/cdi/ResteasyCdiExtension.java (revision ) @@ -74,11 +74,16 @@ if (!type.getJavaClass().isInterface()) { - if (type.isAnnotationPresent(Stateless.class) || type.isAnnotationPresent(Singleton.class)) - { + try { + Class.forName("javax.ejb.Stateless"); + Class.forName("javax.ejb.Singleton"); + if (type.isAnnotationPresent(Stateless.class) || type.isAnnotationPresent(Singleton.class)) { - log.debug("Bean {0} is a SLSB or Singleton. Leaving scope unmodified.", type.getJavaClass()); - return; // Do not modify scopes of SLSBs and Singletons - } + log.debug("Bean {0} is a SLSB or Singleton. Leaving scope unmodified.", type.getJavaClass()); + return; // Do not modify scopes of SLSBs and Singletons + } + } catch (ClassNotFoundException e) { + log.info("EJB classes are not present, ignoring @Stateless and @Singleton annotations"); + } if (type.isAnnotationPresent(Provider.class)) { log.debug("Discovered CDI bean which is a JAX-RS provider {0}.", type.getJavaClass().getCanonicalName());