Continuum

When click "save" or "cancel" button on the Appearance page (with or without making changes), get java.lang.NullPointerException error

Details

  • Type: Bug Bug
  • Status: Closed Closed
  • Priority: Blocker Blocker
  • Resolution: Fixed
  • Affects Version/s: 1.2
  • Fix Version/s: 1.2
  • Component/s: Web - Configuration
  • Labels:
    None
  • Environment:
    Linux
  • Complexity:
    Intermediate
  • Number of attachments :
    0

Description

java.lang.NullPointerException

Show/hide Stack Trace

java.lang.NullPointerException
at org.apache.maven.continuum.web.appareance.DefaultAppareanceConfiguration.saveFooter(DefaultAppareanceConfiguration.java:86)
at org.apache.maven.continuum.web.action.admin.ConfigureFooterAction.saveFooter(ConfigureFooterAction.java:43)
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 com.opensymphony.xwork.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:358)
at com.opensymphony.xwork.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:218)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:192)
at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:175)
at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:115)
at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at org.apache.maven.continuum.web.interceptor.ForceContinuumConfigurationInterceptor.intercept(ForceContinuumConfigurationInterceptor.java:72)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at org.codehaus.plexus.redback.xwork.interceptor.PolicyEnforcementInterceptor.intercept(PolicyEnforcementInterceptor.java:149)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at org.codehaus.plexus.redback.xwork.interceptor.SecureActionInterceptor.intercept(SecureActionInterceptor.java:178)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at org.codehaus.plexus.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:58)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:175)
at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:115)
at com.opensymphony.xwork.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.webwork.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:174)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.webwork.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:169)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:151)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:31)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:186)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at org.codehaus.plexus.redback.xwork.interceptor.AutoLoginInterceptor.intercept(AutoLoginInterceptor.java:156)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at org.codehaus.plexus.redback.xwork.interceptor.ForceAdminUserInterceptor.intercept(ForceAdminUserInterceptor.java:76)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at org.codehaus.plexus.redback.xwork.interceptor.EnvironmentCheckInterceptor.intercept(EnvironmentCheckInterceptor.java:122)
at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:190)
at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:116)
at com.opensymphony.webwork.dispatcher.DispatcherUtils.serviceAction(DispatcherUtils.java:273)
at com.opensymphony.webwork.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:202)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1088)
at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)
at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1088)
at com.opensymphony.webwork.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:88)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1088)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:729)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:324)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:829)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:513)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)

Issue Links

Activity

Hide
Olivier Lamy added a comment -

which version are you using ? trunk ?

Show
Olivier Lamy added a comment - which version are you using ? trunk ?
Hide
apache maillist added a comment -

I checked out from http://svn.apache.org/repos/asf/continuum/trunk this morning 07/24/08 without specifying any revision number, and built locally using mvn clean install. it is 1.2-SNAPSHOT. Do I need to check out from a specific revision?

Show
apache maillist added a comment - I checked out from http://svn.apache.org/repos/asf/continuum/trunk this morning 07/24/08 without specifying any revision number, and built locally using mvn clean install. it is 1.2-SNAPSHOT. Do I need to check out from a specific revision?
Hide
Brett Porter added a comment -

in Archiva, the appearance stuff was replaced with a series of simple actions. Perhaps they could be copied?

Show
Brett Porter added a comment - in Archiva, the appearance stuff was replaced with a series of simple actions. Perhaps they could be copied?
Hide
Emmanuel Venisse added a comment -

+1 for the Archiva code

Show
Emmanuel Venisse added a comment - +1 for the Archiva code
Hide
Wendy Smoak added a comment -

I see a NPE when clicking on the 'Appearance' button in the lefthand menu. (1.2.0-SNAPSHOT branch)

Show
Wendy Smoak added a comment - I see a NPE when clicking on the 'Appearance' button in the lefthand menu. (1.2.0-SNAPSHOT branch)
Hide
Wendy Smoak added a comment -

Removed Appearance from the webapp and documentation menus on the 1.2.x branch in r690463.

Changing fix-for version to 1.3, can be moved back if the fix is merged to the branch.

Show
Wendy Smoak added a comment - Removed Appearance from the webapp and documentation menus on the 1.2.x branch in r690463. Changing fix-for version to 1.3, can be moved back if the fix is merged to the branch.
Hide
Olivier Lamy added a comment -

I don't like change the fix version for this issue.
IMHO it's not good to release something which has a NPE when you use it and worked in previous version.
It's a regression !!!

-1 to change the fix version.

Show
Olivier Lamy added a comment - I don't like change the fix version for this issue. IMHO it's not good to release something which has a NPE when you use it and worked in previous version. It's a regression !!! -1 to change the fix version.
Hide
Wendy Smoak added a comment -

I agree it's a regression, however there is a workaround: edit the config file that the feature would write to, or edit the JSP and and add the image url.

Version 1.2.1 now exists in JIRA so I'm moving it back...

(On the 1.2.x branch, the Appearance button has been removed from the menu, so unless you know the url you won't see the NPE.)

Show
Wendy Smoak added a comment - I agree it's a regression, however there is a workaround: edit the config file that the feature would write to, or edit the JSP and and add the image url. Version 1.2.1 now exists in JIRA so I'm moving it back... (On the 1.2.x branch, the Appearance button has been removed from the menu, so unless you know the url you won't see the NPE.)
Hide
Olivier Lamy added a comment -

fixed in trunk rev 690520

Show
Olivier Lamy added a comment - fixed in trunk rev 690520
Hide
Wendy Smoak added a comment - - edited

Adding a link to CONTINUUM-1863, I'm still seeing a NPE when I click the Appearance button.

Show
Wendy Smoak added a comment - - edited Adding a link to CONTINUUM-1863, I'm still seeing a NPE when I click the Appearance button.

People

Vote (0)
Watch (0)

Dates

  • Created:
    Updated:
    Resolved: