Документы WSDL с кодировкой RPC. Для этих документов используйте createClassFromWsdl
.
Документы, которые Apache™ программа CXF не может скомпилировать в полный код.
Документы, импортирующие другие документы WSDL, содержащие определения типов WSDL.
В Windows®, документы, импортирующие другие документы WSDL, могут оказаться неудачными, если импортированный URI содержит определенные символы пунктуации.
Некоторые документы с сообщениями, содержащими несколько частей.
Некоторые документы со схемами, содержащими анонимные комплексные типы.
Некоторые документы, определяющие входной параметр для операции как простой тип. Когда вы вызываете такую операцию, например GetMyOp
, MATLAB® отображает одну из следующих ошибок.
Error using xxx/GetMyOp. Too many input arguments.
Или:
Error using matlab.internal.callJava No GetMyOp method with appropriate signature exists in Java class $Proxy57
Если документ WSDL задает типы схем в нескольких пространствах имен, может возникнуть ошибка, если типы в разных пространствах имен имеют одинаковые имена. Несколько пространств имен обычно возникают при использовании import
операторы. MATLAB отображает сообщения, аналогичные следующим.
Error using matlab.wsdl.createWSDLClient (line 239) Error processing WSDL: file:/l:/02090080/incoming/service_w0_x0.xsd [149,4]: Two declarations cause a collision in the ObjectFactory class.
Чтобы решить эту проблему, скопируйте импортированные файлы и отредактируйте их, чтобы переименовать конфликтующие типы.
Элементы XML-схемы all
не распознан.
Операции, определенные в WSDL, должны соответствовать правилам для стиля оболочки, описанным в элементе (ii) раздела 2.3.1.2 Java API для веб-сервисов XML (JAX-WS) 2.0. Сообщения об ошибке, подобные следующим, являются признаками этой проблемы.
Error using matlab.internal.callJava No authenticate method with appropriate signature exists in Java class com.sun.proxy.$Proxy55 Error in Service/Authenticate (line 107) matlab.internal.callJava('authenticate',obj.PortObj,fromMATLAB({'Authenticate','user'}, user,'string',false,false),...
Чтобы решить эту проблему, отредактируйте WSDL, чтобы соответствовать правилам стиля оболочки, или отредактируйте сгенерированный код MATLAB, чтобы создать экземпляр и передать его в Java® объект класса, который содержит параметры.
Невозможно отправлять сообщения, требующие элементов заголовка Простого протокола доступа к объектам (SOAP). Поддерживаются только элементы тела SOAP.