Closed rerlinger closed 9 years ago
If an REST service contains at least one ore more fields, the following error occurs:
Fatal error: Call to a member function getName() on a non-object in /vendor/zfcampus/zf-apigility-documentation-swagger/src/Service.php on line 158
The reason is in case of foreach ($service->fields as $field) the $field contains an array of objects instead of the object itself.
Instead of using the following code:
foreach ($service->fields as $field) { $properties[$field->getName()] = array( 'type' => method_exists($field, 'getType') ? $field->getType() : 'string', 'description' => $field->getDescription() ); if ($field->isRequired()) { $requiredProperties[] = $field->getName(); } }
the following code fixed my problem temporary:
foreach ($service->fields as $field) { $field = $field[0]; // get object from first index of array $properties[$field->getName()] = array( 'type' => method_exists($field, 'getType') ? $field->getType() : 'string', 'description' => $field->getDescription() ); if ($field->isRequired()) { $requiredProperties[] = $field->getName(); } }
If an REST service contains at least one ore more fields, the following error occurs:
Fatal error: Call to a member function getName() on a non-object in /vendor/zfcampus/zf-apigility-documentation-swagger/src/Service.php on line 158
The reason is in case of foreach ($service->fields as $field) the $field contains an array of objects instead of the object itself.
Instead of using the following code:
the following code fixed my problem temporary: