Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 362786 - NPE when changing default view
Summary: NPE when changing default view
Status: VERIFIED WORKSFORME
Alias: None
Product: Hudson
Classification: Technology
Component: Core (show other bugs)
Version: unspecified   Edit
Hardware: PC Mac OS X - Carbon (unsup.)
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Winston Prakash CLA
QA Contact:
URL:
Whiteboard: candidate-3.0.1
Keywords:
: 368204 (view as bug list)
Depends on:
Blocks:
 
Reported: 2011-11-03 08:35 EDT by Greg Watson CLA
Modified: 2013-03-15 10:24 EDT (History)
2 users (show)

See Also:


Attachments
MyViews Dashboard showing the new view as default (37.80 KB, image/png)
2013-02-18 21:18 EST, Winston Prakash CLA
no flags Details
User Configuration showing error when new MyView does not exist (16.16 KB, image/png)
2013-02-18 21:20 EST, Winston Prakash CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Greg Watson CLA 2011-11-03 08:35:09 EDT
I created a new view called PTP. However when I set this as the default view on my configuration page, I now see the following NPE. The "Default View" field is now empty and below it is a link "ERROR". If I click on this link, it says "Access Denied: gwatson is missing the Create permission". I am unable to change the default view to anything else.

java.lang.NullPointerException
	at hudson.model.Descriptor.toMap(Descriptor.java:771)
	at hudson.model.User.getProperties(User.java:202)
	at hudson.model.User.getDynamic(User.java:557)
	at sun.reflect.GeneratedMethodAccessor410.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:282)
	at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:149)
	at org.kohsuke.stapler.MetaClass$12.dispatch(MetaClass.java:371)
	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:561)
	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:646)
	at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:233)
	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:561)
	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:646)
	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:477)
	at org.kohsuke.stapler.Stapler.service(Stapler.java:159)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:45)
	at winstone.ServletConfiguration.execute(ServletConfiguration.java:249)
	at winstone.RequestDispatcher.forward(RequestDispatcher.java:335)
	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:378)
	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:94)
	at org.hudsonci.servlets.internal.ServletRegistrationFilterAdapter.doFilter(ServletRegistrationFilterAdapter.java:180)
	at org.hudsonci.servlets.internal.ServletRegistrationFilterAdapter.doFilter(ServletRegistrationFilterAdapter.java:148)
	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:97)
	at org.hudsonci.servlets.internal.ServletRegistrationFilterAdapter.doFilter(ServletRegistrationFilterAdapter.java:180)
	at org.hudsonci.servlets.internal.ServletRegistrationFilterAdapter.doFilter(ServletRegistrationFilterAdapter.java:148)
	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:97)
	at hudson.plugins.audit_trail.AuditTrailFilter.doFilter(AuditTrailFilter.java:64)
	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:97)
	at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:86)
	at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
	at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
	at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
	at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
	at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166)
	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
	at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
	at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
	at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
	at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
	at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
	at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:66)
	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
	at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
	at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
	at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
	at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
	at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
	at winstone.RequestDispatcher.forward(RequestDispatcher.java:333)
	at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:244)
	at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150)
	at java.lang.Thread.run(Thread.java:619)
Comment 1 Denis Roy CLA 2011-11-03 08:39:00 EDT
Reassigning to the Hudson project for comment.
Comment 2 Geoff Waymark CLA 2013-01-30 11:58:29 EST
*** Bug 368204 has been marked as a duplicate of this bug. ***
Comment 3 Winston Prakash CLA 2013-02-18 21:17:12 EST
I'm not able to reproduce this in Hudson 3.0.0. Couple of notes

- The new view must be created under MyViews. If the new view is created in the global views, it will not be used as default view under my view. In that case trying to assign a non existing view will result in a red error message as shown in attachment1 [details].

- After creating the view in MyViews and setting it as default view in the User Configuration page should set that as the default view in the MyViews Dashboard as shown in attachment 2 [details].
Comment 4 Winston Prakash CLA 2013-02-18 21:18:28 EST
Created attachment 227219 [details]
MyViews Dashboard showing the new view as default
Comment 5 Winston Prakash CLA 2013-02-18 21:20:50 EST
Created attachment 227220 [details]
User Configuration showing error when new MyView does not exist