Commit c90630ec75a6b9133dcd1d6bf26425924d818bb7

Authored by Cleverson Sacramento
1 parent 78303152
Exists in master

Verificação do ClassLoader ao executar o Startup

impl/core/src/main/java/br/gov/frameworkdemoiselle/internal/bootstrap/StartupBootstrap.java
... ... @@ -55,6 +55,7 @@ import javax.enterprise.inject.spi.ProcessAnnotatedType;
55 55 import br.gov.frameworkdemoiselle.DemoiselleException;
56 56 import br.gov.frameworkdemoiselle.annotation.Startup;
57 57 import br.gov.frameworkdemoiselle.annotation.ViewScoped;
  58 +import br.gov.frameworkdemoiselle.internal.configuration.ConfigurationLoader;
58 59 import br.gov.frameworkdemoiselle.internal.context.ThreadLocalContext;
59 60 import br.gov.frameworkdemoiselle.internal.processor.StartupProcessor;
60 61  
... ... @@ -123,10 +124,15 @@ public class StartupBootstrap extends AbstractBootstrap {
123 124 StartupProcessor processor = iter.next();
124 125  
125 126 try {
126   - processor.process();
  127 + ClassLoader classLoader = ConfigurationLoader.getClassLoaderForClass(processor.getAnnotatedMethod()
  128 + .getDeclaringType().getJavaClass().getCanonicalName());
127 129  
128   - if (remove) {
129   - iter.remove();
  130 + if (classLoader.equals(Thread.currentThread().getContextClassLoader())) {
  131 + processor.process();
  132 +
  133 + if (remove) {
  134 + iter.remove();
  135 + }
130 136 }
131 137  
132 138 } catch (Throwable cause) {
... ...
impl/core/src/main/java/br/gov/frameworkdemoiselle/internal/processor/AnnotatedMethodProcessor.java
... ... @@ -56,7 +56,7 @@ public class AnnotatedMethodProcessor<DC> extends AbstractProcessor<DC> {
56 56 super(annotatedMethod, beanManager);
57 57 }
58 58  
59   - protected AnnotatedMethod<DC> getAnnotatedMethod() {
  59 + public AnnotatedMethod<DC> getAnnotatedMethod() {
60 60 return (AnnotatedMethod<DC>) getAnnotatedCallable();
61 61 }
62 62  
... ...