title: PHP SOAP Client to JBoss Webservice issue
body: <p>I need to pass the SOAP call exactly as below and get the response with isEmailAvailableResponse
  But it looks like PHP doesn't like the namespace or something, I keep getting the error listed below
  I have tried passing the XML manually and that does work but I'd like to try get it working with PHP SOAP client</p>
  
  <pre><code>&lt;?php
  
  $client = new SoapClient("http://192.168.35.123:8080/iBossCustomer/Email?wsdl", array('trace' =&gt; 1));
  
  $arg = array("emailAddressName" =&gt; 'helloasdadsad@iburst.co.za');
  $params = array("arg0" =&gt; $arg);
  
  $client-&gt;isEmailAvailable($params);
  </code></pre>
  
  <p>-------------- XML ------------------------</p>
  
  <pre><code>&lt;soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ema="http://email.boss.arc/"&gt;
     &lt;soapenv:Header/&gt;
     &lt;soapenv:Body&gt;
        &lt;ema:isEmailAvailable&gt;
           &lt;!--Optional:--&gt;
           &lt;arg0&gt;
              &lt;emailAddressName&gt;helloasdadsad@iburst.co.za&lt;/emailAddressName&gt;
           &lt;/arg0&gt;
        &lt;/ema:isEmailAvailable&gt;
     &lt;/soapenv:Body&gt;
  &lt;/soapenv:Envelope&gt;
  </code></pre>
  
  <p>------------- PHP error ---------------------</p>
  
  <p>Caught exception: SOAP-ERROR: Encoding: object hasn't 'successful' property</p>
  
  <p>------- WSDL file -------------------</p>
  
  <pre><code>&lt;definitions xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://email.boss.arc/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://email.boss.arc/" name="Email"&gt;
  &lt;types&gt;
  &lt;xsd:schema&gt;
  &lt;xsd:import namespace="http://webservice.gateway.email.service.isp.rogueware.org/" schemaLocation="http://192.168.35.123:8080/iBossCustomer/Email?xsd=1"/&gt;
  &lt;/xsd:schema&gt;
  &lt;xsd:schema&gt;
  &lt;xsd:import namespace="http://email.boss.arc/" schemaLocation="http://192.168.35.123:8080/iBossCustomer/Email?xsd=2"/&gt;
  &lt;/xsd:schema&gt;
  &lt;/types&gt;
  &lt;message name="DeleteEmailAccount"&gt;
  &lt;part name="parameters" element="tns:DeleteEmailAccount"/&gt;
  &lt;/message&gt;
  &lt;message name="DeleteEmailAccountResponse"&gt;
  &lt;part name="parameters" element="tns:DeleteEmailAccountResponse"/&gt;
  &lt;/message&gt;
  &lt;message name="ReserveEmailAddress"&gt;
  &lt;part name="parameters" element="tns:ReserveEmailAddress"/&gt;
  &lt;/message&gt;
  &lt;message name="ReserveEmailAddressResponse"&gt;
  &lt;part name="parameters" element="tns:ReserveEmailAddressResponse"/&gt;
  &lt;/message&gt;
  &lt;message name="CreateEmailDomain"&gt;
  &lt;part name="parameters" element="tns:CreateEmailDomain"/&gt;
  &lt;/message&gt;
  &lt;message name="CreateEmailDomainResponse"&gt;
  &lt;part name="parameters" element="tns:CreateEmailDomainResponse"/&gt;
  &lt;/message&gt;
  &lt;message name="isEmailDomainAvailable"&gt;
  &lt;part name="parameters" element="tns:isEmailDomainAvailable"/&gt;
  &lt;/message&gt;
  &lt;message name="isEmailDomainAvailableResponse"&gt;
  &lt;part name="parameters" element="tns:isEmailDomainAvailableResponse"/&gt;
  &lt;/message&gt;
  &lt;message name="AddEmailAccountNickname"&gt;
  &lt;part name="parameters" element="tns:AddEmailAccountNickname"/&gt;
  &lt;/message&gt;
  &lt;message name="AddEmailAccountNicknameResponse"&gt;
  &lt;part name="parameters" element="tns:AddEmailAccountNicknameResponse"/&gt;
  &lt;/message&gt;
  &lt;message name="GetEmailAccountAttributes"&gt;
  &lt;part name="parameters" element="tns:GetEmailAccountAttributes"/&gt;
  &lt;/message&gt;
  &lt;message name="GetEmailAccountAttributesResponse"&gt;
  &lt;part name="parameters" element="tns:GetEmailAccountAttributesResponse"/&gt;
  &lt;/message&gt;
  &lt;message name="GetEmailAccountInformation"&gt;
  &lt;part name="parameters" element="tns:GetEmailAccountInformation"/&gt;
  &lt;/message&gt;
  &lt;message name="GetEmailAccountInformationResponse"&gt;
  &lt;part name="parameters" element="tns:GetEmailAccountInformationResponse"/&gt;
  &lt;/message&gt;
  &lt;message name="SetEmailDomainMaxAccountNames"&gt;
  &lt;part name="parameters" element="tns:SetEmailDomainMaxAccountNames"/&gt;
  &lt;/message&gt;
  &lt;message name="SetEmailDomainMaxAccountNamesResponse"&gt;
  &lt;part name="parameters" element="tns:SetEmailDomainMaxAccountNamesResponse"/&gt;
  &lt;/message&gt;
  &lt;message name="SetEmailAccountSpamFolderEnabled"&gt;
  &lt;part name="parameters" element="tns:SetEmailAccountSpamFolderEnabled"/&gt;
  &lt;/message&gt;
  &lt;message name="SetEmailAccountSpamFolderEnabledResponse"&gt;
  &lt;part name="parameters" element="tns:SetEmailAccountSpamFolderEnabledResponse"/&gt;
  &lt;/message&gt;
  &lt;message name="SetEmailAccountForwardAddress"&gt;
  &lt;part name="parameters" element="tns:SetEmailAccountForwardAddress"/&gt;
  &lt;/message&gt;
  &lt;message name="SetEmailAccountForwardAddressResponse"&gt;
  &lt;part name="parameters" element="tns:SetEmailAccountForwardAddressResponse"/&gt;
  &lt;/message&gt;
  &lt;message name="SetEmailAccountLocalDeliveryEnabled"&gt;
  &lt;part name="parameters" element="tns:SetEmailAccountLocalDeliveryEnabled"/&gt;
  &lt;/message&gt;
  &lt;message name="SetEmailAccountLocalDeliveryEnabledResponse"&gt;
  &lt;part name="parameters" element="tns:SetEmailAccountLocalDeliveryEnabledResponse"/&gt;
  &lt;/message&gt;
  &lt;message name="SetEmailAccountPassword"&gt;
  &lt;part name="parameters" element="tns:SetEmailAccountPassword"/&gt;
  &lt;/message&gt;
  &lt;message name="SetEmailAccountPasswordResponse"&gt;
  &lt;part name="parameters" element="tns:SetEmailAccountPasswordResponse"/&gt;
  &lt;/message&gt;
  &lt;message name="RemoveEmailAccountNickName"&gt;
  &lt;part name="parameters" element="tns:RemoveEmailAccountNickName"/&gt;
  &lt;/message&gt;
  &lt;message name="RemoveEmailAccountNickNameResponse"&gt;
  &lt;part name="parameters" element="tns:RemoveEmailAccountNickNameResponse"/&gt;
  &lt;/message&gt;
  &lt;message name="CreateEmailAddress"&gt;
  &lt;part name="parameters" element="tns:CreateEmailAddress"/&gt;
  &lt;/message&gt;
  &lt;message name="CreateEmailAddressResponse"&gt;
  &lt;part name="parameters" element="tns:CreateEmailAddressResponse"/&gt;
  &lt;/message&gt;
  &lt;message name="CreateReservedEmailAddress"&gt;
  &lt;part name="parameters" element="tns:CreateReservedEmailAddress"/&gt;
  &lt;/message&gt;
  &lt;message name="CreateReservedEmailAddressResponse"&gt;
  &lt;part name="parameters" element="tns:CreateReservedEmailAddressResponse"/&gt;
  &lt;/message&gt;
  &lt;message name="isEmailAvailable"&gt;
  &lt;part name="parameters" element="tns:isEmailAvailable"/&gt;
  &lt;/message&gt;
  &lt;message name="isEmailAvailableResponse"&gt;
  &lt;part name="parameters" element="tns:isEmailAvailableResponse"/&gt;
  &lt;/message&gt;
  &lt;message name="UpdateEmailAttribute"&gt;
  &lt;part name="parameters" element="tns:UpdateEmailAttribute"/&gt;
  &lt;/message&gt;
  &lt;message name="UpdateEmailAttributeResponse"&gt;
  &lt;part name="parameters" element="tns:UpdateEmailAttributeResponse"/&gt;
  &lt;/message&gt;
  &lt;portType name="Email"&gt;
  &lt;operation name="DeleteEmailAccount"&gt;
  &lt;input message="tns:DeleteEmailAccount"/&gt;
  &lt;output message="tns:DeleteEmailAccountResponse"/&gt;
  &lt;/operation&gt;
  &lt;operation name="ReserveEmailAddress"&gt;
  &lt;input message="tns:ReserveEmailAddress"/&gt;
  &lt;output message="tns:ReserveEmailAddressResponse"/&gt;
  &lt;/operation&gt;
  &lt;operation name="CreateEmailDomain"&gt;
  &lt;input message="tns:CreateEmailDomain"/&gt;
  &lt;output message="tns:CreateEmailDomainResponse"/&gt;
  &lt;/operation&gt;
  &lt;operation name="isEmailDomainAvailable"&gt;
  &lt;input message="tns:isEmailDomainAvailable"/&gt;
  &lt;output message="tns:isEmailDomainAvailableResponse"/&gt;
  &lt;/operation&gt;
  &lt;operation name="AddEmailAccountNickname"&gt;
  &lt;input message="tns:AddEmailAccountNickname"/&gt;
  &lt;output message="tns:AddEmailAccountNicknameResponse"/&gt;
  &lt;/operation&gt;
  &lt;operation name="GetEmailAccountAttributes"&gt;
  &lt;input message="tns:GetEmailAccountAttributes"/&gt;
  &lt;output message="tns:GetEmailAccountAttributesResponse"/&gt;
  &lt;/operation&gt;
  &lt;operation name="GetEmailAccountInformation"&gt;
  &lt;input message="tns:GetEmailAccountInformation"/&gt;
  &lt;output message="tns:GetEmailAccountInformationResponse"/&gt;
  &lt;/operation&gt;
  &lt;operation name="SetEmailDomainMaxAccountNames"&gt;
  &lt;input message="tns:SetEmailDomainMaxAccountNames"/&gt;
  &lt;output message="tns:SetEmailDomainMaxAccountNamesResponse"/&gt;
  &lt;/operation&gt;
  &lt;operation name="SetEmailAccountSpamFolderEnabled"&gt;
  &lt;input message="tns:SetEmailAccountSpamFolderEnabled"/&gt;
  &lt;output message="tns:SetEmailAccountSpamFolderEnabledResponse"/&gt;
  &lt;/operation&gt;
  &lt;operation name="SetEmailAccountForwardAddress"&gt;
  &lt;input message="tns:SetEmailAccountForwardAddress"/&gt;
  &lt;output message="tns:SetEmailAccountForwardAddressResponse"/&gt;
  &lt;/operation&gt;
  &lt;operation name="SetEmailAccountLocalDeliveryEnabled"&gt;
  &lt;input message="tns:SetEmailAccountLocalDeliveryEnabled"/&gt;
  &lt;output message="tns:SetEmailAccountLocalDeliveryEnabledResponse"/&gt;
  &lt;/operation&gt;
  &lt;operation name="SetEmailAccountPassword"&gt;
  &lt;input message="tns:SetEmailAccountPassword"/&gt;
  &lt;output message="tns:SetEmailAccountPasswordResponse"/&gt;
  &lt;/operation&gt;
  &lt;operation name="RemoveEmailAccountNickName"&gt;
  &lt;input message="tns:RemoveEmailAccountNickName"/&gt;
  &lt;output message="tns:RemoveEmailAccountNickNameResponse"/&gt;
  &lt;/operation&gt;
  &lt;operation name="CreateEmailAddress"&gt;
  &lt;input message="tns:CreateEmailAddress"/&gt;
  &lt;output message="tns:CreateEmailAddressResponse"/&gt;
  &lt;/operation&gt;
  &lt;operation name="CreateReservedEmailAddress"&gt;
  &lt;input message="tns:CreateReservedEmailAddress"/&gt;
  &lt;output message="tns:CreateReservedEmailAddressResponse"/&gt;
  &lt;/operation&gt;
  &lt;operation name="isEmailAvailable"&gt;
  &lt;input message="tns:isEmailAvailable"/&gt;
  &lt;output message="tns:isEmailAvailableResponse"/&gt;
  &lt;/operation&gt;
  &lt;operation name="UpdateEmailAttribute"&gt;
  &lt;input message="tns:UpdateEmailAttribute"/&gt;
  &lt;output message="tns:UpdateEmailAttributeResponse"/&gt;
  &lt;/operation&gt;
  &lt;/portType&gt;
  &lt;binding name="EmailPortBinding" type="tns:Email"&gt;
  &lt;soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/&gt;
  &lt;operation name="DeleteEmailAccount"&gt;
  &lt;soap:operation soapAction=""/&gt;
  &lt;input&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/input&gt;
  &lt;output&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/output&gt;
  &lt;/operation&gt;
  &lt;operation name="ReserveEmailAddress"&gt;
  &lt;soap:operation soapAction=""/&gt;
  &lt;input&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/input&gt;
  &lt;output&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/output&gt;
  &lt;/operation&gt;
  &lt;operation name="CreateEmailDomain"&gt;
  &lt;soap:operation soapAction=""/&gt;
  &lt;input&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/input&gt;
  &lt;output&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/output&gt;
  &lt;/operation&gt;
  &lt;operation name="isEmailDomainAvailable"&gt;
  &lt;soap:operation soapAction=""/&gt;
  &lt;input&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/input&gt;
  &lt;output&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/output&gt;
  &lt;/operation&gt;
  &lt;operation name="AddEmailAccountNickname"&gt;
  &lt;soap:operation soapAction=""/&gt;
  &lt;input&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/input&gt;
  &lt;output&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/output&gt;
  &lt;/operation&gt;
  &lt;operation name="GetEmailAccountAttributes"&gt;
  &lt;soap:operation soapAction=""/&gt;
  &lt;input&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/input&gt;
  &lt;output&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/output&gt;
  &lt;/operation&gt;
  &lt;operation name="GetEmailAccountInformation"&gt;
  &lt;soap:operation soapAction=""/&gt;
  &lt;input&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/input&gt;
  &lt;output&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/output&gt;
  &lt;/operation&gt;
  &lt;operation name="SetEmailDomainMaxAccountNames"&gt;
  &lt;soap:operation soapAction=""/&gt;
  &lt;input&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/input&gt;
  &lt;output&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/output&gt;
  &lt;/operation&gt;
  &lt;operation name="SetEmailAccountSpamFolderEnabled"&gt;
  &lt;soap:operation soapAction=""/&gt;
  &lt;input&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/input&gt;
  &lt;output&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/output&gt;
  &lt;/operation&gt;
  &lt;operation name="SetEmailAccountForwardAddress"&gt;
  &lt;soap:operation soapAction=""/&gt;
  &lt;input&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/input&gt;
  &lt;output&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/output&gt;
  &lt;/operation&gt;
  &lt;operation name="SetEmailAccountLocalDeliveryEnabled"&gt;
  &lt;soap:operation soapAction=""/&gt;
  &lt;input&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/input&gt;
  &lt;output&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/output&gt;
  &lt;/operation&gt;
  &lt;operation name="SetEmailAccountPassword"&gt;
  &lt;soap:operation soapAction=""/&gt;
  &lt;input&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/input&gt;
  &lt;output&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/output&gt;
  &lt;/operation&gt;
  &lt;operation name="RemoveEmailAccountNickName"&gt;
  &lt;soap:operation soapAction=""/&gt;
  &lt;input&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/input&gt;
  &lt;output&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/output&gt;
  &lt;/operation&gt;
  &lt;operation name="CreateEmailAddress"&gt;
  &lt;soap:operation soapAction=""/&gt;
  &lt;input&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/input&gt;
  &lt;output&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/output&gt;
  &lt;/operation&gt;
  &lt;operation name="CreateReservedEmailAddress"&gt;
  &lt;soap:operation soapAction=""/&gt;
  &lt;input&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/input&gt;
  &lt;output&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/output&gt;
  &lt;/operation&gt;
  &lt;operation name="isEmailAvailable"&gt;
  &lt;soap:operation soapAction=""/&gt;
  &lt;input&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/input&gt;
  &lt;output&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/output&gt;
  &lt;/operation&gt;
  &lt;operation name="UpdateEmailAttribute"&gt;
  &lt;soap:operation soapAction=""/&gt;
  &lt;input&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/input&gt;
  &lt;output&gt;
  &lt;soap:body use="literal"/&gt;
  &lt;/output&gt;
  &lt;/operation&gt;
  &lt;/binding&gt;
  &lt;service name="Email"&gt;
  &lt;port name="EmailPort" binding="tns:EmailPortBinding"&gt;
  &lt;soap:address location="http://192.168.35.123:8080/iBossCustomer/Email"/&gt;
  &lt;/port&gt;
  &lt;/service&gt;
  &lt;/definitions&gt;
  </code></pre>
  
  <p>`</p>