1 Reply Latest reply on Nov 27, 2007 1:15 PM by 553101

    deserialization error: NumberFormatException: Zero length BigInteger

    553101
      Hi,

      I've created a web service proxy using the wizard in JDeveloper 10.1.3.3. I'm calling a BPEL webservice that in turn sends messages to an MQ. The messages get passed correctly but when I try to deserialize the response I get the following error:

      deserialization error: java.lang.NumberFormatException: Zero length BigInteger
           at oracle.j2ee.ws.common.encoding.literal.LiteralSimpleTypeSerializer.deserialize(LiteralSimpleTypeSerializer.java:155)
           at testhboproject.proxy.runtime.RecordType_LiteralSerializer.doDeserialize(RecordType_LiteralSerializer.java:150)
           at oracle.j2ee.ws.common.encoding.literal.LiteralObjectSerializerBase.internalDeserialize(LiteralObjectSerializerBase.java:250)
           at oracle.j2ee.ws.common.encoding.literal.LiteralObjectSerializerBase.deserialize(LiteralObjectSerializerBase.java:159)
           at testhboproject.proxy.runtime.HBOPreCheckProcessResponse_LiteralSerializer.doDeserialize(HBOPreCheckProcessResponse_LiteralSerializer.java:78)
           at oracle.j2ee.ws.common.encoding.literal.LiteralObjectSerializerBase.internalDeserialize(LiteralObjectSerializerBase.java:250)
           at oracle.j2ee.ws.common.encoding.literal.LiteralObjectSerializerBase.deserialize(LiteralObjectSerializerBase.java:159)
           at testhboproject.proxy.runtime.XXOGL_B08_HBOPreCheckBinding_Stub._deserialize_process(XXOGL_B08_HBOPreCheckBinding_Stub.java:133)
           at testhboproject.proxy.runtime.XXOGL_B08_HBOPreCheckBinding_Stub._readFirstBodyElement(XXOGL_B08_HBOPreCheckBinding_Stub.java:119)
           at oracle.j2ee.ws.client.StreamingSender._sendImpl(StreamingSender.java:333)
           at oracle.j2ee.ws.client.StreamingSender._send(StreamingSender.java:112)
           at testhboproject.proxy.runtime.XXOGL_B08_HBOPreCheckBinding_Stub.process(XXOGL_B08_HBOPreCheckBinding_Stub.java:76)
           at testhboproject.proxy.XXOGL_B08_HBOPreCheck_ServiceTest.testXXOGL_B08_HBOPreCheckPortprocess(XXOGL_B08_HBOPreCheck_ServiceTest.java:36)
           at testhboproject.proxy.XXOGL_B08_HBOPreCheck_ServiceTest.main(XXOGL_B08_HBOPreCheck_ServiceTest.java:121)


      The xml response that I see being sent as a response to BPEL is as follows:

      <outputVariable><part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="payload"><HBOPreCheckProcessResponse xmlns:ns1="http://www.ex.se/xxogl/B08/XXOGL_B08_HBOPreCheck" xmlns="http://www.ex.se/xxogl/B08/XXOGL_B08_HBOPreCheck">
      <ns1:Header>
      <ns1:ID>1</ns1:ID>
      <ns1:ANTAL>1</ns1:ANTAL>
      </ns1:Header>
      <ns1:Record>
      <ns1:CLNR>84178</ns1:CLNR>
      <ns1:KASSANUMMER>1</ns1:KASSANUMMER>
      <ns1:DAT_KASSA>20051130</ns1:DAT_KASSA>
      <ns1:ANVID_EXTRA>P901UGO</ns1:ANVID_EXTRA>
      <ns1:KOD_TRANS_1>1</ns1:KOD_TRANS_1>
      <ns1:KOD_TRANS_2/>
      <ns1:KOD_TRANS_3>1</ns1:KOD_TRANS_3>
      <ns1:KONTONR_HUVUDBOK>81111001</ns1:KONTONR_HUVUDBOK>
      <ns1:R_STELLE_KONTERING>10</ns1:R_STELLE_KONTERING>
      <ns1:REFBEGREPP_CHAR>MYNTRULLEVXL</ns1:REFBEGREPP_CHAR>
      <ns1:BOKFORINGSDATUM>2005-11-30</ns1:BOKFORINGSDATUM>
      <ns1:PERIOD>200510</ns1:PERIOD>
      <ns1:VALUTA_DATUM>2005-11-30</ns1:VALUTA_DATUM>
      <ns1:BEL_BOKFORING>0000000000012354.50</ns1:BEL_BOKFORING>
      <ns1:SYSMESS>F03206</ns1:SYSMESS>
      <ns1:TEXT_MEDDELANDE>BOKF@RINGSPERIOD EJ @PPEN</ns1:TEXT_MEDDELANDE>
      </ns1:Record>
      </HBOPreCheckProcessResponse>
      </part></outputVariable>


      My question is of course why this problem occurs and how to solve it. My guess is that the reason is KOD_TRANS_2 which should be '0'. It seems that the zero gets removed somewhere along the way. Is this a likely cause? Is there any way of stopping it from being removed from the xml?


      Thanks for your help!
      Kerstin

      Message was edited by:
      Kerstin