Service Desk Practitioners Forum
cancel
Showing results for 
Search instead for 
Did you mean: 

SD D/B error:Unable to deserialize an object

SOLVED
Go to solution
Highlighted
SeanJ
Senior Member

SD D/B error:Unable to deserialize an object

SD D/B Error

Mon, 24/10/2005 15:05:36 Unable to deserialize an object (com.hp.ifc.rep.rules.actions.AppRuleEmailInfo).
nullcom.hp.ifc.io.AppStreamException: Unable to deserialize an object (com.hp.ifc.rep.rules.actions.AppRuleEmailInfo).
null

Does anyone know about it?
9 REPLIES
Mike Bush
Honored Contributor
Solution

Re: SD D/B error:Unable to deserialize an object

Is this just after an upgrade to new SP? Have you done all of server, clientgs and database?
SeanJ
Senior Member

Re: SD D/B error:Unable to deserialize an object

Yes ,just after an upgrade to new SP for server,client,aget & service pages. I have upgraded database before srating application server.
Mike Bush
Honored Contributor

Re: SD D/B error:Unable to deserialize an object

Which SP? There is a nasty problem http://openview.hp.com/ecare/getsupportdoc?docid=ITSM006505 but this claims fixed in SP11
SeanJ
Senior Member

Re: SD D/B error:Unable to deserialize an object

Hi Mike Bush

I am not able to view this page.Could you paste it.
Could attache exe file An executable (SD45CheckRules.exe) alos.
Mike Bush
Honored Contributor

Re: SD D/B error:Unable to deserialize an object

I think you'll have to raise a call with HP to get hold of the utility.

But in the meantime you could try checking your rules from Admin Console, probably one which tries to send an email (should narrow it down). It will probably refuse to show the rule with similar messages in the log but you should be able to delete the rule.
Crist Vandendri
Esteemed Contributor

Re: SD D/B error:Unable to deserialize an object

Problem



Tools > System > Business Logic > UI Rules

Unable to deserialize an object
(com.hp.ifc.rep.rules.actions.AppRuleUpdateDataInfo).
nullcom.hp.ifc.io.AppStreamException: Unable to deserialize an object
(com.hp.ifc.rep.rules.actions.AppRuleUpdateDataInfo).
null
at com.hp.ifc.io.AppStreamer.readValue(Unknown Source)
at com.hp.ifc.io.AppStreamer.readValue(Unknown Source)
at com.hp.ifc.rep.rules.actions.AppRuleDataUpdatesInfo.load(Unknown Source)
at java.lang.reflect.Method.invoke(Native Method)
at com.hp.ifc.io.AppStreamer.readValue(Unknown Source)
at com.hp.ifc.io.AppStreamer.readValue(Unknown Source)
at com.hp.ifc.rep.rules.AppAbstractRuleInfo.load(Unknown Source)
at com.hp.ifc.rep.rules.uirules.AppUIRuleInfo.load(Unknown Source)
.......

and:

java.lang.NullPointerException
at com.hp.ifc.rep.rules.actions.AppRuleUpdateDataInfo.getAttributeInfo(Unknown
Source)
at com.hp.ifc.rep.rules.actions.AppRuleUpdateDataInfo.load(Unknown Source)
at java.lang.reflect.Method.invoke(Native Method)
at com.hp.ifc.io.AppStreamer.readValue(Unknown Source)
at com.hp.ifc.io.AppStreamer.readValue(Unknown Source)
at com.hp.ifc.rep.rules.actions.AppRuleDataUpdatesInfo.load(Unknown Source)
at java.lang.reflect.Method.invoke(Native Method)
at com.hp.ifc.io.AppStreamer.readValue(Unknown Source)
at com.hp.ifc.io.AppStreamer.readValue(Unknown Source)
at com.hp.ifc.rep.rules.AppAbstractRuleInfo.load(Unknown Source)
at com.hp.ifc.rep.rules.uirules.AppUIRuleInfo.load(Unknown Source)
......

Fix



WORKAROUND:

The following worked from an SD45SP6 environment:
-Make a dump of the current database
-Export all database- and ui-rules via ACES

-execute the following statements:
delete from rep_javaobjects
where jav_entity in
(
select ent_oid
from ifc_entities
where ent_name = 'Database Rule'
)

delete from rep_javaobjects
where jav_entity in
(
select ent_oid
from ifc_entities
where ent_name = 'UI Rule'
)

-Migrate the database, after you executed the above sql-statements, to SD45SP7
-In the exported XML file change the SysVersion to "4.5.0588.0706 (SP7)"
-Import all database- and ui rules via ACES


SOLUTION:
An executable (SD45CheckRules.exe) has been provided that checks the database-
and ui-rules for any problems with deserialization (can a rule that was saved in
an older version still be read in a newer version of Service Desk). The
hotfix.jar must be implemented on client and server if you have an Service Desk
environment of ServicePack 7, 8 or 9.


A cmd file with the following text, you must alter it to reflect your own
client path:


@echo off
SET CLASSPATH=.;\lib\hotfix.jar;Desk 4.5\client>\lib\servicepack.jar;4.5\client>\lib\common.jar;\lib\sdcommon.jar;Service Desk 4.5\client>\lib\JClark.zip;4.5\client>\lib\ui.jar;\lib\sdui.jar
SD45CheckRules /settings=\user_settings.xml



Put the cmd and the executable file in a directory and double click on
the cmd file. A dos window will be opened and after a short time be closed
again. Check new files TestingUIRules.txt and TestingDBRules.txt for any errors.
If an rule cannot be deserialized any more it is advised to delete it as it
makes the ServiceDesk environment unstable. The sql-statement to delete this
corrupt rule can be found in the text files.


Solved in Service Desk 4.5 SP11
SeanJ
Senior Member

Re: SD D/B error:Unable to deserialize an object

Christ
Could attache exe file An executable (SD45CheckRules.exe) also.
Crist Vandendri
Esteemed Contributor

Re: SD D/B error:Unable to deserialize an object

Sorry, I do not have it.
George M. Meneg
Honored Contributor

Re: SD D/B error:Unable to deserialize an object

Daniel, you can get it this tool by downloading SP15 or SP14. After unpacking the exe you can find it under the folder doc\itsm007071. The text below is pasted from doc\readme.htm

- ITSM007071
An executable (SD45ViewRules.exe) has been provided that checks the database- and UI-rules for any problems with deserialization and gives an overview of all existing rules. The executable and command file can be found in the doc\itsm007071 folder where this SDSK was unpacked.
A cmd-file (SD45ViewRules.cmd) has been provided with the following text, you must alter it to reflect your own client path:

@echo off
SET CLASSPATH=.;\lib\hotfix.jar;\lib\servicepack.jar;\lib\common.jar;\lib\sdcommon.jar;\lib\JClark.zip;\lib\ui.jar;\lib\sdui.jar
SD45ViewRules /settings=\user_settings.xml

Put the cmd and the executable file in a directory and double click on the cmd file. A dos window will be opened and after a short time be closed again. Check new files ViewUIRules.txt and ViewDBRules.txt for any errors. If a rule cannot be deserialized any more it is advised to delete it as it makes Service Desk environment unstable. The sql-statement to delete this corrupt rule can be found in the text files. It is not possible to manipulate the display of the data you receive in the text files.

Remark: Though this tool has been provided with a Service Pack there will be no support based on enhancements requests
menes fhtagn
//Add this to "OnDomLoad" event