cancel
Showing results for 
Search instead for 
Did you mean: 

Problem when upload WSDL file

truonglv
Participant
0 Kudos
1,223

Dear Experts,

I'm developing a solution that uses an external SOAP service. But when I upload the file WSDL, it showed the error.

Could you please tell me how to fix this error?

Thanks and Best Regards

Truong

Accepted Solutions (1)

Accepted Solutions (1)

andy_blankley
Participant

Dear Truong Le Viet,

Hope you are doing well!

Without reviewing the WSDL, I can only give my feedback on this query for you.

The root cause appears to be a syntax error in your WSDL file! The error location I would assume is in the location of the <wsdl:message> </wsdl:message> XML tags.

.

When the WSDL is passed into the ABAP Proxy generation process, the entire WSDL is passed through an input stream to generated each part for meta data purposes.

I would assume that your WSDL contains something of the similar:

.

<wsdl:message name="SomeMessageResponse">
	<wsdl:part element="impl:Part_1" name="Part1"/>
	<wsdl:part element="impl:Part_2" name="Part2"/>
	<wsdl:part element="impl:Part_3" name="Part3"/>
	<wsdl:part element="impl:Part_4" name="Part4"/>
</wsdl:message>…

.

This format would be wrong and generation would not be successful. You should remove the multiple "parts" from the message and have 1 part per message.

Please review the WSDL and check out the SOAP Protocol WSDL standards.

Have a great day ahead!

P.S Mark this issue as answered if your problem is completed so other developers can use this solution!

Kind regards,

Andy Blankley

truonglv
Participant
0 Kudos

Thanks Andrew, So you mean the only way to work here is I have to change from the multiple part to only one part. I don't know if I change that the WSDL file still works or not. Have you ever change the WSDL file content like that before ?

Answers (12)

Answers (12)

HorstSchaude
Product and Topic Expert
Product and Topic Expert

Hello Truong,

Sorry, I've overlooked that button. 😞

It is exactly as andy.blankley mentioned above:

The messages in the WSDL file consist of 3 parts:

  • parameters
  • technicalAddress
  • activationHeader

Example:

 <wsdl:message name="getBankCertificate">
  <wsdl:part name="parameters" element="tns:getBankCertificate"/>
  <wsdl:part name="technicalAddress" element="tns:technicalAddress"/>
  <wsdl:part name="activationHeader" element="tns:activationHeader"/>
 </wsdl:message>
 <wsdl:message name="getBankCertificateResponse">
  <wsdl:part name="parameters" element="tns:getBankCertificateResponse"/>
  <wsdl:part name="technicalAddress" element="tns:technicalAddress"/>
  <wsdl:part name="activationHeader" element="tns:activationHeader"/>
 </wsdl:message>
...

This is not supported.

Only message like this:

- <wsdl:message name="LocationByIDQuery_sync">
  <wsdl:part name="LocationByIDQuery_sync" element="n1:LocationByIDQuery_sync" />
  </wsdl:message>
- <wsdl:message name="LocationByIDResponse_sync">
  <wsdl:part name="LocationByIDResponse_sync" element="n1:LocationByIDResponse_sync" /> 
  </wsdl:message>
- <wsdl:message name="StandardFaultMessage">
  <wsdl:part name="StandardFaultMessage" element="n2:StandardFaultMessage" /> 
  </wsdl:message>

Sorry,
. Horst

truonglv
Participant
0 Kudos

Thanks Horst,

But these files are from a Provider, that 's mean we can not edit their content. So do you have any idea here for this integration, any work around?

Thanks

Truong

HorstSchaude
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hello Truong,

For such questions please contact your SAP contact person.

Bye,
. Horst

HorstSchaude
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hello Truong,

Sorry, I have idea how to solve this. 😞

Bye,
. Horst

truonglv
Participant
0 Kudos

Dear Horst,

How about other SAP's product? Or all SAP system can not use this service?

Thanks

Truong

HorstSchaude
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hello Truong,

I've got the message "Cannot resolve the 'schemaLocation' attribute and I do not know how to upload the XSD.

Sorry,
. Horst

truonglv
Participant
0 Kudos

Dear Horst,

As my previous comment, you can add the schema file with Add button

Schema file can downloaded with the link below:

https://drive.google.com/open?id=1ju3AA-vqR3dhVZUmY3qty89TLmm1Q_Xc

Thanks

Truong

HorstSchaude
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hello Truong,

Exactly.

Sorry, for not providing a better answer,
. Horst

truonglv
Participant
0 Kudos

Thank you Horst, I will do that and get back if I have some news

Thanks

Truong

truonglv
Participant
0 Kudos

Dear Horst,

The BankConnect said that I should use the files they sent, not the wsdl file from the link I used above.

I uploaded the wsdl file and its schema file here. Could you please check it?

WSDL Link:

https://drive.google.com/open?id=1gk45d7kLjr85tsGn0UDETtHANAKCUeRi

Schema Link:

https://drive.google.com/open?id=1ju3AA-vqR3dhVZUmY3qty89TLmm1Q_Xc

Thanks

Truong

HorstSchaude
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hello Truong,

As mentioned: either BankConnect provides an http link or you raise an incident requesting the WSDL parser / activation process to understand https.

Sorry,
. Horst

truonglv
Participant
0 Kudos

Dear Horst,

So you mean I should raise an incident to BankConnect or SAP about the problem with https link ?

Thanks

Truong

HorstSchaude
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hello Truong,

I can download the xsd (just switch to https 🙂 ) but not the system.
And that's the issue.

Bye,
. Horst

truonglv
Participant
0 Kudos

Dear Horst,

I mean you can download the schema file and add it in to the system, and change the schema location from schemaLocation="http://www.bankconnectservices.dk/2019/04/04/services/CorporateService?xsd=xsd/xmldsig-core-schema.xsd" to schemaLocation="xmldsig-core-schema.xsd", isn't it?

truonglv
Participant
0 Kudos

Dear Horst,

Are you still with us ?

HorstSchaude
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hello Truong,

In my case I've got an error because the document marked below is only reachable via https and not via http:

As I do not know the details about this parses, you may
  • Ask the owner of the service to place this file in a http URL
  • Raise an incident for enabling the WSDL parser to support https

Bye,
. Horst

truonglv
Participant
0 Kudos

Dear Horst,

Please download the schema by this link

https://drive.google.com/open?id=1ju3AA-vqR3dhVZUmY3qty89TLmm1Q_Xc

Thanks

Truong

HorstSchaude
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hello Truong,

  1. Open URL "https://www.bankconnectservices.dk/2019/04/04/services/CorporateService?wsdl/"
  2. Select source code and paste it into an editor
  3. Save this as "BankConnect.wsdl"
  4. SDK: chose "External Web Service Integration"
  5. Chose "SOAP" as Web Service Type -> Next
  6. Browse to the file "BankConnect.wsdl" and open

That's the current state now:

Bye,
. Horst

truonglv
Participant
0 Kudos

Dear Horst,

That is exactly what I did. But when I active the web service, the error was shown.

HorstSchaude
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hello Truong,

When I chose "External Web Service Integration" I can upload the WSDL file w/o any issues.

Which kind of "New item" did you chose?

Bye,
. Horst

truonglv
Participant
0 Kudos

Dear Horst,

I chose "External Web Service Integration" too. Could you please share your steps from the link above?

HorstSchaude
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hello Truong,

Do you mind sharing your WSDL file?

Thanks,
Horst

truonglv
Participant
0 Kudos
truonglv
Participant
0 Kudos

Dear horst.schaude , We still do not have the solution to use this kind of WSDL file. Do have have any idea for this problem?