In fact, i think there is an issue here.
The xml driver for configuration does not seem to work well.
First of all, with the new PR4, the line :
<app:session default-locale="en" lifetime="3600" auto-start="true" />
Causes a crash of the application with a xsd validation error.
For the setter injection, when i use exactly the same configuration,
it works with YAML but not with XML.
For example, the YAML :
services:
hello_controller:
class: "Application\HelloBundle\Controller\HelloController"
shared: true
calls:
- [ setTestService, [ @test_service ] ]
test_service:
class: "Application\HelloBundle\Service\Impl\TestService"
Works fine !
The equivalent XML :
<services>
<service id="hello_controller" class="Application\HelloBundle
\Controller\HelloController" shared="true">
<call method="setTestService">
<argument type="service" id="test_service" />
</call>
</service>
<service id="test_service" class="Application\HelloBundle
\Service\Impl\TestService" />
</services>
Doesn't work, the setter method is not invoked.
cya,
Benjamin.
On 8 déc, 02:11, Marijn <[email protected]> wrote:
> Perhaps this article will help
> you:http://avalanche123.com/post/1215273326/symfony2-controller-testing
>
> On Dec 7, 1:44 pm, "benjamin.dulau" <[email protected]> wrote:
>
>
>
>
>
>
>
> > Hi,
>
> > Where can i find an example for setter injection in Symfony 2 please ?
>
> > I'm trying to do something like :
>
> > use Application\HelloBundle\Service;
>
> > class HelloController extends Controller
> > {
> > /**
> > * @var ITestService
> > */
> > private $testService;
>
> > public function indexAction($name)
> > {
> > $test = $this->testService->say('Hey give me my service
> > instance !!');
> > return $this->render('HelloBundle:Hello:index.twig',
> > array('name' => $name, 'test' => $test));
> > }
>
> > public function setTestService(ITestService $testService)
> > {
> > $this->testService = $testService;
> > return $this;
> > }
>
> > }
>
> > But i'm missing something, what should be the configuration for that ?
>
> > <services>
> > <service id="hello_controller" class="Application\HelloBundle
> > \Controller\HelloController">
> > <call method="setTestService">
> > <argument type="service" id="service.test" />
> > </call>
> > </service>
> > <service id="service.test" class="Application\HelloBundle\Service
> > \Impl\TestService" />
> > </services>
>
> > Thanks.
>
> > br,
> > Benjamin.
--
If you want to report a vulnerability issue on symfony, please send it to
security at symfony-project.com
You received this message because you are subscribed to the Google
Groups "symfony users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/symfony-users?hl=en