Hi all

I have to call a SOAP WebService provided by SAP Business Objects that contains a complex type definition with Germain Umlaut in the wsdl. If I try to generate the webservice client configuration in ivy I get: Error decoding WSDL: java.lang.Exception: Compile error...

It is obvious, that the generated Java code containing the Umlaut characters can not be compiled.

I know the workaround to call a WebService using Java with tools like SoapUI, but I wonder if there is a way to do it with standard ivy means.

Any hints are welcome.

asked 19.06.2017 at 06:27

SupportIvyTeam's gravatar image

SupportIvyTeam ♦♦
accept rate: 77%

edited 19.06.2017 at 08:43

Finally I found a way to get this working with some manual actions.

  1. First of all change the "text file encoding" in the property settings of the ivy project to UTF-8
  2. Change manually the Umlaut characters in the wsdl. i.e. Save the wsdl into a file and search/replace the Umlauts.
  3. Using the modified wsdl, it should be possible to generate the web service configuration. As a result you will find a wsClient_nnnnnn.jar and wsClient_nnnnnn.wsdl file in the lib_ws/client folder in the project.
  4. Generate the web service configuration a second time using the original wsdl. The compile error will still occur, but in the user home directory (e.g. C:\Users\XYZ\AppData\Local\Temp) you will found a folder tempnnnnnn with the generated java code that includes the Umlaut characters.
  5. Copy/paste the content of the tempnnnnnn folder into the /src_ws folder of your ivy project and delete the wsClient_nnnnnn.jar in the lib_ws/client folder. And as last step remove the wsClient_nnnnnn.jar from the Java Build Path of the project.

answered 19.06.2017 at 06:58

Bruno%20B%C3%BCtler's gravatar image

Bruno Bütler
accept rate: 68%

edited 19.06.2017 at 08:45

Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here



Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "Title")
  • image?![alt text](/path/img.jpg "Title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported



Asked: 19.06.2017 at 06:27

Seen: 2,999 times

Last updated: 19.06.2017 at 08:45