Route / Speaking URL for own MVC


I have my own website package (Acme.Website). In this package I created my own Controller Newsletter, its Model and the corresponding View. The node type of the Newsletter is a plugin and the first action is the registerFormAction. The view of this action contains a form. The node type is stored in the page newsletter. So when I visit “http://dev.cms.neos.acme/newsletter.html” I will see my form. When the form is submitted it executes the registerSaveAction. That works like a charm, but the URL is not a speaking one and looks like this:


I already read this article and tried to create a speaking URL but it doesn’t work.

This is my configuration:

  name: 'Acme.Website newsletter route'
  uriPattern: '{node}/newsletter/{--acme_website-newsletter.newsletter}.{@format}'
    '@package': 'Neos.Neos'
    '@controller': 'Frontend\Node'
    '@format': 'html'
    '@action': 'show'
      '@package': 'Acme.Website'
      '@controller': 'Newsletter'
      '@action': 'registerForm'
      '@format': 'html'
      handler:    Neos\Neos\Routing\FrontendNodeRoutePartHandler
      objectType: '\Acme\Website\Domain\Model\Newsletter'
      uriPattern: 'register'
  appendExceedingArguments: TRUE

Did I miss something?

Furthermore I’m experiencing a strange behavior. I’m using the plugin MOC/NotFound. And every time, when I changed my Routes.yaml file, I’ll get an error that the URI could not be found:

Uri with path “http://dev.cms.neos.acme/404.html” could not be found.

After flushing the cache everything works fine again. But it’s a little bit annoying to flush the cache every time.

Edit:// I think Christian´’s answer on this topic is the solution for your problem, too.