Commit c32e9c813e10bfb3e2f818713c6dd70e977b5dc9

Authored by kevin_fourie
1 parent be1d0766

Merged in from STABLE trunk...

KTS-3133
"Error in storage verification process"
Updated.

Committed By: Conrad Vermeulen
Reviewed By: Megan Watson


git-svn-id: https://kt-dms.svn.sourceforge.net/svnroot/kt-dms/STABLE/branches/3.5.3-Release-Branch@8909 c91229c3-7414-0410-bfa2-8a42b809f60b
Showing 1 changed file with 22 additions and 3 deletions
thirdparty/pear/SOAP/Base.php
@@ -374,6 +374,22 @@ class SOAP_Base extends SOAP_Base_Object @@ -374,6 +374,22 @@ class SOAP_Base extends SOAP_Base_Object
374 'http://schemas.xmlsoap.org/soap/encoding/' => 'SOAP-ENC'); 374 'http://schemas.xmlsoap.org/soap/encoding/' => 'SOAP-ENC');
375 } 375 }
376 376
  377 + function isValidField($fieldname, $type)
  378 + {
  379 + foreach($this->_wsdl->complexTypes as $nss)
  380 + {
  381 + foreach($nss as $ns)
  382 + {
  383 + if (array_key_exists($fieldname, $ns['elements']))
  384 + {
  385 + return true;
  386 + }
  387 + }
  388 + }
  389 + return false;
  390 + }
  391 +
  392 +
377 /** 393 /**
378 * Sets the schema version used in the SOAP message. 394 * Sets the schema version used in the SOAP message.
379 * 395 *
@@ -473,7 +489,10 @@ class SOAP_Base extends SOAP_Base_Object @@ -473,7 +489,10 @@ class SOAP_Base extends SOAP_Base_Object
473 $xmlout_value .= $this->_serializeValue(get_object_vars($vars[$k]), $k, false, $this->_section5 ? null : $elNamespace); 489 $xmlout_value .= $this->_serializeValue(get_object_vars($vars[$k]), $k, false, $this->_section5 ? null : $elNamespace);
474 } 490 }
475 } else { 491 } else {
476 - $xmlout_value .= $this->_serializeValue($vars[$k], $k, false, $this->_section5 ? null : $elNamespace); 492 + if ($this->isValidField($k, $type))
  493 + {
  494 + $xmlout_value .= $this->_serializeValue($vars[$k], $k, false, $this->_section5 ? null : $elNamespace);
  495 + }
477 } 496 }
478 } 497 }
479 } 498 }
@@ -518,12 +537,12 @@ class SOAP_Base extends SOAP_Base_Object @@ -518,12 +537,12 @@ class SOAP_Base extends SOAP_Base_Object
518 } 537 }
519 538
520 $xmlout_offset = ' SOAP-ENC:offset="[0]"'; 539 $xmlout_offset = ' SOAP-ENC:offset="[0]"';
521 - if (!$arrayType) { 540 + if (!$arrayType) {
522 /* 541 /*
523 $numtypes = count($array_types); 542 $numtypes = count($array_types);
524 if ($numtypes == 1) { 543 if ($numtypes == 1) {
525 $arrayType = $array_type; 544 $arrayType = $array_type;
526 - } 545 + }
527 */ 546 */
528 // Using anyType is more interoperable. 547 // Using anyType is more interoperable.
529 if ($array_type == 'Struct') { 548 if ($array_type == 'Struct') {