MATLAB Answers

Why does MATLAB not properly connect to my web service?

6 views (last 30 days)
Most modern web services have "advanced" features that CREATECLASSFROMWSDL does not support. Some examples are:
1. Any kind of message binding beyond httpBasic binding.
2. SOAP message namespaces that differ from the targetNamespace of the WSDL document.
3. Interactive visualization and construction of a SOAP message

Accepted Answer

MathWorks Support Team
MathWorks Support Team on 18 Oct 2013
There are two options for using Web Services from MATLAB:
1. For simple web services, use createClassFromWsdl generated stubs.
2. For any reasonably complex schema defined Web Service (this includes most web services), the best option is to use a java based library like axis or cxf and their wsdl2java tool to create java stubs (client side interfaces for the Web Service).
As an example, for the following WSDL:
<xsd:complexType name="phone">
<xsd:all>
<xsd:element name="areaCode" type="xsd:int"/>
<xsd:element name="exchange" type="xsd:string"/>
<xsd:element name="number" type="xsd:string"/>
</xsd:all>
</xsd:complexType>
WSDL2Java in Axis would generate:
public class Phone implements java.io.Serializable {
public Phone() {...}
public int getAreaCode() {...}
public void setAreaCode(int areaCode) {...}
public java.lang.String getExchange() {...}
public void setExchange(java.lang.String exchange) {...}
public java.lang.String getNumber() {...}
public void setNumber(java.lang.String number) {...}
public boolean equals(Object obj) {...}
public int hashCode() {...}
}
The above example has been taken from Axis user guide on ws.apache.org
The generated stubs can then be used in MATLAB as Java objects.

More Answers (0)

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!