<html><body><div style="font-family: times new roman, new york, times, serif; font-size: 12pt; color: #000000"><div>Hey Ian,<br></div><div><br></div><div>I've pushed up some "work" on the Windup Eclipse Plugin. I've simplified the dependencies, updated to Windup 2.2.0.Final, and removed dependencies that I do not believe belong in the OSGi bundles.</div><div><br></div><div><a href="https://github.com/windup/windup-eclipse-plugin/tree/windup2-lincoln">https://github.com/windup/windup-eclipse-plugin/tree/windup2-lincoln</a></div><div><br></div><div>Unfortunately I am not an OSGi expert, and I am getting an exception that I'm hoping you can help me with. I need to know why this class is not being exported from the "org.jboss.tools.forge.runtime" bundle, or why it is not being imported where it should be. We don't have this problem with the Forge Eclipse Plugin, so something must be different with our imports/exports. I tried to add this manually in several places, but to no avail. (See trace below message.)</div><div><br></div><div>I think that we will have more success if we are in more constant communication about these issues. You can help with the OSGi issues, I can help with the Furnace issues, and the team can help add new APIs that you'll need to do your work.</div><div><br></div><div>My recommendation once we get this CNFE resolved (assuming that's the last issue with what's currently in my branch,) is that we begin building specific interfaces for use in the Eclipse plugin and provide them via a Windup service. I also recommend sticking entirely to interfaces where possible. That will make this go a lot more smoothly because Furnace is really best at proxying interfaces across the ClassLoader boundary. Proxying concrete classes is never really safe because you can't always guarantee a sane/proxiable inheritance hierarchy.</div><div><br></div><div>What are your thoughts?</div><div><br></div><div>~Lincoln</div><div><br></div><div><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;">!ENTRY org.eclipse.core.jobs 4 2 2015-03-27 17:45:55.754</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;">!MESSAGE An internal error occurred during: "Generate Windup Report".</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;">!STACK 0</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="s1">org.jboss.forge.furnace.exception.ContainerException</span>: Failed to create proxy for type [class org.jboss.windup.graph.GraphContextFactoryImpl]</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback.enhance(<span class="s1">ClassLoaderAdapterCallback.java:1034</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback.enhanceResult(<span class="s1">ClassLoaderAdapterCallback.java:253</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback.access$200(<span class="s1">ClassLoaderAdapterCallback.java:37</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback$2.call(<span class="s1">ClassLoaderAdapterCallback.java:124</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.forge.furnace.util.ClassLoaders.executeIn(<span class="s1">ClassLoaders.java:42</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback.invoke(<span class="s1">ClassLoaderAdapterCallback.java:96</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.forge.furnace.services.Imported_$$_javassist_e21290d9-1468-4bd4-98c1-073a2776670c.get(Imported_$$_javassist_e21290d9-1468-4bd4-98c1-073a2776670c.java)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.tools.forge.core.furnace.FurnaceService.lookup(<span class="s1">FurnaceService.java:95</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.tools.windup.core.WindupService.getServiceFromFurnace(<span class="s1">WindupService.java:525</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.tools.windup.core.WindupService.generateGraph(<span class="s1">WindupService.java:241</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.tools.windup.core.WindupService.generateGraph(<span class="s1">WindupService.java:168</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.tools.windup.ui.internal.commands.GenerateWindupReportHandler$1.run(<span class="s1">GenerateWindupReportHandler.java:78</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.eclipse.core.internal.jobs.Worker.run(<span class="s1">Worker.java:54</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;">Caused by: <span class="s1">java.lang.RuntimeException</span>: by java.lang.NoClassDefFoundError: org/jboss/forge/furnace/proxy/javassist/util/proxy/Proxy</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.forge.furnace.proxy.javassist.util.proxy.ProxyFactory.createClass3(<span class="s1">ProxyFactory.java:515</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.forge.furnace.proxy.javassist.util.proxy.ProxyFactory.createClass2(<span class="s1">ProxyFactory.java:492</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.forge.furnace.proxy.javassist.util.proxy.ProxyFactory.createClass1(<span class="s1">ProxyFactory.java:428</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.forge.furnace.proxy.javassist.util.proxy.ProxyFactory.createClass(<span class="s1">ProxyFactory.java:400</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback$3.call(<span class="s1">ClassLoaderAdapterCallback.java:987</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.forge.furnace.util.ClassLoaders.executeIn(<span class="s1">ClassLoaders.java:42</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback.enhance(<span class="s1">ClassLoaderAdapterCallback.java:900</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>... 12 more</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;">Caused by: <span class="s1">org.jboss.forge.furnace.proxy.javassist.CannotCompileException</span>: by java.lang.NoClassDefFoundError: org/jboss/forge/furnace/proxy/javassist/util/proxy/Proxy</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.forge.furnace.proxy.javassist.util.proxy.FactoryHelper.toClass(<span class="s1">FactoryHelper.java:170</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.forge.furnace.proxy.javassist.util.proxy.ProxyFactory.createClass3(<span class="s1">ProxyFactory.java:507</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>... 18 more</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;">Caused by: java.lang.NoClassDefFoundError: org/jboss/forge/furnace/proxy/javassist/util/proxy/Proxy</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at java.lang.ClassLoader.defineClass1(<span class="s1">Native Method</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at java.lang.ClassLoader.defineClass(<span class="s1">ClassLoader.java:760</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at sun.reflect.GeneratedMethodAccessor95.invoke(Unknown Source)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at sun.reflect.DelegatingMethodAccessorImpl.invoke(<span class="s1">DelegatingMethodAccessorImpl.java:43</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at java.lang.reflect.Method.invoke(<span class="s1">Method.java:483</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.forge.furnace.proxy.javassist.util.proxy.FactoryHelper.toClass2(<span class="s1">FactoryHelper.java:182</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.jboss.forge.furnace.proxy.javassist.util.proxy.FactoryHelper.toClass(<span class="s1">FactoryHelper.java:164</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>... 19 more</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;">Caused by: <span class="s1">java.lang.ClassNotFoundException</span>: org.jboss.forge.furnace.proxy.javassist.util.proxy.Proxy cannot be found by org.jboss.tools.windup.runtime_3.1.0.qualifier</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(<span class="s1">BundleLoader.java:432</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.eclipse.osgi.internal.loader.BundleLoader.findClass(<span class="s1">BundleLoader.java:345</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.eclipse.osgi.internal.loader.BundleLoader.findClass(<span class="s1">BundleLoader.java:337</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(<span class="s1">ModuleClassLoader.java:160</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>at java.lang.ClassLoader.loadClass(<span class="s1">ClassLoader.java:357</span>)</p><p class="p1" style="margin: 0px;" data-mce-style="margin: 0px;"><span class="Apple-tab-span"> </span>... 26 more</p></div><div><br></div><hr id="zwchr"><div style="color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt;"><b>From: </b>"Lincoln Baxter, III" <lincolnbaxter@gmail.com><br><b>To: </b>"Windup-dev List" <windup-dev@lists.jboss.org><br><b>Cc: </b>"Lincoln Baxter, III" <lincoln@redhat.com>, "George Gastaldi" <ggastald@redhat.com><br><b>Sent: </b>Friday, March 27, 2015 12:13:03 PM<br><b>Subject: </b>Re: [windup-dev] Furnace not finding Windup FileService<br><div><br></div><div dir="ltr">Ah, well one issue is that the "*ModelServices" like FileService are not actually Furnace services.. That's unfortunate... Do you need access to the FileService?</div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Mar 25, 2015 at 12:33 PM, Ian Tewksbury <span dir="ltr"><<a href="mailto:itewk@redhat.com" target="_blank">itewk@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div style="font-family:Arial;font-size:12pt;color:#000000"><div>Lincoln,</div><div><br></div><div>Sorry. I just saw this. My email filters took over when you added the windup mailing list and it got filtered out of my main inbox.</div><div><br></div><div>The Furnace method I added was:<br></div><div><br></div><div><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> public <S> S lookupType(Class<S> service) {</span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> S instance = null;</span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> if (furnace != null) {</span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> Set<Class<S>> types = null;</span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> types = furnace.getAddonRegistry().getExportedTypes(service);</span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> </span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> if (types != null && !types.isEmpty()) {</span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> for(Class<S> type : types) {</span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> try {</span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> instance = type.newInstance();</span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> break;</span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> } catch (Exception e) {</span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> e.getMessage();</span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> //skip to next instance if this one did not work</span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> }</span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> }</span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> }</span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> }</span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> </span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> return instance;</span><br><span style="font-family:courier new,courier,monaco,monospace,sans-serif"> }</span></div><div><br></div><div>My issue was with loading "FileService.class". Calling "lookup" could not find it, but calling my new "lookupType" it could find it.<br></div><div><br></div><div>Blue Skies,</div><div>~Ian<br></div><div><br></div><hr><div style="color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt"><b>From: </b>"Lincoln Baxter, III" <<a href="mailto:lincoln@redhat.com" target="_blank">lincoln@redhat.com</a>><br><b>To: </b>"Ian Tewksbury" <<a href="mailto:itewk@redhat.com" target="_blank">itewk@redhat.com</a>><br><b>Cc: </b>"Robb Greathouse" <<a href="mailto:robb.greathouse@redhat.com" target="_blank">robb.greathouse@redhat.com</a>>, "George Gastaldi" <<a href="mailto:ggastald@redhat.com" target="_blank">ggastald@redhat.com</a>>, "Windup-dev List" <<a href="mailto:windup-dev@lists.jboss.org" target="_blank">windup-dev@lists.jboss.org</a>><br><b>Sent: </b>Monday, March 23, 2015 10:23:09 AM<div><div class="h5"><br><b>Subject: </b>Re: Furnace not finding Windup FileService<br><div><br></div><div style="font-family:times new roman,new york,times,serif;font-size:12pt;color:#000000"><div>Hey Ian,</div><div><br></div><div>(Adding windup-dev.)</div><div><br></div><div>I'm not really sure what this issue could be, but it worries me that you needed to add a method to FurnaceService. What did you add? You can't ask Furnace for an instance of a type that is not a Service. (It wouldn't know how to construct it.)</div><div><br></div><div>The last error you received worries me specifically because it makes me think that there is something funky going on with the ClassLoader hierarchy itself, and that is never good; however, it could be due to some kind of quirk with what you added (it also may be a bug), so I think I need to see what you are doing.</div><div><br></div><div>Could you show me where this code is so that I can take a look?</div><div><br></div><div>Thanks!</div><div>~Lincoln</div><div><br></div><hr><div style="color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt"><b>From: </b>"Ian Tewksbury" <<a href="mailto:itewk@redhat.com" target="_blank">itewk@redhat.com</a>><br><b>To: </b>"Lincoln Baxter" <<a href="mailto:lbaxter@redhat.com" target="_blank">lbaxter@redhat.com</a>><br><b>Cc: </b>"Robb Greathouse" <<a href="mailto:robb.greathouse@redhat.com" target="_blank">robb.greathouse@redhat.com</a>><br><b>Sent: </b>Sunday, March 22, 2015 9:57:36 PM<br><b>Subject: </b>Re: Furnace not finding Windup FileService<br><div><br></div><div style="font-family:Arial;font-size:12pt;color:#000000"><div>Licoln,<br></div><div><br></div><div>Got passed those previous errors. New error now:</div><div><br></div><div><p style="margin:0px"><span style="font-family:'courier new',courier,monaco,monospace,sans-serif">!ENTRY <a href="http://org.eclipse.core.jobs" target="_blank">org.eclipse.core.jobs</a> 4 2 2015-03-22 21:52:59.403</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif">!MESSAGE An internal error occurred during: "Validating".</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif">!STACK 0</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif">java.lang.LinkageError: loader constraint violation: loader (instance of org/jboss/tools/forge/core/internal/furnace/CompositeFurnaceClassLoader) previously initiated loading for a different type with name "org/jboss/forge/furnace/util/Predicate"</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at java.lang.Class.getDeclaredMethods0(Native Method)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at java.lang.Class.privateGetDeclaredMethods(Class.java:2615)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at java.lang.Class.getDeclaredMethods(Class.java:1860)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.forge.furnace.proxy.javassist.util.proxy.SecurityActions.getDeclaredMethods(SecurityActions.java:30)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.forge.furnace.proxy.javassist.util.proxy.RuntimeSupport.findMethod2(RuntimeSupport.java:134)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.forge.furnace.proxy.javassist.util.proxy.RuntimeSupport.findMethod(RuntimeSupport.java:65)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.forge.furnace.proxy.javassist.util.proxy.RuntimeSupport.find2Methods(RuntimeSupport.java:53)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.windup.exec.configuration.WindupConfiguration_$$_javassist_5effd6de-6f27-4c9d-9f94-b9492b06844c.<clinit>(WindupConfiguration_$$_javassist_5effd6de-6f27-4c9d-9f94-b9492b06844c.java)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at sun.misc.Unsafe.ensureClassInitialized(Native Method)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAccessorFactory.java:43)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at sun.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:140)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at java.lang.reflect.Field.acquireFieldAccessor(Field.java:1057)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at java.lang.reflect.Field.getFieldAccessor(Field.java:1038)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at java.lang.reflect.Field.set(Field.java:741)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.forge.furnace.proxy.javassist.util.proxy.ProxyFactory.setField(ProxyFactory.java:525)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.forge.furnace.proxy.javassist.util.proxy.ProxyFactory.createClass3(ProxyFactory.java:508)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.forge.furnace.proxy.javassist.util.proxy.ProxyFactory.createClass2(ProxyFactory.java:492)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.forge.furnace.proxy.javassist.util.proxy.ProxyFactory.createClass1(ProxyFactory.java:428)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.forge.furnace.proxy.javassist.util.proxy.ProxyFactory.createClass(ProxyFactory.java:400)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback$3.call(ClassLoaderAdapterCallback.java:987)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.forge.furnace.util.ClassLoaders.executeIn(ClassLoaders.java:42)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback.enhance(ClassLoaderAdapterCallback.java:900)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback.enhanceResult(ClassLoaderAdapterCallback.java:253)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback.access$200(ClassLoaderAdapterCallback.java:37)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback$2.call(ClassLoaderAdapterCallback.java:124)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.forge.furnace.util.ClassLoaders.executeIn(ClassLoaders.java:42)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback.invoke(ClassLoaderAdapterCallback.java:96)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.forge.furnace.services.Imported_$$_javassist_34707ba1-98fb-4b8a-93ed-559398be971b.get(Imported_$$_javassist_34707ba1-98fb-4b8a-93ed-559398be971b.java)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.tools.forge.core.furnace.FurnaceService.lookup(FurnaceService.java:96)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.tools.windup.core.WindupService.getServiceFromFurnace(WindupService.java:485)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.tools.windup.core.WindupService.generateGraph(WindupService.java:226)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.tools.windup.core.WindupService.getGraph(WindupService.java:301)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.tools.windup.core.WindupService.getInlineHints(WindupService.java:103)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.jboss.tools.windup.core.internal.validators.WindupValidator.validate(WindupValidator.java:81)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.eclipse.wst.validation.Validator$V2.validate(Validator.java:1159)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.eclipse.wst.validation.internal.ValManager.validate(ValManager.java:704)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.eclipse.wst.validation.internal.ValManager$1.visit(ValManager.java:665)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.eclipse.wst.validation.internal.ValManager.accept(ValManager.java:810)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.eclipse.wst.validation.internal.ValManager.validate(ValManager.java:669)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.eclipse.wst.validation.internal.ValidationRunner.execute(ValidationRunner.java:134)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.eclipse.wst.validation.internal.ValidationRunner.validate(ValidationRunner.java:68)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.eclipse.wst.validation.ui.internal.ManualValidationRunner.runInWorkspace(ManualValidationRunner.java:83)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)</span><br><span style="font-family:'courier new',courier,monaco,monospace,sans-serif"> at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)</span></p></div><div><br></div><div><br></div><div><br></div><div>Blue Skies,</div><div>~Ian</div><div><br></div><hr><div style="color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt"><b>From: </b>"Ian Tewksbury" <<a href="mailto:itewk@redhat.com" target="_blank">itewk@redhat.com</a>><br><b>To: </b>"Lincoln Baxter" <<a href="mailto:lbaxter@redhat.com" target="_blank">lbaxter@redhat.com</a>><br><b>Cc: </b>"Robb Greathouse" <<a href="mailto:robb.greathouse@redhat.com" target="_blank">robb.greathouse@redhat.com</a>><br><b>Sent: </b>Sunday, March 22, 2015 7:49:28 PM<br><b>Subject: </b>Re: Furnace not finding Windup FileService<br><div><br></div><div style="font-family:Arial;font-size:12pt;color:#000000"><div>Licncoln,</div><div><br></div><div>I added some new API to the FurnaceService to be able to lookup a type which got me passed the below errors.</div><div><br></div><div>Now I am running into:</div><div><br></div><div><p style="margin:0px">java.lang.NoClassDefFoundError: com/tinkerpop/frames/FramedGraph<br> at java.lang.Class.getDeclaredMethods0(Native Method)<br> at java.lang.Class.privateGetDeclaredMethods(Class.java:2615)<br> at java.lang.Class.getDeclaredMethods(Class.java:1860)<br> at org.jboss.forge.furnace.proxy.javassist.util.proxy.SecurityActions.getDeclaredMethods(SecurityActions.java:30)<br> at org.jboss.forge.furnace.proxy.javassist.util.proxy.ProxyFactory.getMethods(ProxyFactory.java:1121)<br> at org.jboss.forge.furnace.proxy.javassist.util.proxy.ProxyFactory.getMethods(ProxyFactory.java:1096)<br> at org.jboss.forge.furnace.proxy.javassist.util.proxy.ProxyFactory.makeSortedMethodList(ProxyFactory.java:803)<br> at org.jboss.forge.furnace.proxy.javassist.util.proxy.ProxyFactory.computeSignature(ProxyFactory.java:810)<br> at org.jboss.forge.furnace.proxy.javassist.util.proxy.ProxyFactory.createClass(ProxyFactory.java:398)<br> at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback$3.call(ClassLoaderAdapterCallback.java:987)<br> at org.jboss.forge.furnace.util.ClassLoaders.executeIn(ClassLoaders.java:42)<br> at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback.enhance(ClassLoaderAdapterCallback.java:900)<br> at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback.enhanceResult(ClassLoaderAdapterCallback.java:277)<br> at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback.access$200(ClassLoaderAdapterCallback.java:37)<br> at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback$2.call(ClassLoaderAdapterCallback.java:124)<br> at org.jboss.forge.furnace.util.ClassLoaders.executeIn(ClassLoaders.java:42)<br> at org.jboss.forge.furnace.proxy.ClassLoaderAdapterCallback.invoke(ClassLoaderAdapterCallback.java:96)<br> at org.jboss.windup.graph.GraphContextFactory_$$_javassist_2a504b60-d6e3-450e-87b5-f41eb849ab81.create(GraphContextFactory_$$_javassist_2a504b60-d6e3-450e-87b5-f41eb849ab81.java)<br> at org.jboss.tools.windup.core.WindupService.generateGraph(WindupService.java:235)<br> at org.jboss.tools.windup.core.WindupService.getGraph(WindupService.java:303)<br> at org.jboss.tools.windup.core.WindupService.getInlineHints(WindupService.java:103)<br> at org.jboss.tools.windup.core.internal.validators.WindupValidator.validate(WindupValidator.java:81)<br> at org.eclipse.wst.validation.Validator$V2.validate(Validator.java:1159)<br> at org.eclipse.wst.validation.internal.ValManager.validate(ValManager.java:704)<br> at org.eclipse.wst.validation.internal.ValManager$1.visit(ValManager.java:665)<br> at org.eclipse.wst.validation.internal.ValManager.accept(ValManager.java:810)<br> at org.eclipse.wst.validation.internal.ValManager.validate(ValManager.java:669)<br> at org.eclipse.wst.validation.internal.ValidationRunner.execute(ValidationRunner.java:134)<br></p><p style="margin:0px">at org.eclipse.wst.validation.internal.ValidationRunner.validate(ValidationRunner.java:68)<br> at org.eclipse.wst.validation.ui.internal.ManualValidationRunner.runInWorkspace(ManualValidationRunner.java:83)<br> at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)<br> at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)<br>Caused by: java.lang.ClassNotFoundException: com.tinkerpop.frames.FramedGraph cannot be found by org.jboss.tools.windup.runtime_3.1.0.qualifier<br> at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:432)<br> at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:345)<br> at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:337)<br> at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:160)<br> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)<br> ... 32 more</p><p style="margin:0px"><br></p><p style="margin:0px">I have verified that the Furnace add on 'org-jboss-windup-graph-windup-graph' is being loaded and contains the windup-frames JAR so I am not clear why furnace is not able to load the class.</p><p style="margin:0px"><br></p><p style="margin:0px">Ideas?</p><p style="margin:0px"><br></p><p style="margin:0px">Blue Skies,</p><p style="margin:0px">~Ian</p></div><div><br></div><hr><div style="color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt"><b>From: </b>"Ian Tewksbury" <<a href="mailto:itewk@redhat.com" target="_blank">itewk@redhat.com</a>><br><b>To: </b>"Lincoln Baxter" <<a href="mailto:lbaxter@redhat.com" target="_blank">lbaxter@redhat.com</a>><br><b>Cc: </b>"Robb Greathouse" <<a href="mailto:robb.greathouse@redhat.com" target="_blank">robb.greathouse@redhat.com</a>><br><b>Sent: </b>Sunday, March 22, 2015 5:18:55 AM<br><b>Subject: </b>Re: Furnace not finding Windup FileService<br><div><br></div><div style="font-family:Arial;font-size:12pt;color:#000000"><div>Lioncoln,<br></div><div><br></div><div>Looking here, <a href="http://grepcode.com/file/repository.jboss.org/nexus/content/repositories/releases/org.jboss.forge.furnace.container/cdi-impl/2.10.1.Final/org/jboss/forge/furnace/container/cdi/impl/WeldServiceRegistry.java#WeldServiceRegistry.getExportedInstances%28java.lang.Class%29" target="_blank">http://grepcode.com/file/repository.jboss.org/nexus/content/repositories/releases/org.jboss.forge.furnace.container/cdi-impl/2.10.1.Final/org/jboss/forge/furnace/container/cdi/impl/WeldServiceRegistry.java#WeldServiceRegistry.getExportedInstances%28java.lang.Class%29</a>, and debuging through eclipse without source, I have figured out it is choking on like 189. It appears this #getExportedInstances method is only for loading beans. I see a #getExportedType which is what I am guessing I need, but the only Furnace API I see is FurnaceService.INSTANCE.lookup(clazz) which ends up doing this bean lookup rather then a type lookup. Am I missing something here? Is there just missing API to look up a type and not a bean via Furnace?</div><div><br></div><div>Blue Skies,</div><div>~Ian</div><div><br></div><hr><div style="color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt"><b>From: </b>"Ian Tewksbury" <<a href="mailto:itewk@redhat.com" target="_blank">itewk@redhat.com</a>><br><b>To: </b>"Lincoln Baxter" <<a href="mailto:lbaxter@redhat.com" target="_blank">lbaxter@redhat.com</a>>, "Robb Greathouse" <<a href="mailto:robb.greathouse@redhat.com" target="_blank">robb.greathouse@redhat.com</a>><br><b>Sent: </b>Sunday, March 22, 2015 4:57:43 AM<br><b>Subject: </b>Furnace not finding Windup FileService<br><div><br></div><div style="font-family:Arial;font-size:12pt;color:#000000"><div>Lincoln,</div><div><br></div><div>I can not figure out why Furnance is reporting that it can not find the Windup FileService despite the fact that it is reporting it loaded the graph-api addon. Any ideas?</div><div><br></div><div>Please see attached for the log. It clearly shows the graph-api addon being loaded. And I have verified that addon contains the graph-api.jar which contains the FileService. I have tried to debug the furnace stuff but I keep running into source not found issues and getting lost. I have been able to tell that ImportedImpl#getExportedInstances is getting called and it is looping over the graph-api addon. But it does not seem to find the class in there, but I have not been able to debug into furnace beyond that point.</div><div><br></div><div>Looking at the variable state the WeldServiceRegistery instance for the graph-api addon shows the FIleService there. For some reason it is just not being retrevied. I have attached a screenshoot of the variable state from within ImportedImpl#getExportedInstances. Can you think of any reason serviceRegistry.getExportedInstances(type) would be failing giving all of this?</div><div><br></div><div><img src="cid:dec37f18ff57cb4a040b918ff56272fb78a240d1@zimbra"></div><div><br></div><div>~Ian</div></div></div><div><br></div></div></div><div><br></div></div></div><div><br></div></div></div><div><br></div></div></div></div></div><div><br></div></div></div><br>_______________________________________________<br>
windup-dev mailing list<br>
<a href="mailto:windup-dev@lists.jboss.org" target="_blank">windup-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/windup-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/windup-dev</a><br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature">Lincoln Baxter, III<br><a href="http://ocpsoft.org" target="_blank">http://ocpsoft.org</a><br>"Simpler is better."</div>
</div>
</div><div><br></div></div></body></html>