IBM Support

IJ14105: SRVE0293E:SERVLET ERROR - JAVA.LANG.NULLPOINTEREXCEPTION AT PSDI.WEBCLIENT.SYSTEM.FILTER.HTTPGZIPRESPONSEWRAPPER.FLUSHBUFFER

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • Problem:
    
    After an upgrade from Maximo 7.5.0.11 to Maximo 7.6.0.9, below
    error was seen in System logs:
    
    SRVE0293E: [Servlet Error]-[webclient]:
    java.lang.NullPointerException
    at
    psdi.webclient.system.filter.HttpGZIPResponseWrapper.flushBuffer
    after an upgrade from Maximo 7.5.0.11 to Maximo 7.6.0.9
    
    0000013d webapp E com.ibm.ws.webcontainer.webapp.WebApp
    logServletError SRVE0293E: [Servlet Error]-[webclient]:
    java.lang.NullPointerException
    at
    psdi.webclient.system.filter.HttpGZIPResponseWrapper.flushBuffer
    (HttpGZIPResponseWrapper.java:64)
    at
    com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(Ser
    vletWrapper.java:814)
    at
    com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(Ser
    vletWrapper.java:478)
    at
    com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest
    (ServletWrapperImpl.java:178)
    at
    com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(We
    bAppFilterChain.java:143)
    at
    com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebApp
    FilterChain.java:96)
    at
    psdi.webclient.system.filter.HttpGZIPFilter.doFilter(HttpGZIPFil
    ter.java:80)
    at
    com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(Fi
    lterInstanceWrapper.java:197)
    at
    com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebApp
    FilterChain.java:90)
    at
    psdi.webclient.system.filter.HttpCrossSiteScriptingSecurity.doFi
    lter(HttpCrossSiteScriptingSecurity.java:66)
    at
    com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(Fi
    lterInstanceWrapper.java:197)
    at
    com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebApp
    FilterChain.java:90)
    at
    psdi.webclient.system.filter.MXCorrelationFilter.doFilter(MXCorr
    elationFilter.java:137)
    at
    com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(Fi
    lterInstanceWrapper.java:197)
    at
    com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebApp
    FilterChain.java:90)
    at
    psdi.webclient.system.filter.PerformanceMonitor.doFilter(Perform
    anceMonitor.java:126)
    at
    com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(Fi
    lterInstanceWrapper.java:197)
    at
    com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebApp
    FilterChain.java:90)
    at
    psdi.webclient.system.filter.HttpXFrameOptionsFilter.doFilter(Ht
    tpXFrameOptionsFilter.java:38)
    at
    com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(Fi
    lterInstanceWrapper.java:197)
    at
    com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebApp
    FilterChain.java:90)
    at
    psdi.webclient.system.filter.MTContextFilter.doFilter(MTContextF
    ilter.java:53)
    at
    com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(Fi
    lterInstanceWrapper.java:197)
    at
    com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebApp
    FilterChain.java:90)
    at
    com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebA
    ppFilterManager.java:969)
    at
    com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters
    (WebAppFilterManager.java:1109)
    at
    com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleReques
    t(CacheServletWrapper.java:82)
    at
    com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.
    java:963)
    at
    com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContai
    ner.java:1817)
    at
    com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLin
    k.java:382)
    at
    com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscr
    imination(HttpInboundLink.java:465)
    at
    com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRe
    quest(HttpInboundLink.java:532)
    at
    com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequ
    est(HttpInboundLink.java:318)
    at
    com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complet
    e(HttpICLReadCallback.java:88)
    at
    com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureComp
    leted(AioReadCompletionListener.java:175)
    at
    com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyn
    cFuture.java:217)
    at
    com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncC
    hannelFuture.java:161)
    at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)
    at
    com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)
    at
    com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHand
    ler.java:775)
    at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)
    at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1909)
    
    For this exception, it was suggested to disable response
    HttpGZIPFilter in
    maximofolder>\applications\maximo\maximouiweb\webmodule\WEB-INF\
    web.xml.
    https://www-01.ibm.com/support/docview.wss?uid=swg21262036
    
    
    PERFORMANCE ISSUE:
    
    No. Also it doesn't effect Maximo Login. This error message is
    just blowing up the logs significantly. Over 2000 stack traces
    were noticed in 24 hours.
    
    
    STEPS TO REPRODUCE:
    
    1. Response HttpGZIPFilter should be in enabled state at
    maximofolder>\applications
    \maximo\maximouiweb\webmodule\WEB-INF\web.xml
    2. Upgrade from Maximo 7.5.0.11 to Maximo 7.6.0.9
    IFIX005/IFIX006
    3. Exception in SystemOut logs can be seen as SRVE0293E:
    [Servlet Error]-[webclient]: java.lang.NullPointerException at
    psdi.webclient.system.filter.HttpGZIPResponseWrapper.flushBuffer
    4. Disabling the response HttpGZIPFilter in
    maximofolder>\applications\maximo\maximouiweb\webmodule\WEB-INF\
    web.xml fixed the issue but disabling the feature shouldn't be
    the solution here, need to look deeper for question like why is
    HttpGZIPResponseWrapper throwing so many NPEs? This error looks
    like it's being caused because
    psdi.webclient.system.filter.HttpGZIPResponseWrapper.flushBuffer
    is trying to flush a stream that's already been closed. Either a
    check needs to be added to not try to flush a null buffer or
    something upstream from the wrapper needs to not close that
    stream.
    
    
    RESULTS :
    
    Disabling the GZIP filter (and enabling the mod_deflate filter
    on the HTTP server) seems to have fixed the problem.
    
    Though this option resolved the issue, but "disable feature X"
    isn't the correct method. Moving the GZIP compression from
    WebSphere to Apache (via mod_deflate) is also another option
    (i.e. disabling the GZIP filter and enabling the mod_deflate
    filter on the Apache HTTP server) but
    why is HttpGZIPResponseWrapper throwing so many NPEs) is being
    ignored completely.
    
    This error looks like it's being caused because
    psdi.webclient.system.filter.HttpGZIPResponseWrapper.flushBuffer
    is trying to flush a stream that's already been closed.
    
    Also, this seems to have created some sort of instability in the
    load balancer at the HTTPD level. Occasionally users will get a
    random 500 server error.
    
    
    EXPECTED RESULT:
    No SRVE0293E NullPointerException errors should be thrown after
    enabling/disabling the Response HttpGZIPFilter
    Either a check needs to be added to not try to flush a null
    buffer or something upstream from the wrapper needs to not close
    that stream.
    
    
    REPORTED IN VERSION:
    
    Maximo 7.6.0.9 IFIX005/IFIX006
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    * MAXIMO                                                       *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    * SRVE0293E: SERVLET ERROR - JAVA.LANG.NULLPOINTEREXCEPTION AT *
    * PSDI.WEBCLIENT.SYSTEM.FILTER.HTTPGZIPRESPONSEWRAPPER.FLUSHBU *
    * FFER                                                         *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    

Problem conclusion

  • The fix for this APAR is contained in the following maintenance
    package:
    	 | release\fix pack | Interim Fix for Release 7.6.1.1 Product
    

Temporary fix

Comments

APAR Information

  • APAR number

    IJ14105

  • Reported component name

    MAXIMO SYSTEMS

  • Reported component ID

    5724R46AV

  • Reported release

    760

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2019-02-26

  • Closed date

    2019-03-25

  • Last modified date

    2019-03-25

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    MAXIMO SYSTEMS

  • Fixed component ID

    5724R46AV

Applicable component levels

  • R760 PSY

       UP

[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSCHPP5","label":"System Related"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"760","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
25 March 2019