Hi all,

Apologies if this is a daft question, however I've searched high and low, and 
no-one appears to have a conclusive answer, so, here goes.

In a nutshell, when attempting to use my webservice, I always get the error 
message

Unrecognized binding style 'null'. Only 'document' and 'rpc' styles are 
supported.

This occurs at the initial wsdl pullback.

Here's a trimmed version of my wsdl :

<?xml version="1.0"?>
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/"; 
xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
xmlns:tns="http://blah/soap/wsdl?model=orders"; 
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"; 
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"; 
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"; 
targetNamespace="http://blah/soap/wsdl?model=orders"; name="ordersModel">
        <types>
                <xsd:schema>
                        <xsd:complexType name="bluArray">
                                <xsd:complexContent>
                                        <xsd:restriction 
base="soapenc:bluArray">
                                                <xsd:attribute 
ref="soapenc:arrayType" arrayType="tns:mixed[]"/>
                                        </xsd:restriction>
                                </xsd:complexContent>
                        </xsd:complexType>
                        <complexType name="mixed">
                                <all>
                                        <element name="varString" 
type="xsd:string"/>
                                        <element name="varInt" type="xsd:int"/>
                                        <element name="varFloat" 
type="xsd:float"/>
                                        <element name="varArray" 
type="tns:bluArray"/>
                                </all>
                        </complexType>
                </xsd:schema>
        </types>
        <message name="getOrderInput">
                <part name="orderId" type="xsd:int"/>
        </message>
        <message name="getOrderOutput">
                <part name="return" type="tns:bluArray"/>
        </message>
        <portType name="ordersModelPortType">
                <operation name="getOrder">
                        <input message="tns:getOrderInput"/>
                        <output message="tns:getOrderOutput"/>
                </operation>
        </portType>
        <binding name="ordersModelBinding" type="tns:ordersModelPortType">
                <soap:binding xmlns="http://schemas.xmlsoap.org/wsdl/soap/"; 
style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
                <operation 
xmlns:default="http://schemas.xmlsoap.org/wsdl/soap/"; name="getOrder">
                        <input 
xmlns:default="http://schemas.xmlsoap.org/wsdl/soap/";>
                                <soap:body 
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"; use="encoded" 
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
                        </input>
                        <output 
xmlns:default="http://schemas.xmlsoap.org/wsdl/soap/";>
                                <soap:body 
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"; use="encoded" 
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
                        </output>
                </operation>
        </binding>
        <service name="ordersModelService">
                <port xmlns:default="http://schemas.xmlsoap.org/wsdl/soap/"; 
name="ordersModelPort" binding="tns:ordersModelBinding">
                        <soap:address 
xmlns="http://schemas.xmlsoap.org/wsdl/soap/"; 
location="http://blah/soap/?model=orders"/>
                </port>
        </service>
</definitions>


AS is very simple

public function go():void {
   WS = new WebService();
   WS.wsdl = 
"http://max.shoon.blucommerce.beta.blubolt.com/oversight/soap/wsdl?model=orders";
   WS.getOrder.addEventListener("result", resultHandler);
   WS.getOrder.addEventListener("fault", faultHandler);
   WS.addEventListener("load", loadHandler);
   WS.loadWSDL();
}

public function loadHandler(event:LoadEvent):void {
            WS.getOrder();            
}

and the result handler just spits the raw result in xml into a textarea. Or at 
any rate it should.

I've tested using a proxy etc., and can see that the WSDL is being returned 
correctly, but am utterly stumped as to why flex dislikes it quite so much.

Any help would be hugely appreciated!

Cheers,

Max


Reply via email to