Encountered illegal extension attribute ‘nillable’. Extension attributes must be in a namespace other than WSDL’s

This happened to me when I was trying to add a new SOAP project to SOAPUI. If you don’t already know, SOAPUI is a fantastic tool for use with SOAP web services. Over many years I have never found anything better. Having said that, I don’t use it that much, but when I do it’s irreplaceable.

The particular SOAP service I was trying to connect to is one I have connected too in the past so I knew it was unlikely that the issue was with the WSDL itself and even if there was it was from a third party. I also remembered from the dim dark past that I had come across this issue before, unfortunately for me I didn’t recall the solution I had previously used but had a feeling it was fairly straightforward.

Here is what worked for me. The first step was to create a copy of the wsdl as a file. To do that I just browse to the location of the wsdl e.g. https://myWebService/MyService.asmx?wsdl using my web browser. I then use the view source option and copy and paste into a file which I give the .wsdl extension.

To fix the actual issue without adversely affecting the wsdl we need to add a new namespace. I added this namespace as xsi wasn’t already used.

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

This meant that I had to put all my nullable attributes into the xsi namespace by simply replacing nillable with xsi:nillable. This wsdl can then be added to SOAPUI and it worked as normal.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Steve Ellwood

Senior Integrations Officer at Doncaster Council Any views expressed are entirely my own.