IllegalArgumentException is thrown when .NET invokes my AXIS2-1.3 web service because MessageID or ContentID begins with Numeric value --------------------------------------------------------------------------------------------------------------------------------------
Key: AXIS2-4206 URL: https://issues.apache.org/jira/browse/AXIS2-4206 Project: Axis 2.0 (Axis2) Issue Type: Bug Components: databinding Affects Versions: 1.3 Environment: Windows Server running JBOSS using AXIS2-1.3 web service Reporter: Doug Guzek I have a web service that was created via WSDL using AXIS2-1.3. This service works fine when I invoke it within WebServiceExplorer within Eclipse, but only if MessageID and ID begin with a Letter. But when invoked with MessageID or ID that begin with a Number, it fails (exception provided below) What can I do on my end to remove this restriction? I did try searching for a solution before posting this. I think I found something about adding "uddi:" (or somethign similar) before the value, but wasnt sure if this was my best solution. I have .NET Client who are unable to call our web service because they will always generate an ID that begins with a number. When they do this, I get the following exception: <Partial Log> 2009-01-12 15:13:47,990 ERROR [STDERR] Caused by: java.lang.IllegalArgumentException 2009-01-12 15:13:47,990 ERROR [STDERR] at org.apache.axis2.databinding.types.Id.<init>(Id.java:46) 2009-01-12 15:13:47,990 ERROR [STDERR] at org.apache.axis2.databinding.utils.ConverterUtil.convertToID(ConverterUtil.java:478) 2009-01-12 15:13:47,990 ERROR [STDERR] at org.starstandards.www.webservices._2003._12.transport.Content$Factory.parse(Content.java:562) Here is a portion of the WSDL showing the way MessageID and ID are defined: (I am not familiar with XML Schema data types, but where does it define s:ID as beginning with Number or Letter? <s:attribute name="messageID" type="s:ID" /> <s:attribute name="id" type="s:ID" /> Here is the request coming in: (you can see the messageID and ID can begin with Number) <?xml version='1.0' encoding='utf-8'?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <payloadManifest xmlns="http://www.starstandards.org/webservices/2003/12/transport"> <manifest xmlns="" id="719409674" namespaceURI="" element="ProcessRepairOrder" /> </payloadManifest> </soap:Header> <soap:Body xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <PutMessage xmlns="http://www.starstandards.org/webservices/2003/12/transport"> <payload xmlns="http://www.starstandards.org/webservices/2003/12/transport" messageID="e5d83e04-ac1c-43df-82f2-63aac418c2ae"> <content xmlns="" id="719409674"> <ProcessRepairOrder xmlns="http://www.starstandards.org/STAR" xmlns:oa="http://www.openapplications.org/oagis" release="8.1-Lite" lang="en-US"> <ApplicationArea xmlns="http://www.starstandards.org/STAR"> <Sender xmlns="http://www.starstandards.org/STAR"> <LogicalId xmlns="http://www.starstandards.org/STAR"> XTRANET5 </LogicalId> <Component xmlns="http://www.starstandards.org/STAR"> ESPI </Component> <Task xmlns="http://www.starstandards.org/STAR"> ROUTETEST </Task> <ReferenceId xmlns="http://www.starstandards.org/STAR"> 719409674 </ReferenceId> <CreatorNameCode xmlns="http://www.starstandards.org/STAR"> KMX </CreatorNameCode> <SenderNameCode xmlns="http://www.starstandards.org/STAR"> CM </SenderNameCode> <SenderURI xmlns="http://www.starstandards.org/STAR"> XTRANET5 </SenderURI> <DealerNumber xmlns="http://www.starstandards.org/STAR"> CMAX7180 </DealerNumber> <StoreNumber xmlns="http://www.starstandards.org/STAR"> 7180 </StoreNumber> </Sender> <CreationDateTime xmlns="http://www.starstandards.org/STAR"> 2009-01-09T10:28:26.84375-05:00 </CreationDateTime> <BODId xmlns="http://www.starstandards.org/STAR"> 626046626 </BODId> <Destination xmlns="http://www.starstandards.org/STAR"> <DestinationNameCode xmlns="http://www.starstandards.org/STAR"> TWG </DestinationNameCode> <DestinationURI xmlns="http://www.starstandards.org/STAR"> http://xx.xx.xx.xx/MRClaimsWebService/services/MRClaimsWebService </DestinationURI> </Destination> </ApplicationArea> <DataArea xmlns="http://www.starstandards.org/STAR"> <Process xmlns="http://www.starstandards.org/STAR" confirm="Always" acknowledge="Always"> <Criteria xmlns="http://www.starstandards.org/STAR"> <Expression xmlns="http://www.starstandards.org/STAR" action="Add" /> </Criteria> </Process> <RepairOrder xmlns="http://www.starstandards.org/STAR"> <Header xmlns="http://www.starstandards.org/STAR"> <DocumentId xmlns="http://www.starstandards.org/STAR"> 0 </DocumentId> </Header> </RepairOrder> </DataArea> </ProcessRepairOrder> </content> </payload> </PutMessage> </soap:Body> </soap:Envelope> Here is the exception: 2009-01-12 15:06:14,696 ERROR [STDERR] org.apache.axis2.AxisFault 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.axis2.AxisFault.makeFault(AxisFault.java:417) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.starstandards.www.webservices._2003._12.transport.AWGMRWebServicesMessageReceiverInOut.fromOM(AWGMRWebServicesMessageReceiverInOut.java:371) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.starstandards.www.webservices._2003._12.transport.AWGMRWebServicesMessageReceiverInOut.invokeBusinessLogic(AWGMRWebServicesMessageReceiverInOut.java:112) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusinessLogic(AbstractInOutSyncMessageReceiver.java:42) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:96) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:145) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:120) 2009-01-12 15:06:14,696 ERROR [STDERR] at javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 2009-01-12 15:06:14,696 ERROR [STDERR] at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:543) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.catalina.valves.RequestDumperValve.invoke(RequestDumperValve.java:151) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.coyote.ajp.AjpAprProcessor.process(AjpAprProcessor.java:419) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.coyote.ajp.AjpAprProtocol$AjpConnectionHandler.process(AjpAprProtocol.java:393) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1513) 2009-01-12 15:06:14,696 ERROR [STDERR] at java.lang.Thread.run(Thread.java:595) 2009-01-12 15:06:14,696 ERROR [STDERR] Caused by: java.lang.IllegalArgumentException 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.axis2.databinding.types.Id.<init>(Id.java:46) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.apache.axis2.databinding.utils.ConverterUtil.convertToID(ConverterUtil.java:478) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.starstandards.www.webservices._2003._12.transport.Payload$Factory.parse(Payload.java:623) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.starstandards.www.webservices._2003._12.transport.PutMessage$Factory.parse(PutMessage.java:427) 2009-01-12 15:06:14,696 ERROR [STDERR] at org.starstandards.www.webservices._2003._12.transport.AWGMRWebServicesMessageReceiverInOut.fromOM(AWGMRWebServicesMessageReceiverInOut.java:351) 2009-01-12 15:06:14,696 ERROR [STDERR] ... 28 more 200 -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.