From: w dot antoine at free dot fr Operating system: Windows 2000 PHP version: 5.2.1 PHP Bug Type: SOAP related Bug description: minOccurs="0" and null class member variable
Description: ------------ I use the classmap option of the soap client constructed from the WSDL. In my wsdl file i have a complex type with elements where minOccurs=0 et maxOccurs=1. When the corresponding class member is null, an empty element is send. How i can tell the soap client to not send elements when minOccurs=0 and the value is NULL? The webservice server is apache axis Reproduce code: --------------- Complex type definition: <complexType name="SimulateRequest"> <all> <element name="product1Type" type="impl:Product1Type"/> <element name="product1BankCardTypeCd" type="impl:Product1BankCardTypeCd" minOccurs="0"/> </all> </complexType> Php Code to call: $simulationRequest[0]->setProduct1Type("CLA"); $simulationRequest[0]->setProduct1BankCardTypeCd(NULL); Php class SimulateRequest extract: class SimulateRequest{ private $product1Type ; public function getProduct1Type(){ return $this->product1Type; } public function setProduct1Type($param){ $this->product1Type=$param; } private $product1BankCardTypeCd ; public function getProduct1BankCardTypeCd(){ return $this->product1BankCardTypeCd; } public function setProduct1BankCardTypeCd($param){ $this->product1BankCardTypeCd=$param; } Expected result: ---------------- <ns1:simulationRequest> <ns1:product1Type>REV</ns1:product1Type> </ns1:simulationRequest> Actual result: -------------- <ns1:simulationRequest> <ns1:product1Type>REV</ns1:product1Type> <ns1:product1BankCardTypeCd/> </ns1:simulationRequest> -- Edit bug report at http://bugs.php.net/?id=41004&edit=1 -- Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=41004&r=trysnapshot44 Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=41004&r=trysnapshot52 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=41004&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=41004&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=41004&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=41004&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=41004&r=needscript Try newer version: http://bugs.php.net/fix.php?id=41004&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=41004&r=support Expected behavior: http://bugs.php.net/fix.php?id=41004&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=41004&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=41004&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=41004&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=41004&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=41004&r=dst IIS Stability: http://bugs.php.net/fix.php?id=41004&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=41004&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=41004&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=41004&r=nozend MySQL Configuration Error: http://bugs.php.net/fix.php?id=41004&r=mysqlcfg