We are using Axis 1.4 and face issue during deserialization in handling date types. The scenario is explained below. I couldn’t find enough information on net on below and hence asking question to the apache team. Please note when we switch to Axis 2, issue is not seen. Upgrading may not be a simple option for us as of now, and hence I was evaluating possible workarounds or solution if any.
The XSD contains type “DateofBirthType” which is of type xsd:date
Child XSDs contains element “DateofBirth” of type “DateOfBirthType”
When Java client invokes the web service, IllegalArgumentException is seen while de-serializing this “DateOfBirthType” element. If we remove “DateOfBirthType” and map it directly to xsd:date type all works fine.
We have generated the stub using Axis 1.4 and trying to access the RetrieveIndividualCustInformation operation through stub, but getting the (IllegalArgumentException) while axis tries to deserialize the response for all the fields having data types as date which is indirectly mapped (nested mapping) as shown below.
e.g. IndividualInfo-----DateOfBirth(Type—DateOfbirth ---Which is of Type Date)-_you will face illegal argument exception.
So, when we changed the type to simple date (not nested),then it worked fine. So it confirms that this problem is only for type date which is clearly seen in Axis 1.4 client.
Please let me know if anyone faces similar/same issue or even know any such issue already persists and there are no possible workarounds and/or fixes for this. In that case we can put up case to migrate to Axis2.