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 90196

Summary: RuntimeException in JavaWhereUsedQueryPlugin.getRelevantFiles
Product: java Reporter: Jan Pokorsky <jpokorsky>
Component: SourceAssignee: Tomas Zezula <tzezula>
Status: RESOLVED FIXED    
Severity: blocker CC: bharathch, jglick, msauer
Priority: P2    
Version: 6.x   
Hardware: PC   
OS: Linux   
Issue Type: DEFECT Exception Reporter:
Bug Depends on:    
Bug Blocks: 90707    
Attachments: stack trace
log
Exception looking for implementors of PropertyChangeListener.propertyChange with openide/util and projects/projectapi open
log associated with the assertion report in 070509 build
proposed test project
Another occurence - 8/07 build - trace attached.

Description Jan Pokorsky 2006-11-28 14:58:11 UTC
Having open the Jsr199 project and trying to find all subtypes of TreeVisitor I
get following exception.
Comment 1 Jan Pokorsky 2006-11-28 14:58:58 UTC
Created attachment 36322 [details]
stack trace
Comment 2 Jan Becicka 2006-12-18 16:10:35 UTC
I improved debug messages:
Checking in JavaWhereUsedQueryPlugin.java;
/cvs/refactoring/java/src/org/netbeans/modules/refactoring/java/plugins/JavaWhereUsedQueryPlugin.java,v
 <--  JavaWhereUsedQueryPlugin.java
new revision: 1.9; previous revision: 1.8
done

The problem seems to be in SourceUtils.getFile(ElementHandle, ClasspathInfo)
which returns null for valid handle, which is on classpath.
Comment 3 Jan Becicka 2006-12-18 16:59:43 UTC
And strange is, that the Handle I have is kind=OTHER, but the signature is CLASS.
Comment 4 Jesse Glick 2007-01-02 21:18:05 UTC
I just got this, asking FU for usages & overriding methods of Node.getNodeName()
in Hudson sources.

SEVERE [org.openide.util.RequestProcessor]
java.lang.AssertionError: issue 90196
	at
org.netbeans.modules.refactoring.java.plugins.JavaWhereUsedQueryPlugin.getImplementorsRecursive(JavaWhereUsedQueryPlugin.java:169)
	at
org.netbeans.modules.refactoring.java.plugins.JavaWhereUsedQueryPlugin.access$200(JavaWhereUsedQueryPlugin.java:51)
	at
org.netbeans.modules.refactoring.java.plugins.JavaWhereUsedQueryPlugin$1.run(JavaWhereUsedQueryPlugin.java:121)
	at
org.netbeans.modules.refactoring.java.plugins.JavaWhereUsedQueryPlugin$1.run(JavaWhereUsedQueryPlugin.java:97)
	at org.netbeans.api.java.source.JavaSource.runUserActionTask(JavaSource.java:440)
	at
org.netbeans.modules.refactoring.java.plugins.JavaWhereUsedQueryPlugin.getRelevantFiles(JavaWhereUsedQueryPlugin.java:147)
	at
org.netbeans.modules.refactoring.java.plugins.JavaWhereUsedQueryPlugin.prepare(JavaWhereUsedQueryPlugin.java:181)
	at
org.netbeans.modules.refactoring.api.AbstractRefactoring.pluginsPrepare(AbstractRefactoring.java:301)
	at
org.netbeans.modules.refactoring.api.AbstractRefactoring.prepare(AbstractRefactoring.java:166)
	at
org.netbeans.modules.refactoring.spi.impl.ParametersPanel$Prepare.run(ParametersPanel.java:686)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:541)
[catch] at
org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:963)
Comment 5 Jan Lahoda 2007-01-05 08:52:10 UTC
The SourceUtils should be fixed now. AFAIK the kind OTHER is correct in this
case (the correct kind is not known). Please note that the find (all) subclasses
still does not work, even after this fix.

Checking in SourceUtils.java;
/cvs/java/source/src/org/netbeans/api/java/source/SourceUtils.java,v  <-- 
SourceUtils.java
new revision: 1.21; previous revision: 1.20
done
Comment 6 Jan Becicka 2007-01-08 14:39:15 UTC
Checking in FindSubtypesVisitor.java;
/cvs/refactoring/java/src/org/netbeans/modules/refactoring/java/plugins/FindSubtypesVisitor.java,v
 <--  FindSubtypesVisitor.java
new revision: 1.5; previous revision: 1.4
done
Checking in SearchVisitor.java;
/cvs/refactoring/java/src/org/netbeans/modules/refactoring/java/plugins/SearchVisitor.java,v
 <--  SearchVisitor.java
new revision: 1.4; previous revision: 1.3
done
Comment 7 Jan Becicka 2007-01-08 16:23:46 UTC
*** Issue 91750 has been marked as a duplicate of this issue. ***
Comment 8 rfongtrpz 2007-01-30 00:59:39 UTC
I just saw this on the latest build while doing a "find usages" on a class for
usages & search from base class.  I am attaching messages.log.
Comment 9 rfongtrpz 2007-01-30 01:00:20 UTC
Created attachment 37792 [details]
log
Comment 10 Jan Pokorsky 2007-01-30 09:58:34 UTC
reopening since the assertion occurs again
Comment 11 Jan Becicka 2007-01-30 10:05:26 UTC
I improved logging. 
Comment 12 Jesse Glick 2007-04-17 20:55:12 UTC
Created attachment 41118 [details]
Exception looking for implementors of PropertyChangeListener.propertyChange with openide/util and projects/projectapi open
Comment 13 Jesse Glick 2007-04-17 20:56:21 UTC
Happened to me in 070416.
Comment 14 _ pcw 2007-05-11 02:24:41 UTC
Just got this again, ~070509
Comment 15 _ pcw 2007-05-11 02:30:40 UTC
Created attachment 42292 [details]
log associated with the assertion report in 070509 build
Comment 16 Max Sauer 2007-05-24 11:14:30 UTC
I got it too.

Steps to reproduce:
-------------------
1) Open attached project
2) Select org.netbeans.tests.examples.packa.Bean.java inside explorer
3) Invoke 'Find Usages' from Explorer context menu
4) Select 'Find All Subtypes' radio and confirm
=> 0 occurances found, altough there should be 4
=> AE

java.lang.AssertionError: issue 90196, Cannot find file for
ElementHandle[kind=OTHER; sigs=org.netbeans.tests.examples.packb.BeanDD
...
	at
org.netbeans.modules.refactoring.java.plugins.JavaWhereUsedQueryPlugin.getImplementorsRecursive(JavaWhereUsedQueryPlugin.java:162)
	at
org.netbeans.modules.refactoring.java.plugins.JavaWhereUsedQueryPlugin.access$200(JavaWhereUsedQueryPlugin.java:49)
	at
org.netbeans.modules.refactoring.java.plugins.JavaWhereUsedQueryPlugin$1.run(JavaWhereUsedQueryPlugin.java:105)
	at
org.netbeans.modules.refactoring.java.plugins.JavaWhereUsedQueryPlugin$1.run(JavaWhereUsedQueryPlugin.java:87)
	at org.netbeans.api.java.source.JavaSource.runUserActionTask(JavaSource.java:503)
	at
org.netbeans.modules.refactoring.java.plugins.JavaWhereUsedQueryPlugin.getRelevantFiles(JavaWhereUsedQueryPlugin.java:140)
	at
org.netbeans.modules.refactoring.java.plugins.JavaWhereUsedQueryPlugin.prepare(JavaWhereUsedQueryPlugin.java:170)
	at
org.netbeans.modules.refactoring.api.AbstractRefactoring.pluginsPrepare(AbstractRefactoring.java:316)
...


---
NetBeans IDE Dev (Build 070524)
1.6.0_02-ea; Java HotSpot(TM) Client VM 1.6.0_02-ea-b02
Linux version 2.6.12-1.1390_FC4smp running on i386
en_US (nb); UTF-8
Comment 17 Max Sauer 2007-05-24 11:17:08 UTC
Created attachment 42729 [details]
proposed test project
Comment 18 Max Sauer 2007-05-24 11:20:26 UTC
Sometimes the exception is just thrown to console, and it looks like there are
no occurances from users point of view, which is very confusing.  P2.
Comment 19 Jan Becicka 2007-05-24 13:08:42 UTC
Problem is still in SourceUtils.getFile() which returns null for valid arguments.
Comment 20 Jan Lahoda 2007-05-29 09:35:50 UTC
The Max's case is caused by "classes living elsewhere" (classes which FQN do not
match the location/name of the corresponding source file).
Comment 21 Tomas Zezula 2007-06-21 10:39:52 UTC
Should be fixed in the final 6.0, needs extension of the signature file (cannot be done in M10).
Comment 22 Tomas Zezula 2007-06-22 12:16:31 UTC
*** Issue 107615 has been marked as a duplicate of this issue. ***
Comment 23 _ pcw 2007-08-11 00:53:40 UTC
Created attachment 46472 [details]
Another occurence - 8/07 build - trace attached.
Comment 24 Jan Becicka 2007-08-21 10:13:19 UTC
*** Issue 108482 has been marked as a duplicate of this issue. ***
Comment 25 Tomas Zezula 2007-08-21 12:49:34 UTC
*** Issue 92610 has been marked as a duplicate of this issue. ***
Comment 26 Jan Becicka 2007-08-22 14:45:33 UTC
*** Issue 109961 has been marked as a duplicate of this issue. ***
Comment 27 Jan Lahoda 2007-08-29 09:02:42 UTC
*** Issue 97579 has been marked as a duplicate of this issue. ***
Comment 28 Tomas Zezula 2007-08-31 14:29:53 UTC
Checking in src/org/netbeans/api/java/source/CompilationInfo.java;
/cvs/java/source/src/org/netbeans/api/java/source/CompilationInfo.java,v  <--  CompilationInfo.java
new revision: 1.17; previous revision: 1.16
done
Checking in src/org/netbeans/api/java/source/JavaSource.java;
/cvs/java/source/src/org/netbeans/api/java/source/JavaSource.java,v  <--  JavaSource.java
new revision: 1.87; previous revision: 1.86
done
Checking in src/org/netbeans/api/java/source/SourceUtils.java;
/cvs/java/source/src/org/netbeans/api/java/source/SourceUtils.java,v  <--  SourceUtils.java
new revision: 1.47; previous revision: 1.46
done
Checking in src/org/netbeans/modules/java/source/TreeLoader.java;
/cvs/java/source/src/org/netbeans/modules/java/source/TreeLoader.java,v  <--  TreeLoader.java
new revision: 1.7; previous revision: 1.6
done
Checking in src/org/netbeans/modules/java/source/parsing/FileObjectArchive.java;
/cvs/java/source/src/org/netbeans/modules/java/source/parsing/FileObjectArchive.java,v  <--  FileObjectArchive.java
new revision: 1.5; previous revision: 1.4
done
Checking in src/org/netbeans/modules/java/source/parsing/FileObjects.java;
/cvs/java/source/src/org/netbeans/modules/java/source/parsing/FileObjects.java,v  <--  FileObjects.java
new revision: 1.16; previous revision: 1.15
done
Checking in src/org/netbeans/modules/java/source/parsing/SourceFileManager.java;
/cvs/java/source/src/org/netbeans/modules/java/source/parsing/SourceFileManager.java,v  <--  SourceFileManager.java
new revision: 1.4; previous revision: 1.3
done
Checking in src/org/netbeans/modules/java/source/parsing/SourceFileObject.java;
/cvs/java/source/src/org/netbeans/modules/java/source/parsing/SourceFileObject.java,v  <--  SourceFileObject.java
new revision: 1.17; previous revision: 1.16
done
Checking in src/org/netbeans/modules/java/source/usages/BinaryAnalyser.java;
/cvs/java/source/src/org/netbeans/modules/java/source/usages/BinaryAnalyser.java,v  <--  BinaryAnalyser.java
new revision: 1.17; previous revision: 1.16
done
Checking in src/org/netbeans/modules/java/source/usages/ClassIndexImpl.java;
/cvs/java/source/src/org/netbeans/modules/java/source/usages/ClassIndexImpl.java,v  <--  ClassIndexImpl.java
new revision: 1.6; previous revision: 1.5
done
Checking in src/org/netbeans/modules/java/source/usages/DocumentUtil.java;
/cvs/java/source/src/org/netbeans/modules/java/source/usages/DocumentUtil.java,v  <--  DocumentUtil.java
new revision: 1.5; previous revision: 1.4
done
Checking in src/org/netbeans/modules/java/source/usages/Index.java;
/cvs/java/source/src/org/netbeans/modules/java/source/usages/Index.java,v  <--  Index.java
new revision: 1.14; previous revision: 1.13
done
Checking in src/org/netbeans/modules/java/source/usages/LuceneIndex.java;
/cvs/java/source/src/org/netbeans/modules/java/source/usages/LuceneIndex.java,v  <--  LuceneIndex.java
new revision: 1.17; previous revision: 1.16
done
RCS file: /cvs/java/source/src/org/netbeans/modules/java/source/usages/Pair.java,v
done
Checking in src/org/netbeans/modules/java/source/usages/Pair.java;
/cvs/java/source/src/org/netbeans/modules/java/source/usages/Pair.java,v  <--  Pair.java
initial revision: 1.1
done
Checking in src/org/netbeans/modules/java/source/usages/PersistentClassIndex.java;
/cvs/java/source/src/org/netbeans/modules/java/source/usages/PersistentClassIndex.java,v  <--  PersistentClassIndex.java
new revision: 1.8; previous revision: 1.7
done
Checking in src/org/netbeans/modules/java/source/usages/ResultConvertor.java;
/cvs/java/source/src/org/netbeans/modules/java/source/usages/ResultConvertor.java,v  <--  ResultConvertor.java
new revision: 1.5; previous revision: 1.4
done
Checking in src/org/netbeans/modules/java/source/usages/SourceAnalyser.java;
/cvs/java/source/src/org/netbeans/modules/java/source/usages/SourceAnalyser.java,v  <--  SourceAnalyser.java
new revision: 1.12; previous revision: 1.11
done
Checking in test/unit/src/org/netbeans/api/java/source/JavaSourceTest.java;
/cvs/java/source/test/unit/src/org/netbeans/api/java/source/JavaSourceTest.java,v  <--  JavaSourceTest.java
new revision: 1.17; previous revision: 1.16
done
Checking in test/unit/src/org/netbeans/modules/java/source/parsing/SourceFileObjectTest.java;
/cvs/java/source/test/unit/src/org/netbeans/modules/java/source/parsing/SourceFileObjectTest.java,v  <-- 
SourceFileObjectTest.java
new revision: 1.2; previous revision: 1.1
done
Checking in test/unit/src/org/netbeans/modules/java/source/usages/LucenePerformanceTest.java;
/cvs/java/source/test/unit/src/org/netbeans/modules/java/source/usages/LucenePerformanceTest.java,v  <-- 
LucenePerformanceTest.java
new revision: 1.4; previous revision: 1.3
done
Checking in test/unit/src/org/netbeans/modules/java/source/usages/SymbolDumperTest.java;
/cvs/java/source/test/unit/src/org/netbeans/modules/java/source/usages/SymbolDumperTest.java,v  <--  SymbolDumperTest.java
new revision: 1.10; previous revision: 1.9
done