- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Soap response showing items as array instead of salesOrderItemEntity
getting this in soap response:
<item>
<key xsi:type="xsd:string">items</key>
<value SOAP-ENC:arrayType="xsd:string[2]" xsi:type="SOAP-ENC:Array">
<item xsi:type="xsd:string">Array</item>
<item xsi:type="xsd:string">Array</item>
</value>
</item>
Solved! Go to Solution.
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Just an update, that I fixed the issue. I think it was the new release recently put out for 1.9.3. There was an if statement that didn't exclude arrays before sending the row to the processingRow function. Looks like processingRow was converting the array to a string.
In app/code/core/Mage/Api/Model/Server/Handler/Abstract.php (see before and after below)
public function processingMethodResult(array $result)
{
foreach ($result as &$row) {
/*before */
//if (!is_null($row) && !is_bool($row) && !is_numeric($row)) {
/*after*/
if (!is_null($row) && !is_bool($row) && !is_numeric($row) && !is_array($row)) {
$row = $this->processingRow($row);
}
}
return $result;
}
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Just an update, that I fixed the issue. I think it was the new release recently put out for 1.9.3. There was an if statement that didn't exclude arrays before sending the row to the processingRow function. Looks like processingRow was converting the array to a string.
In app/code/core/Mage/Api/Model/Server/Handler/Abstract.php (see before and after below)
public function processingMethodResult(array $result)
{
foreach ($result as &$row) {
/*before */
//if (!is_null($row) && !is_bool($row) && !is_numeric($row)) {
/*after*/
if (!is_null($row) && !is_bool($row) && !is_numeric($row) && !is_array($row)) {
$row = $this->processingRow($row);
}
}
return $result;
}