11
votes

I am a student and I am very new in symfony and in stackoverflow then sorry if I do some mistakes.

Here is the error when I try to access to the page:

[Semantical Error] The annotation "@Route" in method AppBundle\Controller\FormController::newAction() was never imported. Did you maybe forget to add a "use" statement for this annotation? in /home/buddy/Bachelor/RealBachelor/src/AppBundle/Controller/ (which is being imported from "/home/buddy/Bachelor/RealBachelor/app/config/routing.yml"). Make sure annotations are enabled.

and here is my controller:

<?php

namespace AppBundle\Controller;

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request;

class SuccessController extends Controller
{
    /**
     * @Route("/success", name="success")
     */
    public function indexAction(Request $request)
    {


        $id = "yeah success!!";

        return $this->render('default/index.html.twig', [
            'id' => $id,
        ]);
    }
}

I don't know if is needed but here is my routing config file:

 # bin/config/routing.yml
fos_user:
    resource: "@FOSUserBundle/Resources/config/routing/all.xml"

app:
    resource: '@AppBundle/Controller/'
    type: annotation
3
Your error message says FormController, but you code example says SuccessController. Are you sure you're looking at the right file?Stephan Vierkant

3 Answers

15
votes

You need to check this file:

AppBundle\Controller\FormController.php

It seems you didn't add the namespace:

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;

Please check it.

0
votes

Your class should look like this:

/**
 * @Route("/success", name="success")
 */
class SuccessController extends Controller
{

    public function indexAction(Request $request)
    {


        $id = "yeah success!!";

        return $this->render('default/index.html.twig', [
                'id' => $id,
        ]);
    }
}
0
votes

I had a problem just like yours and from a newly downloaded project with composer and symfony 3.4. It didn't start until I commented out the routing.yml file then I got the project up without problems. I attach how it should look:

app/config/routing.yml

#app:
#    resource: '@AppBundle/Controller/'
#    type: annotation

You save changes then you start the server and it should work without problems!

Regards!