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

Range search unable to serialize error

Highlighted
Ferggie
Occasional Advisor

Range search unable to serialize error

I currently running HPOV 4.5.0588(SP18) and I'm having problem trying to pull back all Service calls that are not "Closed". I trying to create a range query to do this, I've hit an "Unable to serialize object" error. Here's the code and error:

// Ordering range to not include Closed(88)
Integer openStatusRange[]= {10,78};

// Add caller criteria
IPersonHome phome = session.getPersonHome();
IPerson person = phome.openPerson(user.getPersonOid());
shome = session.getServicecallHome();
swhere = IServicecallHome shome.createServicecallWhere();
IServicecallWhere swhere.addCriteriumOnCaller(person);

// add Status range criteria
IStatusServicecallHome sthome = session
.getStatusServicecallHome();

IStatusServicecallWhere stwhere = sthome
.createStatusServicecallWhere();

stwhere.addCriteriumOnOrderingRange(openStatusRange);
IStatusServicecall[] status = sthome
.findStatusServicecall(stwhere);
swhere.addCriteriumOnStatusRange(status);

// Grab search results
IServicecall[] sc = shome.findServicecall(swhere);


=======
error:
Failed communicating with the server.
Nested exception is:
com.hp.ifc.io.AppStreamException: Unable to serialize object: com.hp.ifc.types.ApiWhere@a5f709
at com.hp.ifc.net.itp.AppItpClient.failConnection(Unknown Source)
at com.hp.ifc.net.itp.AppItpClient.execute(Unknown Source)
at com.hp.ifc.net.itp.AppItpClient.execute(Unknown Source)
at com.hp.ifc.net.itp.AppItpClient.remoteInvoke(Unknown Source)
at com.hp.ifc.net.itp.AppItpProxy.__objectInvoke(Unknown Source)
at com.hp.ifc.apiserver.ps.PApiServerEntity.find(Unknown Source)
at com.hp.ifc.api.ApiHome.findValues(Unknown Source)
at com.hp.itsm.api.impl.ApiServicecallHome.findServicecall(Unknown Source)
at com.wolseley.selfservice.dao.ServiceCallDAO.getServicecallList(ServiceCallDAO.java:209)
at com.wolseley.selfservice.action.GetServicecallListTestAction.execute(GetServicecallListTestAction.java:92)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:595)
3 REPLIES
Gurevich
Member

Re: Range search unable to serialize error

did you solve this problem? I have the same. :(
Ben H.B.
Super Collector

Re: Range search unable to serialize error

I have the error like yours, do you have any solution?
Gurevich
Member

Re: Range search unable to serialize error

My problem was in using addCriteriumOnText.
addCriteriumOnOrderingRange works fine.


But line:
Integer openStatusRange[]= {10,78};
seems to be wrong.
Integer[] statuses = {new Integer (10),new Integer (35)};// - OK

This code searches for problems with statuses, having ordering range 10-35:

Integer[] statuses = {new Integer (10),new Integer (35)};//10-35
IStatusProblemHome proStatusHome = MAINsession.getStatusProblemHome();
IStatusProblemWhere proStatusWhere = proStatusHome.createStatusProblemWhere();
proStatusWhere.addCriteriumOnOrderingRange(statuses);
IStatusProblem[] ProStatuses = proStatusHome.findStatusProblem(proStatusWhere);
IStatusProblem[] ProStatuses2 = {ProStatuses[0], ProStatuses[ProStatuses.length-1]};
IProblemHome proHome = MAINsession.getProblemHome();
IProblemWhere proWhere = proHome.createProblemWhere();
proWhere.addCriteriumOnStatusRange(ProStatuses2);
IProblem[] all_problems = proHome.findProblem(proWhere);

Point are welcome.
//Add this to "OnDomLoad" event