Random freezes when pushing XML to Cisco IP Phones 7970 / 7975

Version 1
    This document was generated from CDN thread

    Created by: Ralf Nitzer on 27-04-2011 06:17:05 AM
    Hello,

    we get random freezes when we try to push XML to Cisco IP Phones 7970 / 7975.

    What we've done to reproduce the Error:

    1. We push an CiscoIPPhone XML Object to the phone ( i.e.: CiscoIPPhoneImageFile ) with 2
       Softkey Buttons (one for logging a user into the Phone, the other on for logging the
       user out).
    2. Then a User is logged into the Phone through pressing Softkey Button 1.
    3. After the user is logged in and the Line Number is changed, we push an
       CiscoIPPhone XML Object to the phone again.
    4. Then the User is logged out through pressing Softkey Button 2.

    We repeated Step 1-4 over and over again, and at some point the Application freeze.
    The problem also exist if we push other CiscoIPPhone XML Object, like CiscoIPPhoneText.

    It seems the phone doesn't show the new CiscoIPPhone XML Object, instead the
    old is still visible and you cant press any Softkey button of it.


    The device logs->console logs of the Phone shows some Null Pointer Exception:

    8929: ERR 09:18:51.025278 JVM: 09:18:51|java.lang.NullPointerException
        at cip.go4.f.h()V(Unknown Source)
        at cip.srvc.ay.h()V(Unknown Source)
        at cip.comp.p.d(ILjava/lang/Object;Ljava/lang/Object;)V(Unknown Source)
        at cip.comp.ae.d(ILjava/lang/Object;Ljava/lang/Object;)V(Unknown Source)
        at cip.comp.ak.d(I)V(Unknown Source)
        at cip.comp.ak.q()V(Unknown Source)
        at cip.srvc.bl.l()V(Unknown Source)
        at cip.srvc.av.d()V(Unknown Source)
        at cip.srvc.x.s()V(Unknown Source)
        at cip.srvc.x.d(Lcip/http/HttpClientResponse;)V(Unknown Source)
        at cip.srvc.x.c(Lcip/http/HttpClientResponse;)V(Unknown Source)
        at cip.srvc.q.c(Lcip/http/HttpClientResponse;)V(Unknown Source)
        at cip.http.i.a(Lcip/http/k;Lcip/sys/x;)V(Unknown Source)
        at cip.http.i.sinkMessage(Lcip/sys/x;)V(Unknown Source)
        at cip.sys.n.sinkMessage(Lcip/sys/x;)V(Unknown Source)
        at cip.sys.aa.a(Lcip/sys/ad;)Ljava/lang/Throwable;(Unknown Source)
        at cip.sys.aa.e()V(Unknown Source)
        at cip.sys.l.run()V(Unknown Source)
        at java.lang.Thread.startup(Z)V(Unknown Source)
    8930: ERR 09:18:51.027318 JVM: Startup Module Loader|cip.sys.aa:? - error sending message Family: cip.http.p@401 ID: 1 Source: cip.http.t@df30e4 P1: Response
    mime:12 type:200 refresh: 0: result:scratchpad/HTTP_139445780_42.x java.lang.NullPointerException
    8931: ERR 09:18:51.034785 JVM: 09:18:51|java.lang.NullPointerException
        at cip.go4.f.h()V(Unknown Source)
        at cip.srvc.ay.h()V(Unknown Source)
        at cip.comp.p.d(ILjava/lang/Object;Ljava/lang/Object;)V(Unknown Source)
        at cip.comp.ae.d(ILjava/lang/Object;Ljava/lang/Object;)V(Unknown Source)
        at cip.comp.ak.d(I)V(Unknown Source)
        at cip.comp.ak.q()V(Unknown Source)
        at cip.srvc.bl.l()V(Unknown Source)
        at cip.srvc.av.d()V(Unknown Source)
        at cip.srvc.x.s()V(Unknown Source)
        at cip.srvc.x.d(Lcip/http/HttpClientResponse;)V(Unknown Source)
        at cip.srvc.x.c(Lcip/http/HttpClientResponse;)V(Unknown Source)
        at cip.srvc.q.c(Lcip/http/HttpClientResponse;)V(Unknown Source)
        at cip.http.i.a(Lcip/http/k;Lcip/sys/x;)V(Unknown Source)
        at cip.http.i.sinkMessage(Lcip/sys/x;)V(Unknown Source)
        at cip.sys.n.sinkMessage(Lcip/sys/x;)V(Unknown Source)
        at cip.sys.aa.a(Lcip/sys/ad;)Ljava/lang/Throwable;(Unknown Source)
        at cip.sys.aa.e()V(Unknown Source)
        at cip.sys.l.run()V(Unknown Source)
        at java.lang.Thread.startup(Z)V(Unknown Source)    at cip.sys.n.sinkMessage(Lcip/sys/x;)V(Unknown Source)
        at cip.sys.aa.a(Lcip/sys/ad;)Ljava/lang/Throwable;(Unknown Source)
        at cip.sys.aa.e()V(Unknown Source)
        at cip.sys.l.run()V(Unknown Source)
        at java.lang.Thread.startup(Z)V(Unknown Source)


    The test program to reproduce the error is written in java.

    We have 3 classes:

    A class that push the CiscoIPPhone XML Object to the phone.
    A servlet that call the class above.
    A servlet that is called when the user is looged in or logged out.

    We tried to keep the program as simple as possible to avoid other errors.


    We also tried different Firmware's:

        SCCP70.8-5-3S      the problem could NOT be reproduced
        SCCP70.9-0-3S     the problem could be reproduced   
        SCCP70.9-1-1SR1S the problem could be reproduced

        SCCP75.8-5-3S      the problem could NOT be reproduced
        SCCP75.9-0-3S     the problem could be reproduced

    However using an old Firmware like 8-5-3s isn't realy an option for us.


    The Cisco Unified CM System version is 7.1.5.31900-3.


    Is this a known problem? Is here someone who has the same problem or am i doing something wrong?

    Thanks