Unknown Windowtype Error - NoClassDefFoundError: org/eclipse

GWT Designer allows you to quickly create the modules, composites, panels, remote services and other elements that comprise Google Web Tookit applications.

Moderators: Konstantin.Scheglov, gnebling, Alexander.Mitin, jwren, Eric Clayberg

Unknown Windowtype Error - NoClassDefFoundError: org/eclipse

Postby chuhan » Wed Feb 07, 2007 9:26 am

Hi,

Suddenly, when i open any composite, i get an Unknow winow type error.

Does anyone know what possibly causes this error?

thanks in advance.

======== exception ===================
java.lang.NoClassDefFoundError: org/eclipse/wst/sse/ui/internal/reconcile/validator/ValidationHelper
at com.genuitec.myeclipse.ui.action.ExcludeFromValidationActionDelegate.isEnabled(ExcludeFromValidationActionDelegate.java:212)
at com.genuitec.myeclipse.ui.action.ExcludeFromValidationActionDelegate.selectionChanged(ExcludeFromValidationActionDelegate.java:196)
at org.eclipse.ui.internal.PluginAction.refreshEnablement(PluginAction.java:208)
at org.eclipse.ui.internal.PluginAction.selectionChanged(PluginAction.java:280)
at org.eclipse.ui.internal.ObjectActionContributor.contributeObjectActions(ObjectActionContributor.java:144)
at org.eclipse.ui.internal.ObjectActionContributorManager.contributeObjectActions(ObjectActionContributorManager.java:96)
at org.eclipse.ui.internal.PopupMenuExtender.addObjectActions(PopupMenuExtender.java:253)
at org.eclipse.ui.internal.PopupMenuExtender.menuAboutToShow(PopupMenuExtender.java:315)
at org.eclipse.jface.action.MenuManager.fireAboutToShow(MenuManager.java:289)
at org.eclipse.jface.action.MenuManager.handleAboutToShow(MenuManager.java:395)
at org.eclipse.jface.action.MenuManager.access$1(MenuManager.java:391)
at org.eclipse.jface.action.MenuManager$2.menuShown(MenuManager.java:417)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:117)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:928)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:952)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:933)
at org.eclipse.swt.widgets.Control.WM_INITMENUPOPUP(Control.java:3556)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:3272)
at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1539)
at org.eclipse.swt.widgets.Shell.windowProc(Shell.java:1634)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4025)
at org.eclipse.swt.internal.win32.OS.TrackPopupMenu(Native Method)
at org.eclipse.swt.widgets.Menu._setVisible(Menu.java:225)
at org.eclipse.swt.widgets.Display.runPopups(Display.java:3374)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2962)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1914)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1878)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:419)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95)
at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336)
at org.eclipse.core.launcher.Main.basicRun(Main.java:280)
at org.eclipse.core.launcher.Main.run(Main.java:977)
at org.eclipse.core.launcher.Main.main(Main.java:952)
======== ====================================
chuhan
 
Posts: 28
Joined: Tue Nov 14, 2006 3:28 pm

Re: Unknown Windowtype Error - NoClassDefFoundError: org/ecl

Postby Eric Clayberg » Wed Feb 07, 2007 10:00 am

chuhan wrote:Suddenly, when i open any composite, i get an Unknow winow type error.
Does anyone know what possibly causes this error?
======== exception ===================
java.lang.NoClassDefFoundError: org/eclipse/wst/sse/ui/internal/reconcile/validator/ValidationHelper
at com.genuitec.myeclipse.ui.action.ExcludeFromValidationActionDelegate.isEnabled(ExcludeFromValidationActionDelegate.java:212)
at com.genuitec.myeclipse.ui.action.ExcludeFromValidationActionDelegate.selectionChanged(ExcludeFromValidationActionDelegate.java:196)

Looks like a MyEclipse problem of some sort.
Eric Clayberg
Software Engineering Manager
Google
http://code.google.com/webtoolkit/download.html

Author: "Eclipse Plug-ins"
http://www.qualityeclipse.com
Eric Clayberg
Moderator
 
Posts: 4503
Joined: Tue Sep 30, 2003 6:39 am
Location: Boston, MA USA

Re: Unknown Windowtype Error - NoClassDefFoundError: org/ecl

Postby chuhan » Wed Feb 07, 2007 11:42 am

Eric Clayberg wrote:
chuhan wrote:Suddenly, when i open any composite, i get an Unknow winow type error.
Does anyone know what possibly causes this error?
======== exception ===================
java.lang.NoClassDefFoundError: org/eclipse/wst/sse/ui/internal/reconcile/validator/ValidationHelper
at com.genuitec.myeclipse.ui.action.ExcludeFromValidationActionDelegate.isEnabled(ExcludeFromValidationActionDelegate.java:212)
at com.genuitec.myeclipse.ui.action.ExcludeFromValidationActionDelegate.selectionChanged(ExcludeFromValidationActionDelegate.java:196)

Looks like a MyEclipse problem of some sort.


Hi, Eric

It doesn't seems that it a MyEclipse problem because after I installed everything again without MyEclipse, still it has the same symptom. And if I create a new GWT project, in the new project, Designer is working fine.

thanks
chuhan
 
Posts: 28
Joined: Tue Nov 14, 2006 3:28 pm

Re: Unknown Windowtype Error - NoClassDefFoundError: org/ecl

Postby Eric Clayberg » Wed Feb 07, 2007 1:36 pm

chuhan wrote:It doesn't seems that it a MyEclipse problem because after I installed everything again without MyEclipse, still it has the same symptom.

The exception you reported was the following...
Code: Select all
java.lang.NoClassDefFoundError: org/eclipse/wst/sse/ui/internal/reconcile/validator/ValidationHelper
    at com.genuitec.myeclipse.ui.action.ExcludeFromValidationActionDelegate.isEnabled(ExcludeFromValidationActionDelegate.java:212)
    at com.genuitec.myeclipse.ui.action.ExcludeFromValidationActionDelegate.selectionChanged(ExcludeFromValidationActionDelegate.java:196)

That is most definitely a MyEclipse exception as you can see from the package names.

chuhan wrote:And if I create a new GWT project, in the new project, Designer is working fine.

Does that mean you are still having a problem or not?

If you are still having a problem, please provide a test case and your Eclipse ".log" file (or list any Designer related exceptions in that log).
Eric Clayberg
Software Engineering Manager
Google
http://code.google.com/webtoolkit/download.html

Author: "Eclipse Plug-ins"
http://www.qualityeclipse.com
Eric Clayberg
Moderator
 
Posts: 4503
Joined: Tue Sep 30, 2003 6:39 am
Location: Boston, MA USA

Re: Unknown Windowtype Error - NoClassDefFoundError: org/ecl

Postby chuhan » Sat Feb 10, 2007 12:08 am

Hi, Eric.

By mistake, I opened a wrong log file and posted a wrong exception message.
I'm sorry about confusing you. Anyway, after reinstalling Eclipse 2-3 times, I could manage to make it work.

But today, I have the same error from one Composite class.
A weird thing is that if i get rid of one of the delegate method from the class, Designer works fine.

The following is the complete class definition of the Composite and exception from log file.
Without "showSearchBox()" at the bottom, Designer comes back.

Code: Select all
public abstract class BodyBaseFull extends Composite implements MainBody{

   /********************************************/
   private GeneralPaneHorizontal generalPane;
   private VerticalPanel mainVerticalPane;
   /********************************************/
   protected boolean initialized;

   public BodyBaseFull() {
      mainVerticalPane = new VerticalPanel();
      initWidget(mainVerticalPane);
      {
         generalPane = new GeneralPaneHorizontal();
         mainVerticalPane.add(generalPane);

      }
      addStyleName("x-body-panel");
   }

   public void initialize() {
      checkArgument();
      initializeInternal();

      initialized=true;
   }

   public boolean isInitialized() {
      return initialized;
   }

   public void release() {
      releaseInternal();
      initialized=false;
   }


   public HorizontalPanel getHeaderHorizontalPanel() {
      return generalPane.getHeaderHorizontalPanel();
   }

   public HorizontalPanel getHeaderSubHorizontalPanel0() {
      return generalPane.getHeaderSubHorizontalPanel0();
   }

   public HorizontalPanel getHeaderSubHorizontalPanel1() {
      return generalPane.getHeaderSubHorizontalPanel1();
   }

   public Label getHeaderTitleLabel() {
      return generalPane.getHeaderTitleLabel();
   }

   public Image getRightTopImg() {
      return generalPane.getRightTopImg();
   }

   public TextBox getSearchTextBox() {
      return generalPane.getSearchTextBox();
   }

   public Panel getContentPanel() {
      return generalPane.getContentPanel();
   }


               // this method is the trouble maker...
   public void showSearchBox(boolean bool) {
      generalPane.showSearchBox(bool);
   }
   
   public abstract void checkArgument();
   protected abstract void initializeInternal();
   protected abstract void releaseInternal();

}


Code: Select all
!ENTRY com.swtdesigner 4 4 2007-02-09 23:38:37.859
!MESSAGE Designer internal error [6.1.1.20070209141655]: java.lang.StackOverflowError
!STACK 0
java.lang.StackOverflowError
   at java.util.HashMap.get(Unknown Source)
   at org.eclipse.jdt.core.dom.ASTNode.getProperty(ASTNode.java:2101)
   at com.swtdesigner.model.util.ast.DesignerASTCacheStrategy.getMethodInvocations(DesignerASTCacheStrategy.java:48)
   at com.swtdesigner.model.util.ast.ASTNodeUtilities.getMethodInvocations(ASTNodeUtilities.java:2619)
   at com.swtdesigner.model.JavaInfo.isRepresentedBySingleVariableDeclaration(JavaInfo.java:3838)
   at com.swtdesigner.model.JavaInfo.isRepresentedByNoCache(JavaInfo.java:3827)
   at com.swtdesigner.model.JavaInfo.isRepresentedBy(JavaInfo.java:3716)
   at com.swtdesigner.model.swing.JavaBeanInfo.isRepresentedBy(JavaBeanInfo.java:1253)
   at com.swtdesigner.model.JavaInfo.isRepresentedByNoCache(JavaInfo.java:3810)
   at com.swtdesigner.model.JavaInfo.isRepresentedBy(JavaInfo.java:3716)
   at com.swtdesigner.model.swing.JavaBeanInfo.isRepresentedBy(JavaBeanInfo.java:1253)
   at com.swtdesigner.model.JavaInfo.isRepresentedBySingleVariableDeclaration(JavaInfo.java:3842)
   at com.swtdesigner.model.JavaInfo.isRepresentedByNoCache(JavaInfo.java:3827)
   at com.swtdesigner.model.JavaInfo.isRepresentedBy(JavaInfo.java:3716)
   at com.swtdesigner.model.swing.JavaBeanInfo.isRepresentedBy(JavaBeanInfo.java:1253)
...
...


Thanks in advance.

chuhan
      chuhan
       
      Posts: 28
      Joined: Tue Nov 14, 2006 3:28 pm

      Re: Unknown Windowtype Error - NoClassDefFoundError: org/ecl

      Postby Eric Clayberg » Sun Feb 11, 2007 5:42 am

      Try this again with the latest build.
      Eric Clayberg
      Software Engineering Manager
      Google
      http://code.google.com/webtoolkit/download.html

      Author: "Eclipse Plug-ins"
      http://www.qualityeclipse.com
      Eric Clayberg
      Moderator
       
      Posts: 4503
      Joined: Tue Sep 30, 2003 6:39 am
      Location: Boston, MA USA

      Re: Unknown Windowtype Error - NoClassDefFoundError: org/ecl

      Postby chuhan » Mon Feb 12, 2007 9:17 am

      Eric Clayberg wrote:Try this again with the latest build.


      Hi, Eric.

      With the new build, Designer is working fine with the Composite. But, the classes inheriting the Composite doesn't work. When I open them in Design view, i get an NullpointerException. I had this error before but I didn't mentioned because I thought the problem was caused by the Composite and it would work if the Composite error gets fixed, but it still doesn't work

      The following is the exception message.

      Code: Select all

      !ENTRY com.swtdesigner 4 4 2007-02-12 09:09:54.640
      !MESSAGE Designer internal error [6.1.1.20070212063818]: com.swtdesigner.properties.PropertyException: java.lang.NullPointerException
      !STACK 0
      org.apache.commons.lang.exception.NestableError: com.swtdesigner.properties.PropertyException: java.lang.NullPointerException
         at com.swtdesigner.model.swing.properties.custom.DesignTimeHelper.execute(DesignTimeHelper.java:56)
         at com.swtdesigner.model.JavaInfo.notifyPropertyChanged(JavaInfo.java:5446)
         at com.swtdesigner.model.JavaInfo.notifyPropertyChanged(JavaInfo.java:5428)
         at com.swtdesigner.gef.common.property.DesignerEditorPropertyComposite.handleRootNodeSelected(DesignerEditorPropertyComposite.java:588)
         at com.swtdesigner.gef.common.property.DesignerEditorPropertyComposite.updatePropertyComposite(DesignerEditorPropertyComposite.java:789)
         at com.swtdesigner.gef.DesignerEditor.parseCompilationUnit(DesignerEditor.java:1094)
         at com.swtdesigner.gef.DesignerEditor.refreshDesignView(DesignerEditor.java:1144)
         at com.swtdesigner.gef.DesignerEditor$14.widgetSelected(DesignerEditor.java:891)
         at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:90)
         at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
         at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:928)
         at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3465)
         at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3079)
         at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1945)
         at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1909)
         at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:425)
         at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
         at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at org.eclipse.equinox.internal.app.EclipseAppContainer.callMethod(EclipseAppContainer.java:522)
         at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:147)
         at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:104)
         at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:74)
         at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354)
         at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:170)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at org.eclipse.core.launcher.Main.invokeFramework(Main.java:339)
         at org.eclipse.core.launcher.Main.basicRun(Main.java:283)
         at org.eclipse.core.launcher.Main.run(Main.java:984)
         at org.eclipse.core.launcher.Main.main(Main.java:959)
      Caused by: com.swtdesigner.properties.PropertyException: java.lang.NullPointerException
         at com.swtdesigner.gwt.model.widgets.panel.TopLevelUtils.createShot(TopLevelUtils.java:112)
         at com.swtdesigner.gwt.model.widgets.panel.ThisCompositeInfo.createGUIShot(ThisCompositeInfo.java:196)
         at com.swtdesigner.model.JavaInfo$19.execute(JavaInfo.java:5453)
         at com.swtdesigner.model.swing.properties.custom.DesignTimeHelper.execute(DesignTimeHelper.java:54)
         ... 35 more
      Caused by: java.lang.NullPointerException
         at com.swtdesigner.gwt.model.widgets.UIObjectInfo.fetchElementAbsoluteBounds(UIObjectInfo.java:422)
         at com.swtdesigner.gwt.model.widgets.UIObjectInfo.fetchObjectAbsoluteBounds(UIObjectInfo.java:412)
         at com.swtdesigner.gwt.model.widgets.UIObjectInfo.fetchAbsoluteBounds(UIObjectInfo.java:406)
         at com.swtdesigner.gwt.model.widgets.panel.TopLevelUtils.createShot(TopLevelUtils.java:85)
         ... 38 more


      thank you.

      chuhan[/code]
      chuhan
       
      Posts: 28
      Joined: Tue Nov 14, 2006 3:28 pm

      Re: Unknown Windowtype Error - NoClassDefFoundError: org/ecl

      Postby Eric Clayberg » Mon Feb 12, 2007 9:59 am

      Please provide a test case.
      Eric Clayberg
      Software Engineering Manager
      Google
      http://code.google.com/webtoolkit/download.html

      Author: "Eclipse Plug-ins"
      http://www.qualityeclipse.com
      Eric Clayberg
      Moderator
       
      Posts: 4503
      Joined: Tue Sep 30, 2003 6:39 am
      Location: Boston, MA USA

      Re: Unknown Windowtype Error - NoClassDefFoundError: org/ecl

      Postby chuhan » Mon Feb 12, 2007 10:35 am

      Eric Clayberg wrote:Please provide a test case.


      Hi, Eric.

      I could duplicate the same error by creating very simple two classes.

      In the example, the first one is an abastrct Composite class and the second one is inheriting it. When I open the second one in Design view, i get NullPointerException.


      Code: Select all
      public abstract class TestAbstract extends Composite {
         public TestAbstract() {
            {
               final HorizontalPanel horizontalPanel = new HorizontalPanel();
               initWidget(horizontalPanel);
            }
         }
         
         public abstract void testmethod();
      }


      public class TestConcrete extends TestAbstract {

         public void testmethod() {
            
         }

      }




      thanks in advance.

      chuhan
      chuhan
       
      Posts: 28
      Joined: Tue Nov 14, 2006 3:28 pm

      Re: Unknown Windowtype Error - NoClassDefFoundError: org/ecl

      Postby Eric Clayberg » Mon Feb 12, 2007 10:52 am

      Make TestAbstract non-abstract and it should work.

      GWT Designer needs to be able to instantiate any superclass used by a visual subclass, so you won't be able to edit any direct subclass of an abstract class.

      BTW, you also need to expose horizontalPanel as a public component. Otherwise, you won't be able to add any children to it in the subclass.
      Eric Clayberg
      Software Engineering Manager
      Google
      http://code.google.com/webtoolkit/download.html

      Author: "Eclipse Plug-ins"
      http://www.qualityeclipse.com
      Eric Clayberg
      Moderator
       
      Posts: 4503
      Joined: Tue Sep 30, 2003 6:39 am
      Location: Boston, MA USA

      Re: Unknown Windowtype Error - NoClassDefFoundError: org/ecl

      Postby chuhan » Mon Feb 12, 2007 11:25 am

      Eric Clayberg wrote:Make TestAbstract non-abstract and it should work.

      GWT Designer needs to be able to instantiate any superclass used by a visual subclass, so you won't be able to edit any direct subclass of an abstract class.

      BTW, you also need to expose horizontalPanel as a public component. Otherwise, you won't be able to add any children to it in the subclass.


      thanks Eric.

      I can make it concret but the reason that we use an abstract class is to enforce inheriting classes to implement the abstract methods. I believe that it would be very helpful if Deisnger allows to do it. Do you have any plan to allow it?


      chuhan
      chuhan
       
      Posts: 28
      Joined: Tue Nov 14, 2006 3:28 pm

      Re: Unknown Windowtype Error - NoClassDefFoundError: org/ecl

      Postby Eric Clayberg » Thu Feb 15, 2007 6:31 pm

      chuhan wrote:I can make it concret but the reason that we use an abstract class is to enforce inheriting classes to implement the abstract methods. I believe that it would be very helpful if Deisnger allows to do it. Do you have any plan to allow it?

      Yes. Give the latest build a try.

      Designer needs to be able to instantiate any class used as the direct superclass for the class being edited. Normally, that is impossible for an abstract class. After considerable research and experimentation, we have added a special class loader that uses ASM to remove the abstract flag on the class and the replace any abstract methods with methods that throw java.lang.Error. The superclass should not call those methods at deisgn time to avoid throwing that exception (use Beans.isDesignTime() to avoid calling them). This should help in most cases needing to use an abstract superclass.
      Eric Clayberg
      Software Engineering Manager
      Google
      http://code.google.com/webtoolkit/download.html

      Author: "Eclipse Plug-ins"
      http://www.qualityeclipse.com
      Eric Clayberg
      Moderator
       
      Posts: 4503
      Joined: Tue Sep 30, 2003 6:39 am
      Location: Boston, MA USA

      Re: Unknown Windowtype Error - NoClassDefFoundError: org/ecl

      Postby chuhan » Tue Feb 20, 2007 9:49 am

      Hi, Eric.

      I tested it and it works good.
      I really appreciate your quick response and definately, it helps us a lot.

      thank you.

      chuhan
      chuhan
       
      Posts: 28
      Joined: Tue Nov 14, 2006 3:28 pm


      Return to GWT Designer

      Who is online

      Users browsing this forum: No registered users and 3 guests