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 Nicolae Marasoiu <nm...@kepler-rominfo.com> on 2007/04/16 12:52:36 UTC
[AXIS2] NumberFormatException on parsing null date with hot deployed RPC service
Hi;
In the auto-generated wsdl, I have such a type entry inside a
xs:complexType:
<xs:element name="createdDate" type="xs:dateTime" />
I get:
java.lang.NumberFormatException: badDateTime00
at
org.apache.axis2.databinding.typemapping.SimpleTypeMapper.makeCalendar(Simpl
eTypeMapper.java:214)
at
org.apache.axis2.databinding.typemapping.SimpleTypeMapper.getSimpleTypeObjec
t(SimpleTypeMapper.java:93)
at
org.apache.axis2.databinding.utils.BeanUtil.deserialize(BeanUtil.java:291)
at
org.apache.axis2.databinding.utils.BeanUtil.deserialize(BeanUtil.java:299)
at
org.apache.axis2.databinding.utils.BeanUtil.deserialize(BeanUtil.java:247)
at
org.apache.axis2.databinding.utils.BeanUtil.deserialize(BeanUtil.java:296)
at
org.apache.axis2.databinding.utils.BeanUtil.processObject(BeanUtil.java:557)
at
org.apache.axis2.databinding.utils.BeanUtil.ProcessElement(BeanUtil.java:507
)
at
org.apache.axis2.databinding.utils.BeanUtil.deserialize(BeanUtil.java:446)
at
org.apache.axis2.rpc.receivers.RPCUtil.processRequest(RPCUtil.java:109)
at
org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver.invokeBusinessLogic(
RPCInOnlyMessageReceiver.java:84)
How can I make axis generate nillable="true" on these elements also? Or is
it part of xs:dateTime definition?
The exception above is given precisely at asserting not null and not empty
value.
On the wire:
<modifiedDate xmlns:nil="http://www.w3.org/2001/XMLSchema-instance"
nil:nil="true" />.
Another problem I get with hot deployed RPC service is when I have null
array properties. For these nillable=true is generated in wsdl, but still:
org.apache.axiom.om.OMException: java.lang.NullPointerException
at
org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:194)
at org.apache.axiom.om.impl.llom.OMNodeImpl.build(OMNodeImpl.java:318)
at
org.apache.axiom.om.impl.llom.OMElementImpl.build(OMElementImpl.java:632)
at
org.apache.axiom.om.impl.llom.OMElementImpl.detach(OMElementImpl.java:599)
at org.apache.axiom.om.impl.llom.OMNodeImpl.setParent(OMNodeImpl.java:117)
at
org.apache.axiom.om.impl.llom.OMElementImpl.addChild(OMElementImpl.java:249)
at
org.apache.axiom.om.impl.llom.OMElementImpl.addChild(OMElementImpl.java:202)
at org.apache.axis2.rpc.receivers.RPCUtil.processResponse(RPCUtil.java:97)
at org.apache.axis2.rpc.receivers.RPCUtil.processResponse(RPCUtil.java:192)
at
org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMes
sageReceiver.java:136)
at
org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.receive(Abstract
InOutSyncMessageReceiver.java:39)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:497)
at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HT
TPTransportUtils.java:328)
at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:254)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at
com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1
212)
at
com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1
173)
at
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.
java:92)
at CatchFilter.doFilter(CatchFilter.java:21)
at
com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstance
Wrapper.java:142)
at
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.
java:77)
at
com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.
java:626)
at
com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServl
etWrapper.java:80)
at
com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:1657)
at
com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:77)
at
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(Ht
tpInboundLink.java:421)
at
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(Ht
tpInboundLink.java:367)
at
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.j
ava:276)
at
com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscrimin
aters(NewConnectionInitialReadCallback.java:201)
at
com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewCon
nectionInitialReadCallback.java:103)
at
com.ibm.ws.tcp.channel.impl.WorkQueueManager.requestComplete(WorkQueueManage
r.java:548)
at
com.ibm.ws.tcp.channel.impl.WorkQueueManager.attemptIO(WorkQueueManager.java
:601)
at
com.ibm.ws.tcp.channel.impl.WorkQueueManager.workerRun(WorkQueueManager.java
:934)
at
com.ibm.ws.tcp.channel.impl.WorkQueueManager$Worker.run(WorkQueueManager.jav
a:1021)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java(Compiled Code))
Caused by: java.lang.NullPointerException
at
org.apache.axis2.databinding.utils.BeanUtil.getPullParser(BeanUtil.java:135)
at
org.apache.axis2.databinding.utils.reader.ADBXMLStreamReaderImpl.processProp
erties(ADBXMLStreamReaderImpl.java:948)
at
org.apache.axis2.databinding.utils.reader.ADBXMLStreamReaderImpl.next(ADBXML
StreamReaderImpl.java:821)
at org.apache.axis2.util.StreamWrapper.next(StreamWrapper.java:68)
at
org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:111)
The workaround I currently use is to make sure there are no null arrays, by
putting empty arrays instead.
Thenk you,
Nicu Marasoiu
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-user-help@ws.apache.org