Symfony 2,启动服务器时出现奇怪错误

时间:2015-05-31 13:45:11

标签: php xml symfony

我对Symfony 2有一点问题。现在,当我尝试启动服务器时会弹出以下错误。从我读到的内容与文件service.xml相关联。有谁能告诉我出了什么问题?

文件service.xml:

<?xml version="1.0" ?>
<container xmlns="http://symfony.com/schema/dic/services"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://symfony.com/schema/dic/services
                        http://symfony.com/schema/dic/services/services-1.0.xsd">

    <parameters>
        <parameter key="rest_demo.note.handler.class">
            Rest\DemoBundle\Handler\NoteHandler
        </parameter>
        <parameter key="rest_demo.note.class">
            Rest\DemoBundle\Entity\Note</parameter>
    </parameters>

    <services>
        <service id="rest_demo.note.handler" class="%rest_demo.note.handler.class%">
            <argument type="service" id="doctrine.orm.entity_manager" />
            <argument>%rest_demo.note.class%</argument>
            <argument type="service" id="form.factory"></argument>
        </service>
    </services>

</container>

错误:

 [Symfony\Component\DependencyInjection\Exception\InvalidArgumentException]  
  "'                                                                          
              Rest\\DemoBundle\\Handler\\NoteHandler                          
          '" is not a valid class name for the "rest_demo.note.handle         
  r" service.   

1 个答案:

答案 0 :(得分:3)

xml config不能使用空格,你应该编写没有空格的配置,如下所示:

<parameter key="rest_demo.note.handler.class">Rest\DemoBundle\Handler\NoteHandler</parameter>

来自doc page

  

XML配置文件中参数标记之间的值不是   修剪。这意味着以下配置示例将具有   值\ n sendmail \ n:

<parameter key="mailer.transport">
    sendmail
</parameter>
     

在某些情况下(对于常量或类名),这可能会引发错误。   为了防止这种情况,您必须始终将参数内联为   遵循:

<parameter key="mailer.transport">sendmail</parameter>