This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 49451 - Fix imports
Summary: Fix imports
Status: RESOLVED DUPLICATE of bug 47523
Alias: None
Product: java
Classification: Unclassified
Component: Unsupported (show other bugs)
Version: 4.x
Hardware: PC Windows ME/2000
: P3 blocker (vote)
Assignee: Tomas Hurka
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-09-23 06:34 UTC by pzgyuanf
Modified: 2007-09-26 09:14 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description pzgyuanf 2004-09-23 06:34:37 UTC
1.input
----------------
public class Guitar {
  private String builder;
  private String model;
  private float nutWidth;
  private GuitarWood backSidesWood;
  private GuitarWood topWood;
  private GuitarInlay fretboardInlay;
  private GuitarInlay topInlay;
  private java.util.List features;
  
  private static final float DEFAULT_NUT_WIDTH =
1.6875f;
  
  public Guitar(String builder, String model,
String... features) {
    this(builder, model, null, null,
DEFAULT_NUT_WIDTH, null, null, features);
  }
  
  public Guitar(String builder, String model,
                GuitarWood backSidesWood,
GuitarWood topWood,
                float nutWidth, String ... features) {
    this(builder, model, backSidesWood, topWood,
nutWidth, null, null, features);
  }
  
  public Guitar(String builder, String model,
                GuitarWood backSidesWood,
GuitarWood topWood,
                float nutWidth,
                GuitarInlay fretboardInlay,
GuitarInlay topInlay,
                String... features) {
    this.builder = builder;
    this.model = model;
    this.backSidesWood = backSidesWood;
    this.topWood = topWood;
    this.nutWidth = nutWidth;
    this.fretboardInlay = fretboardInlay;
    this.topInlay = topInlay;
    this.features = Arrays.asList(features);// To
Fix import
  }
  
  public static int max(int first, int... rest) {
    for (int i : rest) {
      if (i > first)
        first = i;
    }
    return first;
  }
  
  public static void main(String[] args) {
    System.out.println(max(1, 3, 5, 2));
  }
  static class GuitarWood {}
  static class GuitarInlay {}
}
---------------------
2. Ctrl+I(Fix import), throw:
java.lang.ClassCastException:
org.netbeans.modules.javacore.parser.PrimitiveTypeRef
	at
org.netbeans.modules.javacore.parser.MDRParser.processASTBody(MDRParser.java:1472)
	at
org.netbeans.modules.javacore.parser.MDRParser.processASTBody(MDRParser.java:1536)
	at
org.netbeans.modules.javacore.parser.MDRParser.processASTBody(MDRParser.java:1488)
	at
org.netbeans.modules.javacore.parser.MDRParser.processASTBody(MDRParser.java:1458)
	at
org.netbeans.modules.javacore.parser.MDRParser.enterBody(MDRParser.java:180)
	at
org.netbeans.modules.javacore.parser.MDRParser.doAttribution(MDRParser.java:155)
	at
org.netbeans.modules.javacore.parser.MDRParser.getSemanticInfo(MDRParser.java:134)
	at
org.netbeans.modules.javacore.jmiimpl.javamodel.ForEachStatementImpl.initChildren(ForEachStatementImpl.java:202)
	at
org.netbeans.modules.javacore.jmiimpl.javamodel.ForEachStatementImpl.getParameter(ForEachStatementImpl.java:94)
	at
org.netbeans.jmi.javamodel.ForEachStatement$Impl.getParameter(Unknown
Source)
	at
org.netbeans.modules.javacore.jmiimpl.javamodel.ForEachStatementImpl.getChildren(ForEachStatementImpl.java:138)
	at
org.netbeans.jmi.javamodel.ForEachStatement$Impl.getChildren(Unknown
Source)
	at
org.netbeans.modules.editor.java.JavaFixAllImports.findPotentialClassNames(JavaFixAllImports.java:404)
	at
org.netbeans.modules.editor.java.JavaFixAllImports.findPotentialClassNames(JavaFixAllImports.java:408)
	at
org.netbeans.modules.editor.java.JavaFixAllImports.findPotentialClassNames(JavaFixAllImports.java:408)
	at
org.netbeans.modules.editor.java.JavaFixAllImports.findPotentialClassNames(JavaFixAllImports.java:408)
	at
org.netbeans.modules.editor.java.JavaFixAllImports.findPotentialClassNames(JavaFixAllImports.java:417)
	at
org.netbeans.modules.editor.java.JavaFixAllImports.addAllNeededImports(JavaFixAllImports.java:87)
	at
org.netbeans.modules.editor.java.JavaFixAllImports.actionPerformed(JavaFixAllImports.java:54)
	at
org.netbeans.editor.BaseAction.actionPerformed(BaseAction.java:169)
	at
javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1571)
	at
javax.swing.JComponent.processKeyBinding(JComponent.java:2726)
	at
javax.swing.JComponent.processKeyBindings(JComponent.java:2761)
	at
javax.swing.JComponent.processKeyEvent(JComponent.java:2689)
	at
java.awt.Component.processEvent(Component.java:5242)
	at
java.awt.Container.processEvent(Container.java:1961)
	at
java.awt.Component.dispatchEventImpl(Component.java:3933)
	at
java.awt.Container.dispatchEventImpl(Container.java:2019)
	at
java.awt.Component.dispatchEvent(Component.java:3781)
	at
java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1810)
	at
java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:668)
	at
java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:916)
	at
java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:794)
	at
java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:632)
	at
java.awt.Component.dispatchEventImpl(Component.java:3819)
	at
java.awt.Container.dispatchEventImpl(Container.java:2019)
	at
java.awt.Window.dispatchEventImpl(Window.java:1764)
	at
java.awt.Component.dispatchEvent(Component.java:3781)
[catch] at
java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
	at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:234)
	at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
	at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
	at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
	at
java.awt.EventDispatchThread.run(EventDispatchThread.java:110)

3. If delete the lines below the one:
   this.features = Arrays.asList(features);// To
Fix import
  }
  as:
  
  ---------------------------
  public class Guitar {
  private String builder;
  private String model;
  private float nutWidth;
  private GuitarWood backSidesWood;
  private GuitarWood topWood;
  private GuitarInlay fretboardInlay;
  private GuitarInlay topInlay;
  private java.util.List features;
  
  private static final float DEFAULT_NUT_WIDTH =
1.6875f;
  
  public Guitar(String builder, String model,
String... features) {
    this(builder, model, null, null,
DEFAULT_NUT_WIDTH, null, null, features);
  }
  
  public Guitar(String builder, String model,
                GuitarWood backSidesWood,
GuitarWood topWood,
                float nutWidth, String ... features) {
    this(builder, model, backSidesWood, topWood,
nutWidth, null, null, features);
  }
  
  public Guitar(String builder, String model,
                GuitarWood backSidesWood,
GuitarWood topWood,
                float nutWidth,
                GuitarInlay fretboardInlay,
GuitarInlay topInlay,
                String... features) {
    this.builder = builder;
    this.model = model;
    this.backSidesWood = backSidesWood;
    this.topWood = topWood;
    this.nutWidth = nutWidth;
    this.fretboardInlay = fretboardInlay;
    this.topInlay = topInlay;
    this.features = Arrays.asList(features);
  }
  
  static class GuitarWood {}
  static class GuitarInlay {}
}
------------------------------
everythings ok!
Comment 1 Martin Roskanin 2004-09-23 08:44:24 UTC
reassigning to java for evaluation
Comment 2 Martin Matula 2004-09-23 08:53:15 UTC
Tomas, please look at it.
Comment 3 Tomas Hurka 2004-09-24 11:49:08 UTC
Next time please use 'Create a new attachment' to attach stack trace and source files. 
Thanks.


*** This issue has been marked as a duplicate of 47523 ***
Comment 4 Quality Engineering 2007-09-20 09:52:26 UTC
Reorganization of java component