Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
1.7.4
-
None
-
None
-
Axis2 1.7.4 on Tomcat
Description
While deploying webservices .aar file, WSDL generation fails in axis2 1.7.4 if useoriginalwsdl=true if WSDL has external schema reference in wsdl
Here's the log from Tomcat
[INFO] Trouble processing wsdl file :java.net.MalformedURLException: no protocol: META-INF/Core.wsdl
[INFO] Trouble processing wsdl file :java.net.MalformedURLException: no protocol: META-INF/Core.wsdl
[INFO] Deploying Web service: Core.aar - file:/E:/Javalina/tomcat_soapnew/webapps/axis2/WEB-INF/services/Core.aar
Here's what displayed on wsdl url
<error>
<description>Unable to generate WSDL 1.1 for this service</description>
<reason>
If you wish Axis2 to automatically generate the WSDL 1.1, then please set useOriginalwsdl as false in your services.xml
</reason>
</error>
Copied WSDL and XSD here..
Below schema is referenced in WSDL
schemaLocation="http://www.caqh.org/SOAP/WSDL/CORERule2.2.0.xsd"
WSDL
<?xml version="1.0" encoding="UTF-8"?> <definitions name="CORE" targetNamespace="http://www.caqh.org/SOAP/WSDL/" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:CORE="http://www.caqh.org/SOAP/WSDL/" xmlns:CORE-XSD="http://www.caqh.org/SOAP/WSDL/CORERule2.2.0.xsd" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"> <types> <xsd:schema elementFormDefault="qualified" targetNamespace="http://www.caqh.org/SOAP/WSDL/" xmlns="http://schemas.xmlsoap.org/wsdl/"> <xsd:import namespace="http://www.caqh.org/SOAP/WSDL/CORERule2.2.0.xsd" schemaLocation="http://www.caqh.org/SOAP/WSDL/CORERule2.2.0.xsd"/> </xsd:schema> </types> <message name="BatchResultsAckSubmissionResponseMessage"> <part name="body" element="CORE-XSD:COREEnvelopeBatchResultsAckSubmissionResponse"> </part> </message> <message name="BatchSubmissionResponseMessage"> <part name="body" element="CORE-XSD:COREEnvelopeBatchSubmissionResponse"> </part> </message> <message name="BatchSubmissionAckRetrievalRequestMessage"> <part name="body" element="CORE-XSD:COREEnvelopeBatchSubmissionAckRetrievalRequest"> </part> </message> <message name="RealTimeResponseMessage"> <part name="body" element="CORE-XSD:COREEnvelopeRealTimeResponse"> </part> </message> <message name="BatchResultsRetrievalResponseMessage"> <part name="body" element="CORE-XSD:COREEnvelopeBatchResultsRetrievalResponse"> </part> </message> <message name="BatchSubmissionAckRetrievalResponseMessage"> <part name="body" element="CORE-XSD:COREEnvelopeBatchSubmissionAckRetrievalResponse"> </part> </message> <message name="BatchResultsRetrievalRequestMessage"> <part name="body" element="CORE-XSD:COREEnvelopeBatchResultsRetrievalRequest"> </part> </message> <message name="RealTimeRequestMessage"> <part name="body" element="CORE-XSD:COREEnvelopeRealTimeRequest"> </part> </message> <message name="BatchResultsAckSubmissionMessage"> <part name="body" element="CORE-XSD:COREEnvelopeBatchResultsAckSubmission"> </part> </message> <message name="BatchSubmissionMessage"> <part name="body" element="CORE-XSD:COREEnvelopeBatchSubmission"> </part> </message> <portType name="CORETransactions"> <operation name="RealTimeTransaction"> <input message="CORE:RealTimeRequestMessage"> </input> <output message="CORE:RealTimeResponseMessage"> </output> </operation> <operation name="BatchSubmitTransaction"> <input message="CORE:BatchSubmissionMessage"> </input> <output message="CORE:BatchSubmissionResponseMessage"> </output> </operation> <operation name="GenericBatchSubmissionTransaction"> <input message="CORE:BatchSubmissionMessage"> </input> <output message="CORE:BatchSubmissionResponseMessage"> </output> </operation> <operation name="BatchSubmitAckRetrievalTransaction"> <input message="CORE:BatchSubmissionAckRetrievalRequestMessage"> </input> <output message="CORE:BatchSubmissionAckRetrievalResponseMessage"> </output> </operation> <operation name="BatchResultsRetrievalTransaction"> <input message="CORE:BatchResultsRetrievalRequestMessage"> </input> <output message="CORE:BatchResultsRetrievalResponseMessage"> </output> </operation> <operation name="BatchResultsAckSubmitTransaction"> <input message="CORE:BatchResultsAckSubmissionMessage"> </input> <output message="CORE:BatchResultsAckSubmissionResponseMessage"> </output> </operation> <operation name="GenericBatchRetrievalTransaction"> <input message="CORE:BatchResultsRetrievalRequestMessage"> </input> <output message="CORE:BatchResultsRetrievalResponseMessage"> </output> </operation> <operation name="GenericBatchReceiptConfirmationTransaction"> <input message="CORE:BatchResultsAckSubmissionMessage"> </input> <output message="CORE:BatchResultsAckSubmissionResponseMessage"> </output> </operation> </portType> <binding name="CoreSoapBinding" type="CORE:CORETransactions"> <soap12:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <operation name="RealTimeTransaction"> <soap12:operation soapAction="RealTimeTransaction" style="document"/> <input> <soap12:body use="literal"/> </input> <output> <soap12:body use="literal"/> </output> </operation> <operation name="BatchSubmitTransaction"> <soap12:operation soapAction="BatchSubmitTransaction" style="document"/> <input> <soap12:body use="literal"/> </input> <output> <soap12:body use="literal"/> </output> </operation> <operation name="GenericBatchSubmissionTransaction"> <soap12:operation soapAction="GenericBatchSubmissionTransaction" style="document"/> <input> <soap12:body use="literal"/> </input> <output> <soap12:body use="literal"/> </output> </operation> <operation name="BatchSubmitAckRetrievalTransaction"> <soap12:operation soapAction="BatchSubmitAckRetrievalTransaction" style="document"/> <input> <soap12:body use="literal"/> </input> <output> <soap12:body use="literal"/> </output> </operation> <operation name="BatchResultsRetrievalTransaction"> <soap12:operation soapAction="BatchResultsRetrievalTransaction" style="document"/> <input> <soap12:body use="literal"/> </input> <output> <soap12:body use="literal"/> </output> </operation> <operation name="BatchResultsAckSubmitTransaction"> <soap12:operation soapAction="BatchResultsAckSubmitTransaction" style="document"/> <input> <soap12:body use="literal"/> </input> <output> <soap12:body use="literal"/> </output> </operation> <operation name="GenericBatchRetrievalTransaction"> <soap12:operation soapAction="GenericBatchRetrievalTransaction" style="document"/> <input> <soap12:body use="literal"/> </input> <output> <soap12:body use="literal"/> </output> </operation> <operation name="GenericBatchReceiptConfirmationTransaction"> <soap12:operation soapAction="GenericBatchReceiptConfirmationTransaction" style="document"/> <input> <soap12:body use="literal"/> </input> <output> <soap12:body use="literal"/> </output> </operation> </binding> <service name="Core"> <port name="CoreSoapPort" binding="CORE:CoreSoapBinding"> <soap12:address location="http://URL_OF_WEB_SERVICE"/> </port> </service> </definitions>
XSD that's referenced in WSDL
<?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.caqh.org/SOAP/WSDL/CORERule2.2.0.xsd" targetNamespace="http://www.caqh.org/SOAP/WSDL/CORERule2.2.0.xsd"> <xs:element name="COREEnvelopeRealTimeRequest"> <xs:complexType> <xs:sequence> <xs:element name="PayloadType" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ProcessingMode" type="RealTimeMode" minOccurs="1" maxOccurs="1"/> <xs:element name="PayloadID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="TimeStamp" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="SenderID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ReceiverID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="CORERuleVersion" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="Payload" type="xs:string" minOccurs="1" maxOccurs="1"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="COREEnvelopeRealTimeResponse"> <xs:complexType> <xs:sequence> <xs:element name="PayloadType" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ProcessingMode" type="RealTimeMode" minOccurs="1" maxOccurs="1"/> <xs:element name="PayloadID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="TimeStamp" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="SenderID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ReceiverID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="CORERuleVersion" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="Payload" type="xs:string" minOccurs="0" maxOccurs="1"/> <xs:element name="ErrorCode" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ErrorMessage" type="xs:string" minOccurs="1" maxOccurs="1"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="COREEnvelopeBatchSubmission"> <xs:complexType> <xs:sequence> <xs:element name="PayloadType" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ProcessingMode" type="BatchMode" minOccurs="1" maxOccurs="1"/> <xs:element name="PayloadID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="PayloadLength" type="xs:int" minOccurs="1" maxOccurs="1"/> <xs:element name="TimeStamp" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="SenderID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ReceiverID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="CORERuleVersion" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="CheckSum" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="Payload" type="xs:base64Binary" minOccurs="1" maxOccurs="1"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="COREEnvelopeBatchSubmissionResponse"> <xs:complexType> <xs:sequence> <xs:element name="PayloadType" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ProcessingMode" type="BatchMode" minOccurs="1" maxOccurs="1"/> <xs:element name="PayloadID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="PayloadLength" type="xs:int" minOccurs="0" maxOccurs="1"/> <xs:element name="TimeStamp" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="SenderID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ReceiverID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="CORERuleVersion" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="CheckSum" type="xs:string" minOccurs="0" maxOccurs="1"/> <xs:element name="Payload" type="xs:base64Binary" minOccurs="0" maxOccurs="1"/> <xs:element name="ErrorCode" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ErrorMessage" type="xs:string" minOccurs="1" maxOccurs="1"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="COREEnvelopeBatchSubmissionAckRetrievalRequest"> <xs:complexType> <xs:sequence> <xs:element name="PayloadType" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ProcessingMode" type="BatchMode" minOccurs="1" maxOccurs="1"/> <xs:element name="PayloadID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="PayloadLength" type="xs:int" minOccurs="0" maxOccurs="1"/> <xs:element name="TimeStamp" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="SenderID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ReceiverID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="CORERuleVersion" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="CheckSum" type="xs:string" minOccurs="0" maxOccurs="1"/> <xs:element name="Payload" type="xs:base64Binary" minOccurs="0" maxOccurs="1"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="COREEnvelopeBatchSubmissionAckRetrievalResponse"> <xs:complexType> <xs:sequence> <xs:element name="PayloadType" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ProcessingMode" type="BatchMode" minOccurs="1" maxOccurs="1"/> <xs:element name="PayloadID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="PayloadLength" type="xs:int" minOccurs="0" maxOccurs="1"/> <xs:element name="TimeStamp" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="SenderID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ReceiverID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="CORERuleVersion" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="CheckSum" type="xs:string" minOccurs="0" maxOccurs="1"/> <xs:element name="Payload" type="xs:base64Binary" minOccurs="0" maxOccurs="1"/> <xs:element name="ErrorCode" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ErrorMessage" type="xs:string" minOccurs="1" maxOccurs="1"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="COREEnvelopeBatchResultsRetrievalRequest"> <xs:complexType> <xs:sequence> <xs:element name="PayloadType" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ProcessingMode" type="BatchMode" minOccurs="1" maxOccurs="1"/> <xs:element name="PayloadID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="PayloadLength" type="xs:int" minOccurs="0" maxOccurs="1"/> <xs:element name="TimeStamp" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="SenderID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ReceiverID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="CORERuleVersion" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="CheckSum" type="xs:string" minOccurs="0" maxOccurs="1"/> <xs:element name="Payload" type="xs:base64Binary" minOccurs="0" maxOccurs="1"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="COREEnvelopeBatchResultsRetrievalResponse"> <xs:complexType> <xs:sequence> <xs:element name="PayloadType" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ProcessingMode" type="BatchMode" minOccurs="1" maxOccurs="1"/> <xs:element name="PayloadID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="PayloadLength" type="xs:int" minOccurs="0" maxOccurs="1"/> <xs:element name="TimeStamp" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="SenderID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ReceiverID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="CORERuleVersion" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="CheckSum" type="xs:string" minOccurs="0" maxOccurs="1"/> <xs:element name="Payload" type="xs:base64Binary" minOccurs="0" maxOccurs="1"/> <xs:element name="ErrorCode" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ErrorMessage" type="xs:string" minOccurs="1" maxOccurs="1"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="COREEnvelopeBatchResultsAckSubmission"> <xs:complexType> <xs:sequence> <xs:element name="PayloadType" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ProcessingMode" type="BatchMode" minOccurs="1" maxOccurs="1"/> <xs:element name="PayloadID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="PayloadLength" type="xs:int" minOccurs="0" maxOccurs="1"/> <xs:element name="TimeStamp" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="SenderID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ReceiverID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="CORERuleVersion" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="CheckSum" type="xs:string" minOccurs="0" maxOccurs="1"/> <xs:element name="Payload" type="xs:base64Binary" minOccurs="0" maxOccurs="1"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="COREEnvelopeBatchResultsAckSubmissionResponse"> <xs:complexType> <xs:sequence> <xs:element name="PayloadType" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ProcessingMode" type="BatchMode" minOccurs="1" maxOccurs="1"/> <xs:element name="PayloadID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="PayloadLength" type="xs:int" minOccurs="0" maxOccurs="1"/> <xs:element name="TimeStamp" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="SenderID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ReceiverID" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="CORERuleVersion" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="CheckSum" type="xs:string" minOccurs="0" maxOccurs="1"/> <xs:element name="Payload" type="xs:base64Binary" minOccurs="0" maxOccurs="1"/> <xs:element name="ErrorCode" type="xs:string" minOccurs="1" maxOccurs="1"/> <xs:element name="ErrorMessage" type="xs:string" minOccurs="1" maxOccurs="1"/> </xs:sequence> </xs:complexType> </xs:element> <xs:simpleType name="RealTimeMode"> <xs:restriction base="xs:string"> <xs:pattern value="RealTime"/> </xs:restriction> </xs:simpleType> <xs:simpleType name="BatchMode"> <xs:restriction base="xs:string"> <xs:pattern value="Batch"/> </xs:restriction> </xs:simpleType> </xs:schema>