Symfony2 - 第0行的[无活动文件]中不允许'序列化'SimpleXMLElement'

时间:2014-04-24 11:26:24

标签: symfony serialization

我向Mixpanel发送了一些事件。所以我创建了一个服务,通过json_encode函数配置事件并将其转换为Javascript Mixpanel API方法。

这个包含事件的Json对象是从Twig模板中调用的:

{{ mixpanel.consumeJavascriptActions | raw }}

它几乎总是正常工作,但是当我从事件监听器内部调用服务时:

function onFlush(OnFlushEventArgs $args)
{
    $this->newProposals = array();
    $ormUtils = new DoctrineOrmUtils($this->doctrine->getManager());
    foreach ($args->getEntityManager()->getUnitOfWork()->getScheduledEntityInsertions() as $entity) {
        if ($entity instanceof Proposal) {
            $this->newProposals[] = $entity;
        }

    }
}

function postFlush(PostFlushEventArgs $args)
{
    foreach ($this->newProposals as $proposal) {

        //Here I call the service
        $this->get('pro_mixpanel')->trackCommunityChanges($proposal->getCommunity(), $this->getUser());

     }

}    

我在触发事件new Proposal时收到了下一个错误:

  

致命错误:未捕获的异常'异常'通过消息'序列化' SimpleXMLElement'不允许'在第0行的[无活动文件]中

     

例外:' SimpleXMLElement'的序列化在第0行的[无活动文件]中不允许

还有很多错误,例如:

  

例外:' SimpleXMLElement'的序列化不允许

     

例外:序列化'关闭'不允许

还有一些Serialization of ... not allowed

我不知道如何解决它,因为我没有发送任何XML数据,而且当我从控制器内部调用此服务时,它可以正常工作。

1 个答案:

答案 0 :(得分:0)

好吧,编码到Json对象的数据只是一个错误。数组中有一个值来编码也是一个数组。修复它一切正常。