diff --git a/ModelDescriber/JMSModelDescriber.php b/ModelDescriber/JMSModelDescriber.php index 18e5382..b20ca94 100644 --- a/ModelDescriber/JMSModelDescriber.php +++ b/ModelDescriber/JMSModelDescriber.php @@ -93,14 +93,17 @@ class JMSModelDescriber implements ModelDescriberInterface, ModelRegistryAwareIn $reflections[] = new \ReflectionProperty($item->class, $item->name); } - try { - if (null !== $item->getter) { + if (null !== $item->getter) { + try { $reflections[] = new \ReflectionMethod($item->class, $item->getter); + } catch (\ReflectionException $ignored) { } - if (null !== $item->setter) { + } + if (null !== $item->setter) { + try { $reflections[] = new \ReflectionMethod($item->class, $item->setter); + } catch (\ReflectionException $ignored) { } - } catch (\ReflectionExceptions $ignored) { } $groups = $this->computeGroups($context, $item->type); diff --git a/Tests/Functional/Entity/VirtualProperty.php b/Tests/Functional/Entity/VirtualProperty.php index e996256..52ab283 100644 --- a/Tests/Functional/Entity/VirtualProperty.php +++ b/Tests/Functional/Entity/VirtualProperty.php @@ -40,6 +40,7 @@ class VirtualProperty /** * @Serializer\Accessor(getter="getFoo", setter="setFoo") * @Serializer\Type("string") + * @Serializer\Expose * * Ensures https://github.com/nelmio/NelmioApiDocBundle/issues/1708 is fixed. */ diff --git a/Tests/Functional/JMSFunctionalTest.php b/Tests/Functional/JMSFunctionalTest.php index a9d581c..990f181 100644 --- a/Tests/Functional/JMSFunctionalTest.php +++ b/Tests/Functional/JMSFunctionalTest.php @@ -280,6 +280,9 @@ class JMSFunctionalTest extends WebTestCase 'email' => [ 'type' => 'string', ], + 'virtualprop' => [ + 'type' => 'string', + ], ], ], $this->getModel('VirtualProperty')->toArray()); }