Hi,
after upgrading to 21.2.8 our NCM will not start. We will get this output:
# cat NCMSERV.OUT
Command-line arguments:
command :start received
Mar 24, 2022 16:27:45.234 - com.aprisma.spectrum.scmd.ScmService.debugging set to max
Mar 24, 2022 16:27:45.235 - com.aprisma.spectrum.scmd.ScmService.Attempting to create ScmServiceImpl service object
java.lang.NoClassDefFoundError: org/jdom2/JDOMException
at com.aprisma.spectrum.scmd.ScmService.start(ScmService.java:513)
at com.aprisma.spectrum.scmd.ScmService.main(ScmService.java:681)
Caused by: java.lang.ClassNotFoundException: org.jdom2.JDOMException
at java.net.URLClassLoader.findClass(URLClassLoader.java:387)
at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
... 2 more
Mar 24, 2022 16:27:45.242 - com.aprisma.spectrum.scmd.ScmService.Running ShutdownHook started
Mar 24, 2022 16:27:45.243 - com.aprisma.spectrum.scmd.ScmService.Stopping the NCM Server started
Mar 24, 2022 16:27:45.243 - com.aprisma.spectrum.scmd.ScmService.Stopping the NCM Server completed
Mar 24, 2022 16:27:45.244 - com.aprisma.spectrum.scmd.ScmService.Running ShutdownHook completed
A customized SPECROOT/lib/SDPM/partslist/NCMserv.idb is pointing to an old jar.
Release : 21.2
Component : Spectrum Applications
custom NCMSERV.idb points to incorrect CLASSPATH:
ENV;CLASSPATH=$SPECROOT/lib/jdom.jar<CSPATHSEP>;
The correct one in 21.2.8 is this:
ENV;CLASSPATH=$SPECROOT/lib/jdom-2.0.6.1.jar<CSPATHSEP>;
The default NCMserv.idb looks like this on Windows 21.2.8
# Processd Install Ticket for SNMP Service
PARTNAME;NCMSERV;
APPNAME;NCM Service;
WORKPATH;$SPECROOT/NCM;
LOGNAMEPATH;$WORKPATH/NCMSERV.OUT;
ADMINPRIVS;y;
AUTORESTART;y;
AUTOBOOTSTART;y;
#STATEBASED;N;
NUMPROCS;1; // one per host
RETRYTIMEOUT;600; // 10 minutes
#TICKETUSER;$USER;
RETRYMAX;5; // 5 retries allowed
STARTPRIORITY;20;
SERVERPROCESS;Y;
ENV;CLASSPATH=$SPECROOT/lib/vbjorb.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/vbsec.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/lm.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/sanctuary.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/jaxp.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/crimson.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/sanct6.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/mindterm.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/ftpserver-dev.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/commons-logging-1.0.3.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/utilapp100.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/utilnet100.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/utilsrv100.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/vbhelper100.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/ssorb100.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/ssorbutil100.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/util100.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/global100.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/cryptojFIPS.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/jdom.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/ncm100.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/jsch-0.1.54.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/grpc-all-1.4.0.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/protobuf-java-3.3.1.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/grpc-stub-1.4.0.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/grpc-protobuf-1.4.0.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/grpc-core-1.4.0.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/guava-19.0.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/grpc-netty-1.4.0.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/grpc-okhttp-1.4.0.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/netty-buffer-4.1.11.Final.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/netty-codec-4.1.11.Final.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/netty-codec-http2-4.1.11.Final.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/netty-codec-http-4.1.11.Final.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/netty-codec-socks-4.1.11.Final.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/netty-common-4.1.11.Final.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/netty-handler-4.1.11.Final.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/netty-handler-proxy-4.1.11.Final.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/netty-resolver-4.1.11.Final.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/netty-transport-4.1.11.Final.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/grpc-protobuf-lite-1.4.0.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/instrumentation-api-0.4.2.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/grpc-context-1.4.0.jar<CSPATHSEP>;
ENV;CLASSPATH=$SPECROOT/lib/grpc_jars/netty-tcnative-boringssl-static-2.0.1.Final.jar<CSPATHSEP>;
#ENV;<var>=<value>;
#Launch NCM service
ARGV;$SPECROOT/bin/JavaApps/bin/ncmservice<CSEXE> -Xms256M -Xmx1024M -XX:+HeapDumpOnOutOfMemoryError -Dvbroker.agent.enableLocator=false -Dvbroker.orb.admDir=$SPECROOT/bin/VBNS -Dborland.enterprise.licenseDir=%BES_LIC_DIR% -Dborland.enterprise.licenseDefaultDir=%BES_LIC_DIR% -Djava.endorsed.dirs=$SPECROOT/lib/endorsed -DSPECROOT=%SPECROOT% com.aprisma.spectrum.scmd.ScmService;