4 Replies Latest reply on Sep 20, 2012 10:32 AM by dward

    Forge tooling error

    mageshbk

      Has anyone tried the forge tooling lately? I get this error on startup

      Plugin system disabled due to failure while loading one or more plugins; try removing offending plugins with "forge remove-plugin <TAB>".
      com.google.common.collect.ComputationException: java.lang.TypeNotPresentException: Type org.drools.runtime.Channel not present
              at com.google.common.collect.ComputingConcurrentHashMap.compute(ComputingConcurrentHashMap.java:218)
              at com.google.common.collect.ComputingConcurrentHashMap.apply(ComputingConcurrentHashMap.java:100)
              at com.google.common.collect.MapMaker$ComputingMapAdapter.get(MapMaker.java:515)
              at org.jboss.weld.resources.ClassTransformer.loadClass(ClassTransformer.java:206)
              at org.jboss.weld.bootstrap.BeanDeployer.addClass(BeanDeployer.java:114)
              at org.jboss.weld.bootstrap.BeanDeployer.addClasses(BeanDeployer.java:134)
              at org.jboss.weld.bootstrap.BeanDeployment.createBeans(BeanDeployment.java:191)
              at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:368)
              at org.jboss.weld.environment.se.Weld.initialize(Weld.java:92)
              at org.jboss.forge.shell.Bootstrap$1.run(Bootstrap.java:127)
              at java.lang.Thread.run(Unknown Source)
      Caused by: java.lang.TypeNotPresentException: Type org.drools.runtime.Channel not present
              at sun.reflect.generics.factory.CoreReflectionFactory.makeNamedType(Unknown Source)
              at sun.reflect.generics.visitor.Reifier.visitClassTypeSignature(Unknown Source)
              at sun.reflect.generics.tree.ClassTypeSignature.accept(Unknown Source)
              at sun.reflect.generics.reflectiveObjects.WildcardTypeImpl.getUpperBounds(Unknown Source)
              at sun.reflect.generics.reflectiveObjects.WildcardTypeImpl.hashCode(Unknown Source)
              at java.util.Arrays.hashCode(Unknown Source)
              at sun.reflect.generics.reflectiveObjects.ParameterizedTypeImpl.hashCode(Unknown Source)
              at com.google.common.base.Equivalences$Impl$1.hash(Equivalences.java:67)
              at com.google.common.collect.CustomConcurrentHashMap.hash(CustomConcurrentHashMap.java:1205)
              at com.google.common.collect.ComputingConcurrentHashMap.apply(ComputingConcurrentHashMap.java:63)
              at com.google.common.collect.MapMaker$ComputingMapAdapter.get(MapMaker.java:515)
              at org.jboss.weld.resources.SharedObjectCache.getTypeClosure(SharedObjectCache.java:90)
              at org.jboss.weld.resources.SharedObjectFacade.getTypeClosure(SharedObjectFacade.java:76)
              at org.jboss.weld.introspector.TypeClosureLazyValueHolder.computeValue(TypeClosureLazyValueHolder.java:58)
              at org.jboss.weld.introspector.TypeClosureLazyValueHolder.computeValue(TypeClosureLazyValueHolder.java:32)
              at org.jboss.weld.util.LazyValueHolder.get(LazyValueHolder.java:40)
              at org.jboss.weld.introspector.jlr.AbstractWeldAnnotated.getTypeClosure(AbstractWeldAnnotated.java:245)
              at org.jboss.weld.introspector.jlr.WeldMethodImpl.of(WeldMethodImpl.java:68)
              at org.jboss.weld.introspector.jlr.WeldClassImpl.<init>(WeldClassImpl.java:280)
              at org.jboss.weld.introspector.jlr.WeldClassImpl.of(WeldClassImpl.java:93)
              at org.jboss.weld.resources.ClassTransformer$TransformAnnotatedTypeToWeldClass.apply(ClassTransformer.java:89)
              at org.jboss.weld.resources.ClassTransformer$TransformAnnotatedTypeToWeldClass.apply(ClassTransformer.java:76)
              at com.google.common.collect.ComputingConcurrentHashMap.compute(ComputingConcurrentHashMap.java:206)
              ... 10 more
      Caused by: java.lang.ClassNotFoundException: org.drools.runtime.Channel from [Module "org.switchyard.switchyard-forge-plugin:0.6.0-SNAPSHOT" from local module loader @1ef9f1d (roots: ...)]
              at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:190)
              at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:468)
              at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:456)
              at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:423)
              at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398)
              at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:120)
              at java.lang.Class.forName0(Native Method)
              at java.lang.Class.forName(Unknown Source)
              ... 33 more
      
        • 1. Re: Forge tooling error
          kcbabo

          My guess would be that a Drools class has leaked into one of the Rules component classes that is shaded into the rules Forge plugin.  Looking around, this seems to be the culprit:

           

          rules$ grep -R --include="*.java" "org\.drools" .
          ./src/main/java/org/switchyard/component/rules/channel/drools/SwitchYardChannel.java:import org.drools.runtime.Channel;
          ./src/main/java/org/switchyard/component/rules/Channel.java:    public Class<? extends org.drools.runtime.Channel> value();
          ./src/main/java/org/switchyard/component/rules/config/model/ChannelModel.java:import org.drools.runtime.Channel;
          ./src/main/java/org/switchyard/component/rules/config/model/RulesSwitchYardScanner.java:                Class<? extends org.drools.runtime.Channel> channelClass = channel.value();
          ./src/main/java/org/switchyard/component/rules/config/model/v1/V1ChannelModel.java:import org.drools.runtime.Channel;
          

           

          David - is it possible to just return the class instead of narrowing it down to a Drools channel?  This seems to be the first/only example of a Drools class in the rules config code.

          • 2. Re: Forge tooling error
            dward

            Yeah, that was me. I'll fix it.

            • 3. Re: Forge tooling error
              dward
              • 4. Re: Forge tooling error
                dward

                Pull request submitted.