You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Anders Peterson <an...@optimatika.se> on 2003/09/22 18:31:08 UTC
No deserializer for dateTime
Hi,
I’m relatively new to SOAP and completely new to Axis.
I’ve used the wsdl2java tool to generate source code that I’m using
unaltered. It works fine except for one thing (so far). I get the
following exception:
- Exception:
org.xml.sax.SAXException: No deserializer for dateTime
at
org.apache.axis.encoding.DeserializerImpl.onStartElement(DeserializerImp
l.java:485)
at
org.apache.axis.encoding.DeserializerImpl.startElement(DeserializerImpl.
java:428)
at
org.apache.axis.encoding.DeserializationContextImpl.startElement(Deseria
lizationContextImpl.java:976)
at
org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:
198)
at
org.apache.axis.message.MessageElement.publishToHandler(MessageElement.j
ava:722)
at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:233)
at org.apache.axis.message.RPCElement.getParams(RPCElement.java:347)
at org.apache.axis.client.Call.invoke(Call.java:2272)
at org.apache.axis.client.Call.invoke(Call.java:2171)
at org.apache.axis.client.Call.invoke(Call.java:1691)
at
se.ws.backofficeonline.FundSOAP.IFundSOAPbindingStub.getNAV(IFundSOAPbin
dingStub.java:472)
at
se.optimatika.proj.qsd.com.QCDCommunicatorFront.getEvaluation(QCDCommuni
catorFront.java:166)
at
se.optimatika.proj.qsd.com.QCDEvaluationCommunicator.callRemote(QCDEvalu
ationCommunicator.java:73)
at
se.optimatika.proj.qsd.com.QCDEntityCommunicator.download(QCDEntityCommu
nicator.java:79)
at
se.optimatika.proj.qsd.eo.QCDEvaluation.doRemoteImport(QCDEvaluation.jav
a:493)
at Application.<init>(Application.java:60)
at java.lang.Class.newInstance0(Native Method)
at java.lang.Class.newInstance(Class.java:232)
at com.webobjects.appserver.WOApplication.main(WOApplication.java:296)
at Application.main(Application.java:31)
Shouldn’t this work?
http://www.w3.org/TR/xmlschema-2/#dateTime
Is it some sort of configuration problem?
I’m using Axis 1.1 with WebObjects 5.2.
/Anders
Re: No deserializer for dateTime
Posted by Dimuthu Leelarathne <mu...@vijayaba.cse.mrt.ac.lk>.
Well done :-).
----- Original Message -----
From: "Anders Peterson" <an...@optimatika.se>
To: <ax...@ws.apache.org>
Sent: Wednesday, September 24, 2003 7:53 PM
Subject: Re: No deserializer for dateTime
Hi,
I solved this the easy/wrong way!
I asked to have the dateTime communicated as a string instead (my app
is the only client). Now everything works fine!
/Anders
On tisdag, sep 24, 2002, at 05:26 Europe/Stockholm, Dimuthu Leelarathne
wrote:
> Hi Anders,
>
> I had the exact-problem sometime back, but it was regarding doc\literal
> services. Isn't this a client side deserialization problem? The
> Binding stub
> was the same ( i.e. it added a elemfield to the typedesc ).
>
> According to your stackTrace I see that the program-control-flow has
> not
> reached BeanDeserializer, which is supposed to deserialize it. I think
> you
> have to fix it first. The bean deserializer with the typedesc(where we
> added
> the elemField) should deserialize it. I didn't try hard enough to give
> you a
> concrete word, as to whether this could be done or not. Good luck.
>
> Regards,
> Dimuthu.
>
>
> ----- Original Message -----
> From: "Anders Peterson" <an...@optimatika.se>
> To: <ax...@ws.apache.org>
> Sent: Tuesday, September 23, 2003 7:29 PM
> Subject: Re: No deserializer for dateTime
>
>
> Is this a bug?
> ...
>
> What I have is a custom data type TNAV conatining two attributes - an
> int and a dateTime.
>
> // Type metadata
> private static org.apache.axis.description.TypeDesc typeDesc =
> new org.apache.axis.description.TypeDesc(TNAV.class);
>
> static {
> typeDesc.setXmlType(new
> javax.xml.namespace.QName("urn:FundSOAPIntf", "TNAV"));
> org.apache.axis.description.ElementDesc elemField = new
> org.apache.axis.description.ElementDesc();
> elemField.setFieldName("NAV_Code");
> elemField.setXmlName(new javax.xml.namespace.QName("",
> "NAV_Code"));
> elemField.setXmlType(new
> javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "int"));
> typeDesc.addFieldDesc(elemField);
> elemField = new org.apache.axis.description.ElementDesc();
> elemField.setFieldName("NAV_DateTime");
> elemField.setXmlName(new javax.xml.namespace.QName("",
> "NAV_DateTime"));
> elemField.setXmlType(new
> javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema",
> "dateTime"));
> typeDesc.addFieldDesc(elemField);
> }
>
> The *BindingStub it is configured to use a bean (de)serializer for
> TNAV.
>
> qName = new javax.xml.namespace.QName("urn:FundSOAPIntf",
> "TNAV");
> cachedSerQNames.add(qName);
> cls = FundSOAPIntf.TNAV.class;
> cachedSerClasses.add(cls);
> cachedSerFactories.add(beansf);
> cachedDeserFactories.add(beandf);
>
> Somehow the bean deserializer fails to find/call the dateTime
> deserializer. Is this a bug?
>
> /Anders
>
> On tisdag, sep 23, 2003, at 10:20 Europe/Stockholm, Anders Peterson
> wrote:
>
>> Hi again,
>>
>> As I understand it the
>> org.apache.axis.encoding.ser.CalendarDeserializer deserializer is
>> supposed to handle this.
>>
>>> org.xml.sax.SAXException: No deserializer for dateTime
>>
>> I assume the above exception means the deserializer is not found (not
>> that it doesn't work properly). Why isn't it found? Other
>> (de)serializers are found. The wsdl2java generated code works fine for
>> messages not containing dateTime objects.
>>
>> /Anders
>>
>> On måndag, sep 22, 2003, at 18:31 Europe/Stockholm, Anders Peterson
>> wrote:
>>
>>> Hi,
>>>
>>> I’m relatively new to SOAP and completely new to Axis.
>>>
>>> I’ve used the wsdl2java tool to generate source code that I’m using
>>> unaltered. It works fine except for one thing (so far). I get the
>>> following exception:
>>>
>>> - Exception:
>>> org.xml.sax.SAXException: No deserializer for dateTime
>>> at
>>> org.apache.axis.encoding.DeserializerImpl.onStartElement(Deserializer
>>> I
>>> mpl.java:485)
>>> at
>>> org.apache.axis.encoding.DeserializerImpl.startElement(DeserializerIm
>>> p
>>> l.java:428)
>>> at
>>> org.apache.axis.encoding.DeserializationContextImpl.startElement(Dese
>>> r
>>> ializationContextImpl.java:976)
>>> at
>>> org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.ja
>>> v
>>> a:198)
>>> at
>>> org.apache.axis.message.MessageElement.publishToHandler(MessageElemen
>>> t
>>> .java:722)
>>> at
>>> org.apache.axis.message.RPCElement.deserialize(RPCElement.java:233)
>>> at org.apache.axis.message.RPCElement.getParams(RPCElement.java:347)
>>> at org.apache.axis.client.Call.invoke(Call.java:2272)
>>> at org.apache.axis.client.Call.invoke(Call.java:2171)
>>> at org.apache.axis.client.Call.invoke(Call.java:1691)
>>> at
>>> se.ws.backofficeonline.FundSOAP.IFundSOAPbindingStub.getNAV(IFundSOAP
>>> b
>>> indingStub.java:472)
>>> at
>>> se.optimatika.proj.qsd.com.QCDCommunicatorFront.getEvaluation(QCDComm
>>> u
>>> nicatorFront.java:166)
>>> at
>>> se.optimatika.proj.qsd.com.QCDEvaluationCommunicator.callRemote(QCDEv
>>> a
>>> luationCommunicator.java:73)
>>> at
>>> se.optimatika.proj.qsd.com.QCDEntityCommunicator.download(QCDEntityCo
>>> m
>>> municator.java:79)
>>> at
>>> se.optimatika.proj.qsd.eo.QCDEvaluation.doRemoteImport(QCDEvaluation.
>>> j
>>> ava:493)
>>> at Application.<init>(Application.java:60)
>>> at java.lang.Class.newInstance0(Native Method)
>>> at java.lang.Class.newInstance(Class.java:232)
>>> at
>>> com.webobjects.appserver.WOApplication.main(WOApplication.java:296)
>>> at Application.main(Application.java:31)
>>>
>>> Shouldn’t this work?
>>>
>>> http://www.w3.org/TR/xmlschema-2/#dateTime
>>>
>>> Is it some sort of configuration problem?
>>>
>>> I’m using Axis 1.1 with WebObjects 5.2.
>>>
>>> /Anders
>
>
>
__________________________
Anders Peterson
Optimatika
Torstenssonsgatan 12, 5tr.
114 56 Stockholm
Sweden
Personal: +46 - (0)70 - 843 78 92
Company: + 46 - (0)8 - 720 30 66
Fax: + 46 - (0)8 - 15 31 00
Re: No deserializer for dateTime
Posted by Anders Peterson <an...@optimatika.se>.
Or so I thought...
Now I get:
org.xml.sax.SAXException: No deserializer for decimal
at
org.apache.axis.encoding.DeserializerImpl.onStartElement(DeserializerImp
l.java:485)
at
org.apache.axis.encoding.DeserializerImpl.startElement(DeserializerImpl.
java:428)
at
org.apache.axis.encoding.DeserializationContextImpl.startElement(Deseria
lizationContextImpl.java:976)
at
org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:
198)
at
org.apache.axis.message.MessageElement.publishToHandler(MessageElement.j
ava:722)
at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:233)
at org.apache.axis.message.RPCElement.getParams(RPCElement.java:347)
at org.apache.axis.client.Call.invoke(Call.java:2272)
at org.apache.axis.client.Call.invoke(Call.java:2171)
at org.apache.axis.client.Call.invoke(Call.java:1691)
at
se.ws.backofficeonline.FundSOAP.IFundSOAPbindingStub.getCustodyAccount(I
FundSOAPbindingStub.java:768)
I have better (more) info:
### Begin Problem Report ###
2003-09-24 16:16:30 Etc/GMT
Victim: se.optimatika.proj.qsd.com.QCDCommunicatorFront@5cbc57
Problem: Access violation at address CCFFFCFB. Read of address CCFFFCFB
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server
faultSubcode:
faultString: Access violation at address CCFFFCFB. Read of address
CCFFFCFB
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace: AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server
faultSubcode:
faultString: Access violation at address CCFFFCFB. Read of address
CCFFFCFB
faultActor:
faultNode:
faultDetail:
Access violation at address CCFFFCFB. Read of address CCFFFCFB
at
org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.ja
va:260)
at
org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.jav
a:169)
at
org.apache.axis.encoding.DeserializationContextImpl.endElement(Deseriali
zationContextImpl.java:1015)
at
org.apache.xerces.parsers.AbstractSAXParser.endElement(AbstractSAXParser
.java:585)
Re: No deserializer for dateTime
Posted by Anders Peterson <an...@optimatika.se>.
Hi,
I solved this the easy/wrong way!
I asked to have the dateTime communicated as a string instead (my app
is the only client). Now everything works fine!
/Anders
On tisdag, sep 24, 2002, at 05:26 Europe/Stockholm, Dimuthu Leelarathne
wrote:
> Hi Anders,
>
> I had the exact-problem sometime back, but it was regarding doc\literal
> services. Isn't this a client side deserialization problem? The
> Binding stub
> was the same ( i.e. it added a elemfield to the typedesc ).
>
> According to your stackTrace I see that the program-control-flow has
> not
> reached BeanDeserializer, which is supposed to deserialize it. I think
> you
> have to fix it first. The bean deserializer with the typedesc(where we
> added
> the elemField) should deserialize it. I didn't try hard enough to give
> you a
> concrete word, as to whether this could be done or not. Good luck.
>
> Regards,
> Dimuthu.
>
>
> ----- Original Message -----
> From: "Anders Peterson" <an...@optimatika.se>
> To: <ax...@ws.apache.org>
> Sent: Tuesday, September 23, 2003 7:29 PM
> Subject: Re: No deserializer for dateTime
>
>
> Is this a bug?
> ...
>
> What I have is a custom data type TNAV conatining two attributes - an
> int and a dateTime.
>
> // Type metadata
> private static org.apache.axis.description.TypeDesc typeDesc =
> new org.apache.axis.description.TypeDesc(TNAV.class);
>
> static {
> typeDesc.setXmlType(new
> javax.xml.namespace.QName("urn:FundSOAPIntf", "TNAV"));
> org.apache.axis.description.ElementDesc elemField = new
> org.apache.axis.description.ElementDesc();
> elemField.setFieldName("NAV_Code");
> elemField.setXmlName(new javax.xml.namespace.QName("",
> "NAV_Code"));
> elemField.setXmlType(new
> javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "int"));
> typeDesc.addFieldDesc(elemField);
> elemField = new org.apache.axis.description.ElementDesc();
> elemField.setFieldName("NAV_DateTime");
> elemField.setXmlName(new javax.xml.namespace.QName("",
> "NAV_DateTime"));
> elemField.setXmlType(new
> javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema",
> "dateTime"));
> typeDesc.addFieldDesc(elemField);
> }
>
> The *BindingStub it is configured to use a bean (de)serializer for
> TNAV.
>
> qName = new javax.xml.namespace.QName("urn:FundSOAPIntf",
> "TNAV");
> cachedSerQNames.add(qName);
> cls = FundSOAPIntf.TNAV.class;
> cachedSerClasses.add(cls);
> cachedSerFactories.add(beansf);
> cachedDeserFactories.add(beandf);
>
> Somehow the bean deserializer fails to find/call the dateTime
> deserializer. Is this a bug?
>
> /Anders
>
> On tisdag, sep 23, 2003, at 10:20 Europe/Stockholm, Anders Peterson
> wrote:
>
>> Hi again,
>>
>> As I understand it the
>> org.apache.axis.encoding.ser.CalendarDeserializer deserializer is
>> supposed to handle this.
>>
>>> org.xml.sax.SAXException: No deserializer for dateTime
>>
>> I assume the above exception means the deserializer is not found (not
>> that it doesn't work properly). Why isn't it found? Other
>> (de)serializers are found. The wsdl2java generated code works fine for
>> messages not containing dateTime objects.
>>
>> /Anders
>>
>> On måndag, sep 22, 2003, at 18:31 Europe/Stockholm, Anders Peterson
>> wrote:
>>
>>> Hi,
>>>
>>> I’m relatively new to SOAP and completely new to Axis.
>>>
>>> I’ve used the wsdl2java tool to generate source code that I’m using
>>> unaltered. It works fine except for one thing (so far). I get the
>>> following exception:
>>>
>>> - Exception:
>>> org.xml.sax.SAXException: No deserializer for dateTime
>>> at
>>> org.apache.axis.encoding.DeserializerImpl.onStartElement(Deserializer
>>> I
>>> mpl.java:485)
>>> at
>>> org.apache.axis.encoding.DeserializerImpl.startElement(DeserializerIm
>>> p
>>> l.java:428)
>>> at
>>> org.apache.axis.encoding.DeserializationContextImpl.startElement(Dese
>>> r
>>> ializationContextImpl.java:976)
>>> at
>>> org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.ja
>>> v
>>> a:198)
>>> at
>>> org.apache.axis.message.MessageElement.publishToHandler(MessageElemen
>>> t
>>> .java:722)
>>> at
>>> org.apache.axis.message.RPCElement.deserialize(RPCElement.java:233)
>>> at org.apache.axis.message.RPCElement.getParams(RPCElement.java:347)
>>> at org.apache.axis.client.Call.invoke(Call.java:2272)
>>> at org.apache.axis.client.Call.invoke(Call.java:2171)
>>> at org.apache.axis.client.Call.invoke(Call.java:1691)
>>> at
>>> se.ws.backofficeonline.FundSOAP.IFundSOAPbindingStub.getNAV(IFundSOAP
>>> b
>>> indingStub.java:472)
>>> at
>>> se.optimatika.proj.qsd.com.QCDCommunicatorFront.getEvaluation(QCDComm
>>> u
>>> nicatorFront.java:166)
>>> at
>>> se.optimatika.proj.qsd.com.QCDEvaluationCommunicator.callRemote(QCDEv
>>> a
>>> luationCommunicator.java:73)
>>> at
>>> se.optimatika.proj.qsd.com.QCDEntityCommunicator.download(QCDEntityCo
>>> m
>>> municator.java:79)
>>> at
>>> se.optimatika.proj.qsd.eo.QCDEvaluation.doRemoteImport(QCDEvaluation.
>>> j
>>> ava:493)
>>> at Application.<init>(Application.java:60)
>>> at java.lang.Class.newInstance0(Native Method)
>>> at java.lang.Class.newInstance(Class.java:232)
>>> at
>>> com.webobjects.appserver.WOApplication.main(WOApplication.java:296)
>>> at Application.main(Application.java:31)
>>>
>>> Shouldn’t this work?
>>>
>>> http://www.w3.org/TR/xmlschema-2/#dateTime
>>>
>>> Is it some sort of configuration problem?
>>>
>>> I’m using Axis 1.1 with WebObjects 5.2.
>>>
>>> /Anders
>
>
>
__________________________
Anders Peterson
Optimatika
Torstenssonsgatan 12, 5tr.
114 56 Stockholm
Sweden
Personal: +46 - (0)70 - 843 78 92
Company: + 46 - (0)8 - 720 30 66
Fax: + 46 - (0)8 - 15 31 00
Re: No deserializer for dateTime
Posted by Dimuthu Leelarathne <mu...@vijayaba.cse.mrt.ac.lk>.
Hi Anders,
I had the exact-problem sometime back, but it was regarding doc\literal
services. Isn't this a client side deserialization problem? The Binding stub
was the same ( i.e. it added a elemfield to the typedesc ).
According to your stackTrace I see that the program-control-flow has not
reached BeanDeserializer, which is supposed to deserialize it. I think you
have to fix it first. The bean deserializer with the typedesc(where we added
the elemField) should deserialize it. I didn't try hard enough to give you a
concrete word, as to whether this could be done or not. Good luck.
Regards,
Dimuthu.
----- Original Message -----
From: "Anders Peterson" <an...@optimatika.se>
To: <ax...@ws.apache.org>
Sent: Tuesday, September 23, 2003 7:29 PM
Subject: Re: No deserializer for dateTime
Is this a bug?
...
What I have is a custom data type TNAV conatining two attributes - an
int and a dateTime.
// Type metadata
private static org.apache.axis.description.TypeDesc typeDesc =
new org.apache.axis.description.TypeDesc(TNAV.class);
static {
typeDesc.setXmlType(new
javax.xml.namespace.QName("urn:FundSOAPIntf", "TNAV"));
org.apache.axis.description.ElementDesc elemField = new
org.apache.axis.description.ElementDesc();
elemField.setFieldName("NAV_Code");
elemField.setXmlName(new javax.xml.namespace.QName("",
"NAV_Code"));
elemField.setXmlType(new
javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "int"));
typeDesc.addFieldDesc(elemField);
elemField = new org.apache.axis.description.ElementDesc();
elemField.setFieldName("NAV_DateTime");
elemField.setXmlName(new javax.xml.namespace.QName("",
"NAV_DateTime"));
elemField.setXmlType(new
javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema",
"dateTime"));
typeDesc.addFieldDesc(elemField);
}
The *BindingStub it is configured to use a bean (de)serializer for TNAV.
qName = new javax.xml.namespace.QName("urn:FundSOAPIntf",
"TNAV");
cachedSerQNames.add(qName);
cls = FundSOAPIntf.TNAV.class;
cachedSerClasses.add(cls);
cachedSerFactories.add(beansf);
cachedDeserFactories.add(beandf);
Somehow the bean deserializer fails to find/call the dateTime
deserializer. Is this a bug?
/Anders
On tisdag, sep 23, 2003, at 10:20 Europe/Stockholm, Anders Peterson
wrote:
> Hi again,
>
> As I understand it the
> org.apache.axis.encoding.ser.CalendarDeserializer deserializer is
> supposed to handle this.
>
>> org.xml.sax.SAXException: No deserializer for dateTime
>
> I assume the above exception means the deserializer is not found (not
> that it doesn't work properly). Why isn't it found? Other
> (de)serializers are found. The wsdl2java generated code works fine for
> messages not containing dateTime objects.
>
> /Anders
>
> On måndag, sep 22, 2003, at 18:31 Europe/Stockholm, Anders Peterson
> wrote:
>
>> Hi,
>>
>> I’m relatively new to SOAP and completely new to Axis.
>>
>> I’ve used the wsdl2java tool to generate source code that I’m using
>> unaltered. It works fine except for one thing (so far). I get the
>> following exception:
>>
>> - Exception:
>> org.xml.sax.SAXException: No deserializer for dateTime
>> at
>> org.apache.axis.encoding.DeserializerImpl.onStartElement(DeserializerI
>> mpl.java:485)
>> at
>> org.apache.axis.encoding.DeserializerImpl.startElement(DeserializerImp
>> l.java:428)
>> at
>> org.apache.axis.encoding.DeserializationContextImpl.startElement(Deser
>> ializationContextImpl.java:976)
>> at
>> org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.jav
>> a:198)
>> at
>> org.apache.axis.message.MessageElement.publishToHandler(MessageElement
>> .java:722)
>> at
>> org.apache.axis.message.RPCElement.deserialize(RPCElement.java:233)
>> at org.apache.axis.message.RPCElement.getParams(RPCElement.java:347)
>> at org.apache.axis.client.Call.invoke(Call.java:2272)
>> at org.apache.axis.client.Call.invoke(Call.java:2171)
>> at org.apache.axis.client.Call.invoke(Call.java:1691)
>> at
>> se.ws.backofficeonline.FundSOAP.IFundSOAPbindingStub.getNAV(IFundSOAPb
>> indingStub.java:472)
>> at
>> se.optimatika.proj.qsd.com.QCDCommunicatorFront.getEvaluation(QCDCommu
>> nicatorFront.java:166)
>> at
>> se.optimatika.proj.qsd.com.QCDEvaluationCommunicator.callRemote(QCDEva
>> luationCommunicator.java:73)
>> at
>> se.optimatika.proj.qsd.com.QCDEntityCommunicator.download(QCDEntityCom
>> municator.java:79)
>> at
>> se.optimatika.proj.qsd.eo.QCDEvaluation.doRemoteImport(QCDEvaluation.j
>> ava:493)
>> at Application.<init>(Application.java:60)
>> at java.lang.Class.newInstance0(Native Method)
>> at java.lang.Class.newInstance(Class.java:232)
>> at
>> com.webobjects.appserver.WOApplication.main(WOApplication.java:296)
>> at Application.main(Application.java:31)
>>
>> Shouldn’t this work?
>>
>> http://www.w3.org/TR/xmlschema-2/#dateTime
>>
>> Is it some sort of configuration problem?
>>
>> I’m using Axis 1.1 with WebObjects 5.2.
>>
>> /Anders
Can the BeanDeserializer call other deserializers?
Posted by Anders Peterson <an...@optimatika.se>.
Can the org.apache.axis.encoding.ser.BeanDeserializer call any other
deserializer? (Which deserializers can it call?)
More specifically can it call the CalendarSerializer?
On tisdag, sep 23, 2003, at 15:29 Europe/Stockholm, Anders Peterson
wrote:
> Is this a bug?
> ...
>
> What I have is a custom data type TNAV conatining two attributes - an
> int and a dateTime.
>
> // Type metadata
> private static org.apache.axis.description.TypeDesc typeDesc =
> new org.apache.axis.description.TypeDesc(TNAV.class);
>
> static {
> typeDesc.setXmlType(new
> javax.xml.namespace.QName("urn:FundSOAPIntf", "TNAV"));
> org.apache.axis.description.ElementDesc elemField = new
> org.apache.axis.description.ElementDesc();
> elemField.setFieldName("NAV_Code");
> elemField.setXmlName(new javax.xml.namespace.QName("",
> "NAV_Code"));
> elemField.setXmlType(new
> javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "int"));
> typeDesc.addFieldDesc(elemField);
> elemField = new org.apache.axis.description.ElementDesc();
> elemField.setFieldName("NAV_DateTime");
> elemField.setXmlName(new javax.xml.namespace.QName("",
> "NAV_DateTime"));
> elemField.setXmlType(new
> javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema",
> "dateTime"));
> typeDesc.addFieldDesc(elemField);
> }
>
> The *BindingStub it is configured to use a bean (de)serializer for
> TNAV.
>
> qName = new javax.xml.namespace.QName("urn:FundSOAPIntf",
> "TNAV");
> cachedSerQNames.add(qName);
> cls = FundSOAPIntf.TNAV.class;
> cachedSerClasses.add(cls);
> cachedSerFactories.add(beansf);
> cachedDeserFactories.add(beandf);
>
> Somehow the bean deserializer fails to find/call the dateTime
> deserializer. Is this a bug?
>
> /Anders
>
> On tisdag, sep 23, 2003, at 10:20 Europe/Stockholm, Anders Peterson
> wrote:
>
>> Hi again,
>>
>> As I understand it the
>> org.apache.axis.encoding.ser.CalendarDeserializer deserializer is
>> supposed to handle this.
>>
>>> org.xml.sax.SAXException: No deserializer for dateTime
>>
>> I assume the above exception means the deserializer is not found (not
>> that it doesn't work properly). Why isn't it found? Other
>> (de)serializers are found. The wsdl2java generated code works fine
>> for messages not containing dateTime objects.
>>
>> /Anders
>>
>> On måndag, sep 22, 2003, at 18:31 Europe/Stockholm, Anders Peterson
>> wrote:
>>
>>> Hi,
>>>
>>> I’m relatively new to SOAP and completely new to Axis.
>>>
>>> I’ve used the wsdl2java tool to generate source code that I’m using
>>> unaltered. It works fine except for one thing (so far). I get the
>>> following exception:
>>>
>>> - Exception:
>>> org.xml.sax.SAXException: No deserializer for dateTime
>>> at
>>> org.apache.axis.encoding.DeserializerImpl.onStartElement(Deserializer
>>> Impl.java:485)
>>> at
>>> org.apache.axis.encoding.DeserializerImpl.startElement(DeserializerIm
>>> pl.java:428)
>>> at
>>> org.apache.axis.encoding.DeserializationContextImpl.startElement(Dese
>>> rializationContextImpl.java:976)
>>> at
>>> org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.ja
>>> va:198)
>>> at
>>> org.apache.axis.message.MessageElement.publishToHandler(MessageElemen
>>> t.java:722)
>>> at
>>> org.apache.axis.message.RPCElement.deserialize(RPCElement.java:233)
>>> at org.apache.axis.message.RPCElement.getParams(RPCElement.java:347)
>>> at org.apache.axis.client.Call.invoke(Call.java:2272)
>>> at org.apache.axis.client.Call.invoke(Call.java:2171)
>>> at org.apache.axis.client.Call.invoke(Call.java:1691)
>>> at
>>> se.ws.backofficeonline.FundSOAP.IFundSOAPbindingStub.getNAV(IFundSOAP
>>> bindingStub.java:472)
>>> at
>>> se.optimatika.proj.qsd.com.QCDCommunicatorFront.getEvaluation(QCDComm
>>> unicatorFront.java:166)
>>> at
>>> se.optimatika.proj.qsd.com.QCDEvaluationCommunicator.callRemote(QCDEv
>>> aluationCommunicator.java:73)
>>> at
>>> se.optimatika.proj.qsd.com.QCDEntityCommunicator.download(QCDEntityCo
>>> mmunicator.java:79)
>>> at
>>> se.optimatika.proj.qsd.eo.QCDEvaluation.doRemoteImport(QCDEvaluation.
>>> java:493)
>>> at Application.<init>(Application.java:60)
>>> at java.lang.Class.newInstance0(Native Method)
>>> at java.lang.Class.newInstance(Class.java:232)
>>> at
>>> com.webobjects.appserver.WOApplication.main(WOApplication.java:296)
>>> at Application.main(Application.java:31)
>>>
>>> Shouldn’t this work?
>>>
>>> http://www.w3.org/TR/xmlschema-2/#dateTime
>>>
>>> Is it some sort of configuration problem?
>>>
>>> I’m using Axis 1.1 with WebObjects 5.2.
>>>
>>> /Anders
>
>
Re: No deserializer for dateTime
Posted by Anders Peterson <an...@optimatika.se>.
Is this a bug?
...
What I have is a custom data type TNAV conatining two attributes - an
int and a dateTime.
// Type metadata
private static org.apache.axis.description.TypeDesc typeDesc =
new org.apache.axis.description.TypeDesc(TNAV.class);
static {
typeDesc.setXmlType(new
javax.xml.namespace.QName("urn:FundSOAPIntf", "TNAV"));
org.apache.axis.description.ElementDesc elemField = new
org.apache.axis.description.ElementDesc();
elemField.setFieldName("NAV_Code");
elemField.setXmlName(new javax.xml.namespace.QName("",
"NAV_Code"));
elemField.setXmlType(new
javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "int"));
typeDesc.addFieldDesc(elemField);
elemField = new org.apache.axis.description.ElementDesc();
elemField.setFieldName("NAV_DateTime");
elemField.setXmlName(new javax.xml.namespace.QName("",
"NAV_DateTime"));
elemField.setXmlType(new
javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema",
"dateTime"));
typeDesc.addFieldDesc(elemField);
}
The *BindingStub it is configured to use a bean (de)serializer for TNAV.
qName = new javax.xml.namespace.QName("urn:FundSOAPIntf",
"TNAV");
cachedSerQNames.add(qName);
cls = FundSOAPIntf.TNAV.class;
cachedSerClasses.add(cls);
cachedSerFactories.add(beansf);
cachedDeserFactories.add(beandf);
Somehow the bean deserializer fails to find/call the dateTime
deserializer. Is this a bug?
/Anders
On tisdag, sep 23, 2003, at 10:20 Europe/Stockholm, Anders Peterson
wrote:
> Hi again,
>
> As I understand it the
> org.apache.axis.encoding.ser.CalendarDeserializer deserializer is
> supposed to handle this.
>
>> org.xml.sax.SAXException: No deserializer for dateTime
>
> I assume the above exception means the deserializer is not found (not
> that it doesn't work properly). Why isn't it found? Other
> (de)serializers are found. The wsdl2java generated code works fine for
> messages not containing dateTime objects.
>
> /Anders
>
> On måndag, sep 22, 2003, at 18:31 Europe/Stockholm, Anders Peterson
> wrote:
>
>> Hi,
>>
>> I’m relatively new to SOAP and completely new to Axis.
>>
>> I’ve used the wsdl2java tool to generate source code that I’m using
>> unaltered. It works fine except for one thing (so far). I get the
>> following exception:
>>
>> - Exception:
>> org.xml.sax.SAXException: No deserializer for dateTime
>> at
>> org.apache.axis.encoding.DeserializerImpl.onStartElement(DeserializerI
>> mpl.java:485)
>> at
>> org.apache.axis.encoding.DeserializerImpl.startElement(DeserializerImp
>> l.java:428)
>> at
>> org.apache.axis.encoding.DeserializationContextImpl.startElement(Deser
>> ializationContextImpl.java:976)
>> at
>> org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.jav
>> a:198)
>> at
>> org.apache.axis.message.MessageElement.publishToHandler(MessageElement
>> .java:722)
>> at
>> org.apache.axis.message.RPCElement.deserialize(RPCElement.java:233)
>> at org.apache.axis.message.RPCElement.getParams(RPCElement.java:347)
>> at org.apache.axis.client.Call.invoke(Call.java:2272)
>> at org.apache.axis.client.Call.invoke(Call.java:2171)
>> at org.apache.axis.client.Call.invoke(Call.java:1691)
>> at
>> se.ws.backofficeonline.FundSOAP.IFundSOAPbindingStub.getNAV(IFundSOAPb
>> indingStub.java:472)
>> at
>> se.optimatika.proj.qsd.com.QCDCommunicatorFront.getEvaluation(QCDCommu
>> nicatorFront.java:166)
>> at
>> se.optimatika.proj.qsd.com.QCDEvaluationCommunicator.callRemote(QCDEva
>> luationCommunicator.java:73)
>> at
>> se.optimatika.proj.qsd.com.QCDEntityCommunicator.download(QCDEntityCom
>> municator.java:79)
>> at
>> se.optimatika.proj.qsd.eo.QCDEvaluation.doRemoteImport(QCDEvaluation.j
>> ava:493)
>> at Application.<init>(Application.java:60)
>> at java.lang.Class.newInstance0(Native Method)
>> at java.lang.Class.newInstance(Class.java:232)
>> at
>> com.webobjects.appserver.WOApplication.main(WOApplication.java:296)
>> at Application.main(Application.java:31)
>>
>> Shouldn’t this work?
>>
>> http://www.w3.org/TR/xmlschema-2/#dateTime
>>
>> Is it some sort of configuration problem?
>>
>> I’m using Axis 1.1 with WebObjects 5.2.
>>
>> /Anders
Re: No deserializer for dateTime
Posted by Anders Peterson <an...@optimatika.se>.
Hi again,
As I understand it the
org.apache.axis.encoding.ser.CalendarDeserializer deserializer is
supposed to handle this.
> org.xml.sax.SAXException: No deserializer for dateTime
I assume the above exception means the deserializer is not found (not
that it doesn't work properly). Why isn't it found? Other
(de)serializers are found. The wsdl2java generated code works fine for
messages not containing dateTime objects.
/Anders
On måndag, sep 22, 2003, at 18:31 Europe/Stockholm, Anders Peterson
wrote:
> Hi,
>
> I’m relatively new to SOAP and completely new to Axis.
>
> I’ve used the wsdl2java tool to generate source code that I’m using
> unaltered. It works fine except for one thing (so far). I get the
> following exception:
>
> - Exception:
> org.xml.sax.SAXException: No deserializer for dateTime
> at
> org.apache.axis.encoding.DeserializerImpl.onStartElement(DeserializerIm
> pl.java:485)
> at
> org.apache.axis.encoding.DeserializerImpl.startElement(DeserializerImpl
> .java:428)
> at
> org.apache.axis.encoding.DeserializationContextImpl.startElement(Deseri
> alizationContextImpl.java:976)
> at
> org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java
> :198)
> at
> org.apache.axis.message.MessageElement.publishToHandler(MessageElement.
> java:722)
> at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:233)
> at org.apache.axis.message.RPCElement.getParams(RPCElement.java:347)
> at org.apache.axis.client.Call.invoke(Call.java:2272)
> at org.apache.axis.client.Call.invoke(Call.java:2171)
> at org.apache.axis.client.Call.invoke(Call.java:1691)
> at
> se.ws.backofficeonline.FundSOAP.IFundSOAPbindingStub.getNAV(IFundSOAPbi
> ndingStub.java:472)
> at
> se.optimatika.proj.qsd.com.QCDCommunicatorFront.getEvaluation(QCDCommun
> icatorFront.java:166)
> at
> se.optimatika.proj.qsd.com.QCDEvaluationCommunicator.callRemote(QCDEval
> uationCommunicator.java:73)
> at
> se.optimatika.proj.qsd.com.QCDEntityCommunicator.download(QCDEntityComm
> unicator.java:79)
> at
> se.optimatika.proj.qsd.eo.QCDEvaluation.doRemoteImport(QCDEvaluation.ja
> va:493)
> at Application.<init>(Application.java:60)
> at java.lang.Class.newInstance0(Native Method)
> at java.lang.Class.newInstance(Class.java:232)
> at com.webobjects.appserver.WOApplication.main(WOApplication.java:296)
> at Application.main(Application.java:31)
>
> Shouldn’t this work?
>
> http://www.w3.org/TR/xmlschema-2/#dateTime
>
> Is it some sort of configuration problem?
>
> I’m using Axis 1.1 with WebObjects 5.2.
>
> /Anders
>
>
__________________________
Anders Peterson
Optimatika
Torstenssonsgatan 12, 5tr.
114 56 Stockholm
Sweden
Personal: +46 - (0)70 - 843 78 92
Company: + 46 - (0)8 - 720 30 66
Fax: + 46 - (0)8 - 15 31 00