AbstractExtensionConnector class not found when importing add-on ComponentH

Hello all,

I need to do modifications to the ComponentHighlighter add-on so I imported it into my (maven) project (inside src/main/java). When I run mvn clean install from Eclipse, both *Widgetset.gwt.xml files are modified and I get a BUILD SUCCESS.

When deploying on TomEE 1.7.1 there’s no problem but when I’m deploying my app on Weblogic 12.1.3 then I get the following errors:

<Mar 19, 2015 2:45:28 PM CET> <Warning> <Deployer> <BEA-149004> <Failures were detected while initiating deploy task for application "web-client-prospero".> 
<Mar 19, 2015 2:45:28 PM CET> <Warning> <Deployer> <BEA-149078> <Stack trace for message 149004
weblogic.application.ModuleException: java.lang.ClassNotFoundException: com.vaadin.client.extensions.AbstractExtensionConnector
    at weblogic.application.internal.ExtensibleModuleWrapper.prepare(ExtensibleModuleWrapper.java:114)
    at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:100)
    at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleStateDriver.java:175)
    at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleStateDriver.java:170)
    at weblogic.application.utils.StateMachineDriver$ParallelChange.run(StateMachineDriver.java:80)
    Truncated. see log file for complete stacktrace
Caused By: java.lang.ClassNotFoundException: com.vaadin.client.extensions.AbstractExtensionConnector
    at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:357)
    at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:318)
    at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:80)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    Truncated. see log file for complete stacktrace
> 

Strangely, on our continuous integration I have another error:

java.lang.ClassNotFoundException: com.google.gwt.resources.client.CssResource
at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:357)
at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:318)
at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:80)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:186)
at weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAwareClassLoader.java:59)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at weblogic.utils.classloaders.GenericClassLoader.defineClass(GenericClassLoader.java:412)
at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:366)
at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:318)
at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:80)
at weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAwareClassLoader.java:56)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:344)
at com.oracle.injection.integration.CDIModuleExtension.addClassToSet(CDIModuleExtension.java:442)
at com.oracle.injection.integration.CDIModuleExtension.getWebInfClassesManagedBeanClasses(CDIModuleExtension.java:384)
at com.oracle.injection.integration.CDIModuleExtension.loadManagedBeanClassesFromWebArchive(CDIModuleExtension.java:341)
at com.oracle.injection.integration.CDIModuleExtension.createWebModuleInjectionArchive(CDIModuleExtension.java:194)
at com.oracle.injection.integration.CDIModuleExtension.createInjectionArchive(CDIModuleExtension.java:182)
at com.oracle.injection.integration.CDIModuleExtension.postPrepare(CDIModuleExtension.java:85)
at weblogic.application.internal.ExtensibleModuleWrapper$PrepareStateChange.next(ExtensibleModuleWrapper.java:297)
at weblogic.application.internal.ExtensibleModuleWrapper$PrepareStateChange.next(ExtensibleModuleWrapper.java:285)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:42)
at weblogic.application.internal.ExtensibleModuleWrapper.prepare(ExtensibleModuleWrapper.java:109)
at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:100)
at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleStateDriver.java:175)
at weblogic.application.internal.flow.ModuleStateDriver$1.next(ModuleStateDriver.java:170)
at weblogic.application.utils.StateMachineDriver$ParallelChange.run(StateMachineDriver.java:80)
at weblogic.work.ContextWrap.run(ContextWrap.java:40)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:548)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:311)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:263)

I’m not sure I’m doing this the correct way but it works on TomEE so why not on Weblogic?
I’m using the JDK8, Vaadin 7.3.10 and the Vaadin CDI add-on 1.0.2.

The main Widgetset.gwt.xml file is in
src\main\java\ch\sage\prospero\wcp\ui\application\WcpWidgetset.gwt.xml
and the ComponentHighlighter one is in
src\main\java\org\vaadin\highlighter\ComponentHighlighterWidgetset.gwt.xml
.

WcpWidgetset.gwt.xml:
<module>
<inherits name="com.vaadin.DefaultWidgetSet" />
<inherits name="com.vaadin.addon.charts.Widgetset" />
<inherits name="com.vaadin.addon.timeline.gwt.TimelineWidgetSet" />
<inherits name="com.ejt.vaadin.sizereporter.WidgetSet" />
<inherits name="org.tepi.filtertable.gwt.FilterTableWidgetset" />
<inherits name="org.vaadin.hene.popupbutton.widgetset.PopupbuttonWidgetset" />
<inherits name="org.vaadin.highlighter.ComponentHighlighterWidgetset" />
</module>

ComponentHighlighterWidgetset.gwt.xml:
<module>
<inherits name="com.vaadin.DefaultWidgetSet" />
<inherits name="com.google.gwt.resources.Resources" />
<inherits name="ch.sage.prospero.wcp.ui.application.WcpWidgetset" />
<inherits name="org.vaadin.hene.popupbutton.widgetset.PopupbuttonWidgetset" />
<inherits name="org.tepi.filtertable.gwt.FilterTableWidgetset" />
<inherits name="com.vaadin.addon.timeline.gwt.TimelineWidgetSet" />
<inherits name="com.ejt.vaadin.sizereporter.WidgetSet" />
<inherits name="com.vaadin.addon.charts.Widgetset" />
</module>

Thanks a lot!
18707.txt (9.44 KB)

In the POM, vaadin-client was in provided. I removed the corresponding line and everything seems to work fine now.

<dependency>
  <groupId>com.vaadin</groupId>
  <artifactId>vaadin-client</artifactId>
  <version>${vaadin.version}</version>
  <!--<scope>provided</scope>-->
</dependency>