Ich integriere Symfony DIC in eine Zend-Framework-Anwendung, das geht gut, außer für übergeordnete Dienste.
In meiner DIC-Konfiguration habe ich einen übergeordneten Dienst PC_Service, der durch alle meine Dienste erweitert wird. Das Problem ist, dass der Entity Manager in den Services, die PC_Service erweitern, nicht verfügbar ist (NULL). Wenn ich den Entitymanager über service.stats injiziere, wird der Entitymanger korrekt gesetzt.
...
<service id="pc.service" class="PC_Service" abstract="true">
<call method="setEntityManager">
<argument type="service" id="doctrine.entitymanager" />
</call>
</service>
...
<service id="service.stats" class="Application_Service_Stats" parent="pc.service" />
...
PC_Dienstleistung
abstract class PC_Service
{
protected $_em;
public function setEntityManager($entityManager)
{
$this->_em = $entityManager;
}
}
Anwendung_Dienst_Statistiken
class Application_Service_Stats extends PC_Service
{
... $this->_em should be set here.
}
Ich hoffe, jemand kann mir sagen, was ich falsch mache.