Spectrum Tomcat generates an NPE when initiating a REST subscription for alarms
search cancel

Spectrum Tomcat generates an NPE when initiating a REST subscription for alarms

book

Article ID: 273225

calendar_today

Updated On:

Products

DX NetOps

Issue/Introduction

Found NPE when querying for existing subscriptions using spectrum/restful/subscription:

java.lang.NullPointerException	at com.ca.spectrum.restful.subscription.AlarmsSubscriber.toString(AlarmsSubscriber.java:777)	at com.ca.spectrum.restful.subscription.SubscriptionManager$Subscription.toString(SubscriptionManager.java:191)	at java.lang.String.valueOf(String.java:2994)	at java.lang.StringBuilder.append(StringBuilder.java:136)	at com.ca.spectrum.restful.subscription.SubscriptionManager.getSubscriptions(SubscriptionManager.java:1191)	at com.ca.spectrum.restful.servlet.SubscriptionServlet.GET_subscriptionRequestsByURL(SubscriptionServlet.java:280)	at sun.reflect.GeneratedMethodAccessor167.invoke(Unknown Source)	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)	at java.lang.reflect.Method.invoke(Method.java:498)	at org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:179)	at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96)	at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:201)	at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:104)	at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:59)	at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:96)	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307)	at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)	at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:265)	at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:234)	at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:208)	at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:160)	at org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:225)	at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:304)	at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doGet(AbstractHTTPServlet.java:222)	at javax.servlet.http.HttpServlet.service(HttpServlet.java:670)	at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:279)	at sun.reflect.GeneratedMethodAccessor128.invoke(Unknown Source)	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)	at java.lang.reflect.Method.invoke(Method.java:498)	at org.apache.catalina.security.SecurityUtil.lambda$execute$0(SecurityUtil.java:280)	at java.security.AccessController.doPrivileged(Native Method)	at javax.security.auth.Subject.doAsPrivileged(Subject.java:549)	at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:311)	at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:170)	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:221)	at org.apache.catalina.core.ApplicationFilterChain.lambda$doFilter$0(ApplicationFilterChain.java:145)	at java.security.AccessController.doPrivileged(Native Method)	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:143)	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)	at sun.reflect.GeneratedMethodAccessor127.invoke(Unknown Source)	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)	at java.lang.reflect.Method.invoke(Method.java:498)	at org.apache.catalina.security.SecurityUtil.lambda$execute$0(SecurityUtil.java:280)	at java.security.AccessController.doPrivileged(Native Method)	at javax.security.auth.Subject.doAsPrivileged(Subject.java:549)	at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:311)	at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:253)	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:187)	at org.apache.catalina.core.ApplicationFilterChain.lambda$doFilter$0(ApplicationFilterChain.java:145)	at java.security.AccessController.doPrivileged(Native Method)	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:143)	at org.apache.catalina.filters.HttpHeaderSecurityFilter.doFilter(HttpHeaderSecurityFilter.java:126)	at sun.reflect.GeneratedMethodAccessor127.invoke(Unknown Source)	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)	at java.lang.reflect.Method.invoke(Method.java:498)	at org.apache.catalina.security.SecurityUtil.lambda$execute$0(SecurityUtil.java:280)	at java.security.AccessController.doPrivileged(Native Method)	at javax.security.auth.Subject.doAsPrivileged(Subject.java:549)	at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:311)	at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:253)	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:187)	at org.apache.catalina.core.ApplicationFilterChain.lambda$doFilter$0(ApplicationFilterChain.java:145)	at java.security.AccessController.doPrivileged(Native Method)	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:143)	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:660)	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:687)	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360)	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399)	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893)	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789)	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)	at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)	at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)	at java.lang.Thread.run(Thread.java:750)

Environment

Release : 22.2

Cause

Code issue

Resolution

This is resolved in NetOps release 23.3.1.