XML-RPC

Date format 20070316T162808Z cannot be parsed

Created: 22/Mar/07 09:21 PM   Updated: 28/Nov/08 08:53 PM
Return to search
Component/s: None
Affects Version/s: None
Fix Version/s: None

Time Tracking:
Not Specified

Environment: Mac OS 10.4

Resolution Date: 23/Mar/07 04:57 AM


 Description  « Hide
Client handling of the date format 20070316T162808Z fails.

org.apache.xmlrpc.client.XmlRpcClientException: Failed to parse servers response: Failed to parse integer value: 20070316T162808Z
at org.apache.xmlrpc.client.XmlRpcStreamTransport.readResponse(XmlRpcStreamTransport.java:177)
at org.apache.xmlrpc.client.XmlRpcStreamTransport.sendRequest(XmlRpcStreamTransport.java:145)
at org.apache.xmlrpc.client.XmlRpcHttpTransport.sendRequest(XmlRpcHttpTransport.java:94)
at org.apache.xmlrpc.client.XmlRpcSunHttpTransport.sendRequest(XmlRpcSunHttpTransport.java:39)
at org.apache.xmlrpc.client.XmlRpcClientWorker.execute(XmlRpcClientWorker.java:53)
at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:166)
at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:136)
at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:125)
at scsadmin.ScsAbRemoteManager.issueCommand(ScsAbRemoteManager.java:75)
at scsadmin.ScsAbRemoteManager.issueCommand(ScsAbRemoteManager.java:64)
at scsadmin.ScsAdminConsole.doTest(ScsAdminConsole.java:619)
at scsadmin.ScsAdminConsole.executeCommand(ScsAdminConsole.java:273)
at scsadmin.ScsAdminConsole.executeCommand(ScsAdminConsole.java:242)
at scsadmin.ScsAdminConsole.executeInteractive(ScsAdminConsole.java:199)
at scsadmin.ScsAdminConsole.execute(ScsAdminConsole.java:172)
at scsadmin.ScsAdminConsole.main(ScsAdminConsole.java:157)
Caused by:
org.xml.sax.SAXParseException: Failed to parse integer value: 20070316T162808Z
at org.apache.xmlrpc.parser.DateParser.setResult(DateParser.java:40)
at org.apache.xmlrpc.parser.AtomicParser.endElement(AtomicParser.java:56)
at org.apache.xmlrpc.parser.RecursiveTypeParserImpl.endElement(RecursiveTypeParserImpl.java:96)
at org.apache.xmlrpc.parser.MapParser.endElement(MapParser.java:158)
at org.apache.xmlrpc.parser.RecursiveTypeParserImpl.endElement(RecursiveTypeParserImpl.java:96)
at org.apache.xmlrpc.parser.ObjectArrayParser.endElement(ObjectArrayParser.java:72)
at org.apache.xmlrpc.parser.RecursiveTypeParserImpl.endElement(RecursiveTypeParserImpl.java:96)
at org.apache.xmlrpc.parser.XmlRpcResponseParser.endElement(XmlRpcResponseParser.java:186)
at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at org.apache.xmlrpc.client.XmlRpcStreamTransport.readResponse(XmlRpcStreamTransport.java:175)
at org.apache.xmlrpc.client.XmlRpcStreamTransport.sendRequest(XmlRpcStreamTransport.java:145)
at org.apache.xmlrpc.client.XmlRpcHttpTransport.sendRequest(XmlRpcHttpTransport.java:94)
at org.apache.xmlrpc.client.XmlRpcSunHttpTransport.sendRequest(XmlRpcSunHttpTransport.java:39)
at org.apache.xmlrpc.client.XmlRpcClientWorker.execute(XmlRpcClientWorker.java:53)
at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:166)
at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:136)
at org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:125)
at scsadmin.ScsAbRemoteManager.issueCommand(ScsAbRemoteManager.java:75)
at scsadmin.ScsAbRemoteManager.issueCommand(ScsAbRemoteManager.java:64)
at scsadmin.ScsAdminConsole.doTest(ScsAdminConsole.java:619)
at scsadmin.ScsAdminConsole.executeCommand(ScsAdminConsole.java:273)
at scsadmin.ScsAdminConsole.executeCommand(ScsAdminConsole.java:242)
at scsadmin.ScsAdminConsole.executeInteractive(ScsAdminConsole.java:199)
at scsadmin.ScsAdminConsole.execute(ScsAdminConsole.java:172)
at scsadmin.ScsAdminConsole.main(ScsAdminConsole.java:157)

 All   Comments   Work Log   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Jochen Wiedmann added a comment - 23/Mar/07 04:57 AM
Your dateTime value is obviously not compliant with the XML-RPC specification, which requires (for unknown reasons) a different format than xs:dateTime. I admit that the error message could be more informative and have changed that. In the trunk, the error message would be now

    Failed to parse date value 20070316T162808Z at position 11

If you look at the specification, you'll notice that a colon is missing at position 11.


You have the following options:

- Fix the invalid value at the sending side to comply with the specification.
- Use the vendor extension ex:dateTime, rather than dateTime, as proposed on

    http://ws.apache.org/xmlrpc/types.html

- Use a custom dateTime parser. See the CustomTypesTest in the Apache XML-RPC sources for an example.

Jochen Wiedmann added a comment - 28/Nov/08 08:53 PM
Closing issues which have been released.