Set the integration logger to debug so you can understand the object with an issue. Having a cache issue here will impact all integrations so it's important to resolve beyond just work centers.
Alternate key is either going to come from the object structure (expand the row for an object and underneath the relationship name you should see a field called Alternate Key) or from the object in Database Configuration (open an object like DOCINFO in Database Configuration and you'll see an Alternate Index column under the language column field).
The purpose of alternate key is to enable the integration framework to determine whether a record needs to be added or updated using alternate fields to the primary key column sequence of the table. For example, if you had an object structure with the WORKORDER object, by default we would look for WONUM & SITEID to determine if the record already existed and needed to be updated or didn't exist and needed to be created. Sometimes the sending system has a different unique key that it can send instead of those values. By enabling the customer to change the index utilized, they can impact how we search for the record.
This isn't too common to see so you likely won't have too many object structures & database objects with this defined. What is likely happening is the index either no longer exists or the index metadata that is being referenced no longer exists.
------------------------------
Steven Shull
------------------------------
Original Message:
Sent: Tue May 28, 2024 02:51 PM
From: Eric Peterson
Subject: Inspection Forms Page opening but no content
In monitoring the logs, I see these errors anytime Manage Inspection Forms is selected:
[5/28/24 9:06:54:158 EDT] 00000181 SystemOut O &&& empty error
[5/28/24 9:06:54:174 EDT] 00000181 SystemOut O 28 May 2024 09:06:54:174 [ERROR] [MAXIMO] [CID-MXOSLC-192998] null
java.lang.NullPointerException: null
at psdi.iface.mos.MosDetailInfo.setAltKeys(MosDetailInfo.java:422) ~[businessobjects.jar:?]
at psdi.iface.mos.ObjectStructureCacheImpl.loadMosDetails(ObjectStructureCacheImpl.java:286) ~[businessobjects.jar:?]
at psdi.iface.mos.ObjectStructureCacheImpl.loadIntegrationDictionary(ObjectStructureCacheImpl.java:182) [businessobjects.jar:?]
at psdi.iface.mos.ObjectStructureCacheImpl.init(ObjectStructureCacheImpl.java:73) [businessobjects.jar:?]
at psdi.mbo.AbstractMaximoMTEnabledCache.getCache(AbstractMaximoMTEnabledCache.java:81) [businessobjects.jar:?]
at psdi.iface.mos.ObjectStructureCache.getMosInfo(ObjectStructureCache.java:120) [businessobjects.jar:?]
at com.ibm.tivoli.maximo.oslc.provider.LocalURIGenerator.getEncodedMboID(LocalURIGenerator.java:171) [businessobjects.jar:?]
at com.ibm.tivoli.maximo.oslc.provider.WhoamiRouteHandler.setPersonAndImgRefs(WhoamiRouteHandler.java:81) [businessobjects.jar:?]
at com.ibm.tivoli.maximo.oslc.provider.WhoamiRouteHandler.handleRequest(WhoamiRouteHandler.java:54) [businessobjects.jar:?]
at com.ibm.tivoli.maximo.oslc.provider.MaximoOslcProviderServlet.handleRoute(MaximoOslcProviderServlet.java:1240) [commonweb.jar:?]
at com.ibm.tivoli.maximo.oslc.provider.MaximoOslcProviderServlet.doGet(MaximoOslcProviderServlet.java:677) [commonweb.jar:?]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:687) [javax.j2ee.servlet.jar:?]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) [javax.j2ee.servlet.jar:?]
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1235) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:779) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:179) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:143) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:96) [com.ibm.ws.webcontainer.jar:?]
at psdi.webclient.system.filter.HttpXFrameOptionsFilter.doFilter(HttpXFrameOptionsFilter.java:38) [classes/:?]
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:197) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90) [com.ibm.ws.webcontainer.jar:?]
at psdi.webclient.system.filter.MTContextFilter.doFilter(MTContextFilter.java:53) [classes/:?]
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:197) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:979) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1119) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:82) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:966) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1817) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:382) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:465) [com.ibm.ws.runtime.jar:?]
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:532) [com.ibm.ws.runtime.jar:?]
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:318) [com.ibm.ws.runtime.jar:?]
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:88) [com.ibm.ws.runtime.jar:?]
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175) [com.ibm.ws.runtime.jar:?]
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217) [com.ibm.ws.runtime.jar:?]
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161) [com.ibm.ws.runtime.jar:?]
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138) [com.ibm.ws.runtime.jar:?]
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204) [com.ibm.ws.runtime.jar:?]
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775) [com.ibm.ws.runtime.jar:?]
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905) [com.ibm.ws.runtime.jar:?]
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1909) [com.ibm.ws.runtime.jar:?]
[5/28/24 9:06:54:174 EDT] 00000181 SystemOut O 28 May 2024 09:06:54:174 [ERROR] [MAXIMO] [CID-MXOSLC-192998] BMXAA7733E - There was an error loading the Object Strcuture cache: null
null
psdi.util.MXSystemException: BMXAA7733E - There was an error loading the Object Strcuture cache: null
null
at psdi.iface.mos.ObjectStructureCacheImpl.loadIntegrationDictionary(ObjectStructureCacheImpl.java:207) ~[businessobjects.jar:?]
at psdi.iface.mos.ObjectStructureCacheImpl.init(ObjectStructureCacheImpl.java:73) ~[businessobjects.jar:?]
at psdi.mbo.AbstractMaximoMTEnabledCache.getCache(AbstractMaximoMTEnabledCache.java:81) [businessobjects.jar:?]
at psdi.iface.mos.ObjectStructureCache.getMosInfo(ObjectStructureCache.java:120) [businessobjects.jar:?]
at com.ibm.tivoli.maximo.oslc.provider.LocalURIGenerator.getEncodedMboID(LocalURIGenerator.java:171) [businessobjects.jar:?]
at com.ibm.tivoli.maximo.oslc.provider.WhoamiRouteHandler.setPersonAndImgRefs(WhoamiRouteHandler.java:81) [businessobjects.jar:?]
at com.ibm.tivoli.maximo.oslc.provider.WhoamiRouteHandler.handleRequest(WhoamiRouteHandler.java:54) [businessobjects.jar:?]
at com.ibm.tivoli.maximo.oslc.provider.MaximoOslcProviderServlet.handleRoute(MaximoOslcProviderServlet.java:1240) [commonweb.jar:?]
at com.ibm.tivoli.maximo.oslc.provider.MaximoOslcProviderServlet.doGet(MaximoOslcProviderServlet.java:677) [commonweb.jar:?]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:687) [javax.j2ee.servlet.jar:?]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) [javax.j2ee.servlet.jar:?]
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1235) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:779) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:179) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:143) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:96) [com.ibm.ws.webcontainer.jar:?]
at psdi.webclient.system.filter.HttpXFrameOptionsFilter.doFilter(HttpXFrameOptionsFilter.java:38) [classes/:?]
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:197) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90) [com.ibm.ws.webcontainer.jar:?]
at psdi.webclient.system.filter.MTContextFilter.doFilter(MTContextFilter.java:53) [classes/:?]
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:197) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:979) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1119) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:82) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:966) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1817) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:382) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:465) [com.ibm.ws.runtime.jar:?]
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:532) [com.ibm.ws.runtime.jar:?]
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:318) [com.ibm.ws.runtime.jar:?]
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:88) [com.ibm.ws.runtime.jar:?]
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175) [com.ibm.ws.runtime.jar:?]
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217) [com.ibm.ws.runtime.jar:?]
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161) [com.ibm.ws.runtime.jar:?]
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138) [com.ibm.ws.runtime.jar:?]
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204) [com.ibm.ws.runtime.jar:?]
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775) [com.ibm.ws.runtime.jar:?]
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905) [com.ibm.ws.runtime.jar:?]
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1909) [com.ibm.ws.runtime.jar:?]
Caused by: java.lang.NullPointerException
at psdi.iface.mos.MosDetailInfo.setAltKeys(MosDetailInfo.java:422) ~[businessobjects.jar:?]
at psdi.iface.mos.ObjectStructureCacheImpl.loadMosDetails(ObjectStructureCacheImpl.java:286) ~[businessobjects.jar:?]
at psdi.iface.mos.ObjectStructureCacheImpl.loadIntegrationDictionary(ObjectStructureCacheImpl.java:182) ~[businessobjects.jar:?]
... 40 more
[5/28/24 9:06:54:174 EDT] 00000181 SystemOut O &&& empty error
[5/28/24 9:06:54:174 EDT] 00000181 SystemOut O 28 May 2024 09:06:54:174 [ERROR] [MAXIMO] [CID-MXOSLC-192998] null
java.lang.NullPointerException: null
at psdi.iface.mos.ObjectStructureCache.getMosInfo(ObjectStructureCache.java:120) ~[businessobjects.jar:?]
at com.ibm.tivoli.maximo.oslc.provider.LocalURIGenerator.getEncodedMboID(LocalURIGenerator.java:171) ~[businessobjects.jar:?]
at com.ibm.tivoli.maximo.oslc.provider.WhoamiRouteHandler.setPersonAndImgRefs(WhoamiRouteHandler.java:81) ~[businessobjects.jar:?]
at com.ibm.tivoli.maximo.oslc.provider.WhoamiRouteHandler.handleRequest(WhoamiRouteHandler.java:54) ~[businessobjects.jar:?]
at com.ibm.tivoli.maximo.oslc.provider.MaximoOslcProviderServlet.handleRoute(MaximoOslcProviderServlet.java:1240) ~[commonweb.jar:?]
at com.ibm.tivoli.maximo.oslc.provider.MaximoOslcProviderServlet.doGet(MaximoOslcProviderServlet.java:677) [commonweb.jar:?]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:687) [javax.j2ee.servlet.jar:?]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) [javax.j2ee.servlet.jar:?]
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1235) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:779) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:179) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:143) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:96) [com.ibm.ws.webcontainer.jar:?]
at psdi.webclient.system.filter.HttpXFrameOptionsFilter.doFilter(HttpXFrameOptionsFilter.java:38) [classes/:?]
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:197) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90) [com.ibm.ws.webcontainer.jar:?]
at psdi.webclient.system.filter.MTContextFilter.doFilter(MTContextFilter.java:53) [classes/:?]
at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:197) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:979) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1119) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:82) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:966) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1817) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:382) [com.ibm.ws.webcontainer.jar:?]
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:465) [com.ibm.ws.runtime.jar:?]
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:532) [com.ibm.ws.runtime.jar:?]
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:318) [com.ibm.ws.runtime.jar:?]
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:88) [com.ibm.ws.runtime.jar:?]
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175) [com.ibm.ws.runtime.jar:?]
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217) [com.ibm.ws.runtime.jar:?]
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161) [com.ibm.ws.runtime.jar:?]
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138) [com.ibm.ws.runtime.jar:?]
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204) [com.ibm.ws.runtime.jar:?]
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775) [com.ibm.ws.runtime.jar:?]
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905) [com.ibm.ws.runtime.jar:?]
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1909) [com.ibm.ws.runtime.jar:?]
------------------------------
Eric Peterson
Original Message:
Sent: Fri May 24, 2024 09:57 AM
From: Eric Peterson
Subject: Inspection Forms Page opening but no content
After a Windows update last night I started our Dev system this am. There are so many variables that I cannot say for certain what the cause is, but the Manage Inspection Forms page will not load. It invokes a new tab with the maximo-x page, but the page never loads. I have checked this APAR online: IV99133: MAXIMO-X INSPECTION APPLICATION IS NOT OPENING
It indicates a modification to the maximo-login.html file. I compared the file in Dev to the one in Prod (Inspection forms open in prod) and they are the same. Does anyone have any ideas as to what to check?
I made sure all the mxapiinsp object structures were checked.
------------------------------
Eric Peterson
------------------------------