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 230879

Summary: NPE at ProxyLookup$R.lookupChange
Product: platform Reporter: misterm <misterm>
Component: Window SystemAssignee: Stanislav Aubrecht <saubrecht>
Status: RESOLVED INCOMPLETE    
Severity: normal CC: adithyank, akozlov75, alied, csjunker, cyhelsky, dkonecny, drazisil, ehsavoie, everflux, janario, javydreamercsw, jskrivanek, lforet, markiewb, michbarsinai, misterm, mkhramov, mslama, ralphbenjamin, rodrigorsantos, rptmaestro, stefan79, stezeb, tboudreau, tipirneni, tmysik, tnleeuw, tstupka, vriha, vv159170, williambacchi, zdenek.rod
Priority: P2    
Version: 7.4   
Hardware: All   
OS: All   
Issue Type: DEFECT Exception Reporter: 201209
Attachments: stacktrace
stacktrace
stacktrace
stacktrace
stacktrace
stacktrace
stacktrace
stacktrace
stacktrace
stacktrace
stacktrace
stacktrace
stacktrace
stacktrace
stacktrace
stacktrace
stacktrace
stacktrace
stacktrace
stacktrace
stacktrace
stacktrace
stacktrace

Description misterm 2013-06-06 18:52:44 UTC
Build: NetBeans IDE Dev (Build 20130606-5ceeec8ce90d)
VM: Java HotSpot(TM) 64-Bit Server VM, 23.3-b01, Java(TM) SE Runtime Environment, 1.7.0_07-b11
OS: Windows 7

User Comments:
drazisil: Opened the propertied templete in editor.

GUEST: just opened project.properties file of a fx project that has been just manipulated by its problem resolver (missing platform change)

drazisil: Oening properties file

misterm: Opening the IDE

rodrigorsantos: <Please provide a description of the problem or the steps to reproduce>.




Stacktrace: 
java.lang.NullPointerException
   at org.openide.util.lookup.ProxyLookup$R.lookupChange(ProxyLookup.java:461)
   at org.openide.util.lookup.ProxyLookup.setData(ProxyLookup.java:314)
   at org.openide.util.lookup.ProxyLookup.setLookups(ProxyLookup.java:153)
   at org.openide.util.lookup.ProxyLookup.setLookups(ProxyLookup.java:126)
   at org.netbeans.core.multiview.MultiViewTopComponentLookup$MyProxyLookup.setElementLookup(MultiViewTopComponentLookup.java:208)
   at org.netbeans.core.multiview.MultiViewTopComponentLookup.setElementLookup(MultiViewTopComponentLookup.java:71)
Comment 1 misterm 2013-06-06 18:52:46 UTC
Created attachment 135463 [details]
stacktrace
Comment 2 misterm 2013-06-06 19:49:28 UTC
Created attachment 135464 [details]
stacktrace

Opening the IDE
Comment 3 David Konecny 2013-06-06 23:58:29 UTC
Created attachment 135474 [details]
stacktrace

just happened out of nowhere
Comment 4 Jiri Skrivanek 2013-06-07 08:40:29 UTC
Created attachment 135483 [details]
stacktrace

Opened Bundle.properties in ant.browsetask module.
Comment 5 Tomas Stupka 2013-06-07 09:52:29 UTC
Created attachment 135489 [details]
stacktrace

after changin gproject group. Seen this also after IDE start.
Comment 6 Vladimir Riha 2013-06-07 11:22:29 UTC
Created attachment 135496 [details]
stacktrace

I opened project.properties file of PHP project
Comment 7 Exceptions Reporter 2013-06-07 11:22:34 UTC
This bug already has 10 duplicates 
see http://statistics.netbeans.org/exceptions/detail.do?id=201209
Comment 8 everflux 2013-06-08 13:40:29 UTC
Created attachment 135536 [details]
stacktrace

opened a properties file, part of multi module maven project
Comment 9 Ralph Ruijs 2013-06-09 08:49:29 UTC
Created attachment 135544 [details]
stacktrace

Opened a properties file
Comment 10 Maksim Khramov 2013-06-10 08:22:29 UTC
Created attachment 135569 [details]
stacktrace

Exception occurs on open genfiles.properties file
Comment 11 javydreamercsw 2013-06-10 18:46:30 UTC
Created attachment 135603 [details]
stacktrace

Opening file from files tab.
Comment 12 Vladimir Voskresensky 2013-06-12 10:43:36 UTC
Created attachment 135672 [details]
stacktrace

open nbproject/private/*.properties file
Comment 13 Jaroslav Tulach 2013-06-12 10:58:16 UTC
I think MultiView passes null into the array of Lookup constructed at

        public void setElementLookup(Lookup look) {
            final Lookup[] arr = getLookups();
            if (arr.length == 2 && look == arr[1]) {
                return;
            }
            setLookups(new Lookup[] {initialLookup, look});
        }
Comment 14 Stanislav Aubrecht 2013-06-12 13:35:05 UTC
Multiview just passes along Lookup instances provided by its MultiviewElements, it cannot pass null value into its internal ProxyLookup
Comment 15 javydreamercsw 2013-06-12 19:55:36 UTC
Created attachment 135718 [details]
stacktrace

Opening a properties file.
Comment 16 alied 2013-06-12 21:25:38 UTC
Created attachment 135723 [details]
stacktrace

created a new .properties file from the files view
Comment 17 williambacchi 2013-06-13 05:40:36 UTC
Created attachment 135733 [details]
stacktrace

Opening a properties file
Comment 18 Vladimir Riha 2013-06-13 11:19:38 UTC
Created attachment 135748 [details]
stacktrace

opened user.build.properties file in nbbuild
Comment 19 javydreamercsw 2013-06-13 13:28:37 UTC
Created attachment 135753 [details]
stacktrace

Open project properties file from File explorer.
Comment 20 stefan79 2013-06-13 15:28:37 UTC
Created attachment 135765 [details]
stacktrace

Opened a Property-File
Comment 21 David Konecny 2013-06-13 21:36:28 UTC
This is going to generate dozens more reports very quickly. Should be fixed for Beta IMO just to make life easier for everybody. :-)
Comment 22 Stepan Zebra 2013-06-14 11:16:39 UTC
Created attachment 135800 [details]
stacktrace

Created a properties file into a new package in a web project.
Comment 23 _ tboudreau 2013-06-15 23:25:38 UTC
Created attachment 135844 [details]
stacktrace

Double clicked a properties file under the Other Sources node of a Maven nb module project (specifically the nodejs projects module on github, file org.netbeans.modules.nodejs.Bundle.properties)
Comment 24 michbarsinai 2013-06-17 02:22:46 UTC
Created attachment 135857 [details]
stacktrace

Opened an .ini file.
Comment 25 Petr Cyhelsky 2013-06-17 08:34:48 UTC
Created attachment 135867 [details]
stacktrace

opening private.properties
Comment 26 lforet 2013-06-17 09:19:48 UTC
Created attachment 135872 [details]
stacktrace

I was navigating in maven target folder
Comment 27 mslama 2013-06-17 09:22:48 UTC
Created attachment 135873 [details]
stacktrace

Double click on search result
Comment 28 Jaroslav Tulach 2013-06-18 11:03:41 UTC
(In reply to comment #14)
> it cannot pass null value into its internal ProxyLookup

Why do you think so? I am pretty sure it does:

The NPE happens at
http://hg.netbeans.org/ergonomics/file/default/openide.util.lookup/src/org/openide/util/lookup/ProxyLookup.java#l461
clearly current is a non-null array and one of its elements is null. The array is sent in as an argument by
http://hg.netbeans.org/ergonomics/file/default/openide.util.lookup/src/org/openide/util/lookup/ProxyLookup.java#l314
which is obtained from
http://hg.netbeans.org/ergonomics/file/default/openide.util.lookup/src/org/openide/util/lookup/ProxyLookup.java#l153
and
http://hg.netbeans.org/ergonomics/file/default/openide.util.lookup/src/org/openide/util/lookup/ProxyLookup.java#l126

nowhere on this path the value of the array is modified - it is only read. That is why the null element in the array must be coming from the caller:

http://hg.netbeans.org/ergonomics/file/default/core.multiview/src/org/netbeans/core/multiview/MultiViewTopComponentLookup.java#l208

> Multiview just passes along Lookup instances provided 
> by its MultiviewElements,

Can't one of the MultiViewElements return null?
Comment 29 Stanislav Aubrecht 2013-06-18 12:09:54 UTC
I've added some diagnostics code in core-main 524d72015841

Please reopen when reproduced with the changes above and attach a new stack trace, thanks.
Comment 30 Tomas Stupka 2013-06-19 09:48:54 UTC
*** Bug 231354 has been marked as a duplicate of this bug. ***
Comment 31 Tomas Stupka 2013-06-21 12:11:43 UTC
*** Bug 231583 has been marked as a duplicate of this bug. ***