I've attached the server stack trace, and also the response if I don't
include the startRecord & maximumRecords.
I get the same problem no matter what the search terms are.
Thanks
David
-----Original Message-----
From: LeVan,Ralph [mailto:[log in to unmask]]
Sent: 25 June 2003 15:50
To: 'David Gilks'; [log in to unmask]
Subject: RE: problem setting SRW client params with SOAP::Lite
My bet is that the problem has something to do with the records to be
returned and not the request parameters themselves.
Have you tried a different query? It might be just a problem with a
particular record.
Could you send me the complete stack trace? That might help track down the
problem.
Thanks!
Ralph
> -----Original Message-----
> From: David Gilks [mailto:[log in to unmask]]
> Sent: Wednesday, June 25, 2003 10:45 AM
> To: [log in to unmask]
> Cc: [log in to unmask]
> Subject: problem setting SRW client params with SOAP::Lite
>
>
> Hi,
>
> I'm stuck on a problem setting up a SRW client request, which I hope
> somebody can help me with.
>
> The code below gets an error(see below) returned from the
> server. I have
> determined that the problem is in setting the 'startRecord' and
> 'maximumRecords', as if I comment these lines out I get a
> valid response but
> no results returned, only the number of hits the search
> matched is returned.
>
> Any ideas or help would be much appreciated.
>
> David Gilks
>
> ===============
> my $soap = SOAP::Lite
>
> ->service('http://alcme.oclc.org/axis/SOAR/services/SearchRetr
> ieveService
> ?wsdl')
> ->outputxml(1)
>
> ->proxy('http://alcme.oclc.org/axis/SOAR/services/SearchRetrie
> veService')
> ;
>
> my $method = SOAP::Data->name('searchRetrieveRequest')
> -> attr({xmlns => 'http://www.imsglobal.org/xsd/imsmd_rootv1p2'})
> -> attr({xmlns => 'http://www.loc.gov/zing/srw/v1.0/'});
>
> my @params = (
> SOAP::Data->name(query => 'lom.keyword scr software or computer'),
> SOAP::Data->name(startRecord => '1'),
> SOAP::Data->name(maximumRecords => '2')
> );
>
> my $response = $soap->call($method => @params);
>
> ================
> the error from the server is :
> 'ns1:Server.userException 'java.lang.IllegalArgumentException:
> java.lang.ClassCastException@b64078 server ....'
>
ns1:Server.userException
java.lang.IllegalArgumentException: java.lang.ClassCastException@bc7c0
java.lang.IllegalArgumentException: java.lang.ClassCastException@bc7c0
at org.apache.axis.encoding.ser.BeanPropertyTarget.set(BeanPropertyTarget.java:175)
at org.apache.axis.encoding.DeserializerImpl.valueComplete(DeserializerImpl.java:260)
at org.apache.axis.encoding.DeserializerImpl.endElement(DeserializerImpl.java:502)
at org.apache.axis.encoding.DeserializationContextImpl.endElement(DeserializationContextImpl.java:942)
at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:206)
at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:684)
at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:207)
at org.apache.axis.message.RPCElement.getParams(RPCElement.java:265)
at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:190)
at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:276)
at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:156)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:126)
at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:437)
at org.apache.axis.server.AxisServer.invoke(AxisServer.java:316)
at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:701)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:335)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:190)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2347)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:468)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1027)
at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1125)
at java.lang.Thread.run(Thread.java:536)
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<soapenv:Fault>
<faultcode xmlns:ns1="http://xml.apache.org/axis/">ns1:Server.userException</faultcode>
<faultstring>java.lang.IllegalArgumentException: java.lang.ClassCastException@284ac3</faultstring>
<detail>
<ns2:stackTrace xmlns:ns2="http://xml.apache.org/axis/">java.lang.IllegalArgumentException: java.lang.ClassCastException@284ac3
at org.apache.axis.encoding.ser.BeanPropertyTarget.set(BeanPropertyTarget.java:175)
at org.apache.axis.encoding.DeserializerImpl.valueComplete(DeserializerImpl.java:260)
at org.apache.axis.encoding.DeserializerImpl.endElement(DeserializerImpl.java:502)
at org.apache.axis.encoding.DeserializationContextImpl.endElement(DeserializationContextImpl.java:942)
at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:206)
at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:684)
at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:207)
at org.apache.axis.message.RPCElement.getParams(RPCElement.java:265)
at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:190)
at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:276)
at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:156)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:126)
at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:437)
at org.apache.axis.server.AxisServer.invoke(AxisServer.java:316)
at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:701)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:335)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:190)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2347)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:468)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1027)
at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1125)
at java.lang.Thread.run(Thread.java:536)
</ns2:stackTrace>
</detail>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<searchRetrieveResponse xmlns="http://www.loc.gov/zing/srw/v1.0/">
<numberOfRecords>33</numberOfRecords>
<resultSetId>sg4hf3</resultSetId>
<resultSetIdleTime>300</resultSetIdleTime>
<nextRecordPosition>1</nextRecordPosition>
<echoedRequest>
<xQuery xsi:nil="true"/>
<xSortKeys xsi:nil="true"/>
<query>lom.keyword scr computer</query>
<sortKeys xsi:nil="true"/>
</echoedRequest>
</searchRetrieveResponse>
</soapenv:Body>
</soapenv:Envelope>
|