Description:
When trying to log into OneClick the following error is seen...
"An internal web server error occurred. See the log file on the web server for details".
In the stdout.log/catalina.out log file we see the following:
java.lang.NullPointerException at java.util.Arrays$ArrayList.(Arrays.java:3357) at java.util.Arrays.asList(Arrays.java:3343) atcom.aprisma.spectrum.app.web.servlet.ClientPollServlet.checkOutLicenseImpl(ClientPollServlet.java:1584) atcom.aprisma.spectrum.app.web.servlet.ClientPollServlet.checkOutLicenseImpl(ClientPollServlet.java:1552) atcom.aprisma.spectrum.app.web.servlet.ClientPollServlet.checkOutLicense(ClientPollServlet.java:1696) atcom.aprisma.spectrum.app.web.servlet.ClientPollServlet.doPostImpl(ClientPollServlet.java:2788) atcom.aprisma.spectrum.app.web.servlet.ClientPollServlet.doPost(ClientPollServlet.java:2707) at javax.servlet.http.HttpServlet.service(HttpServlet.java:647) at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) atorg.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) atorg.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172) atorg.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525) atorg.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) atorg.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) atorg.apache.catalina.valves.FastCommonAccessLogValve.invoke(FastCommonAccessLogValve.java:482) atorg.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) atorg.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:875) atorg.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) atorg.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) atorg.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) atorg.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689) at java.lang.Thread.run(Thread.java:619)
The cause of this error is a populated DuplicateLlist(0x11cd5) attribute on the Spectrum User model, when no duplicate User model exists in your environment.
To resolve this issue, you must send an action code 0x10103(CHECK_HOME_INTEGRITY) to the Spectrum User model that cannot log in. Doing this will clear the DuplicatList attribute, setting it to 0.0.0.0, and allow the user to log in successfully. To send the action code please do the following:
This same internal server error can also be seen when starting the OneClick webapp BUT there is nothing to see in any of the tomcat or webtomcat logs. However the same solution still applies.
This action can also be utilized for other global models such as Policy Manager and Global Collections etc. Global models have a MasterModel and HomeModel attribute that should have the corresponding Model Handle of the MLS.
For example:
On the MLS which has landscape handle 0x1000000:
HomeModel 0x100004f
MasterModel 0x100004f
Model_Handle 0x100004f
Significant_Model_ID 0x100004f
On a DSS box which has landscape handle 0x500000 you can see the MasterModel and HomeModel attributes are set to the MLS:
HomeModel 0x100004f
MasterModel 0x100004f
Model_Handle 0x500004f
Significant_Model_ID 0x500004f
If the DSS is set to itself - for example:
HomeModel 0x500004f
MasterModel 0x500004f
Model_Handle 0x500004f
Significant_Model_ID 0x500004f
Then log into that server and run action code 0x10103 against the model (for example the GC). After success you may need to log into the MLS and run the action code against the model as well (ie the same corresponding GC).