# Eigenen Plugin Controller registrieren (404 Fehler)

**URL:** <https://forum.shopware.com/t/eigenen-plugin-controller-registrieren-404-fehler/60652>\
**Category:** Programmierung\
**Created:** [25. Juli 2019 um 04:46 UTC](https://forum.shopware.com/t/eigenen-plugin-controller-registrieren-404-fehler/60652 "2019-07-25T04:46:36Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![schwag](https://avatars.discourse-cdn.com/v4/letter/s/c89c15/32.png) [@schwag](https://forum.shopware.com/u/schwag)\
**Post date:** [25. Juli 2019 um 04:46 UTC](https://forum.shopware.com/t/eigenen-plugin-controller-registrieren-404-fehler/60652/1 "2019-07-25T04:46:36Z")

</div>

Hallo liebe&nbsp; ![Shopware](https://forum.shopware.com/plugins/CKEditor/plugins/smiley/images/shopware.png "Shopware")&nbsp;Community,

ich habe ein Plugin mit einem eigenen Controller geschrieben, der bei mir in mehreren Live Umgebungen sowie Test-Installationen (SW 5.4, 5.5, 5.5.10) problemlos aufgerufen werden kann. Bei der Prüfung des Plugins durch das Shopware-Team kann der Controller jedoch nicht aufgerufen werden. Deshalb wollte ich einmal fragen ob ich hier irgendwo einen entscheidenen Fehler gemacht habe.

```
 Pfad: /MeinPlugin/Controllers/Frontend/MeinController.php

 Klasse: class Shopware\_Controllers\_Frontend\_MeinController extends Enlight\_Controller\_Action

 Methode: public function meineMethodeAction()

```

Im Template habe ich bisher den Link&nbsp;

```
 /frontend/MeinController/meinemethode

```

zum Aufrufen des Controllers verwendet. In allen SW Versionen hat dieser Link auch funktioniert. Wenn ich nun stattdessen

```
 {url module=frontend controller=MeinController action=meineMethode}

```

im Template verwende, wird mir der Controller jedoch als&nbsp;

```
 /MeinController/meineMethode

```

angezeigt.

Nun zur eigentlichen Frage&nbsp; ![Wearing-Sunglasses](https://forum.shopware.com/plugins/CKEditor/plugins/smiley/images/wearing-sunglasses.png "Wearing-Sunglasses")

Muss ich (im neuen Plugin System) den Controller irgendwo explizit registrieren, oder lag es tatsächlich einfach nur daran dass der Link auf den Controller nicht über die {url} erstellt wurde? Das Plugin wurde ursprünglich für das alte Plugin System geschrieben und im Shopware Buch (Seite 141ff)&nbsp;musste für den Controller ja ein Event registriert werden.

&nbsp;

---

<div class="post-metadata">

**Author:** ![schwag](https://avatars.discourse-cdn.com/v4/letter/s/c89c15/32.png) [@schwag](https://forum.shopware.com/u/schwag)\
**Post date:** [21. August 2019 um 09:59 UTC](https://forum.shopware.com/t/eigenen-plugin-controller-registrieren-404-fehler/60652/2 "2019-08-21T09:59:23Z")

</div>

Ich wäre über jede Hilfe sehr dankbar!&nbsp; ![Crying](https://forum.shopware.com/plugins/CKEditor/plugins/smiley/images/crying.png "Crying")

---

<div class="post-metadata">

**Author:** ![R4M](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/r4m/32/9983_2.png) [@R4M](https://forum.shopware.com/u/R4M)\
**Post date:** [21. August 2019 um 10:24 UTC](https://forum.shopware.com/t/eigenen-plugin-controller-registrieren-404-fehler/60652/3 "2019-08-21T10:24:13Z")

</div>

Im Template einen Controller aufrufen? Sieht nach Widgets aus.

Unabhängig davon wird bei { **url** module=frontend controller=MeinController action=meineMethode} auch nur die **URL** ausgegeben. Ansonsten würde es&nbsp;{ **action** module=frontend controller=MeinController action=meineMethode} sein. Aber im Moment sehe ich bei dir nicht durch.

---

<div class="post-metadata">

**Author:** ![schwag](https://avatars.discourse-cdn.com/v4/letter/s/c89c15/32.png) [@schwag](https://forum.shopware.com/u/schwag)\
**Post date:** [21. August 2019 um 10:43 UTC](https://forum.shopware.com/t/eigenen-plugin-controller-registrieren-404-fehler/60652/4 "2019-08-21T10:43:11Z")

</div>

Hallo @R4M, vielen Dank für deine Rückmeldung!

Ich habe einen Controller, der eine PDF Datei für den Download erzeugt. Der Controller wird auf der Artikel Detailseite verlinkt. Bisher habe ich den Link auf den Controller einfach fest auf `/frontend/meinController/meineMethode/` gesetzt. In meiner lokalen Entwicklungsumgebung startet nach einen Klick auf diesen Link auch wie gewünscht der Download der PDF Datei.

Ich habe das Plugin daraufhin im Shopware Store hochgeladen, bekomme jedoch in der manuellen Prüfung die Rückmeldung, dass der Link einen 404 Fehler verursacht. Deshalb meine Frage ob ich (1) den Controller explizit registrieren muss und (2) wie ich im Template korrekt auf den Controller verlinke.

---

<div class="post-metadata">

**Author:** ![Moritz\_Naczenski](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/moritz_naczenski/32/7792_2.png) [@Moritz\_Naczenski](https://forum.shopware.com/u/Moritz_Naczenski)\
**Post date:** [21. August 2019 um 10:52 UTC](https://forum.shopware.com/t/eigenen-plugin-controller-registrieren-404-fehler/60652/5 "2019-08-21T10:52:44Z")

</div>

Ich denke eher, dass dein Link sowas wie Virtuelle URLs und den Basepath nicht supportet. Die Testmaschinen sind meißt so aufgebaut [www.meinedomain.de/sw5-test/](http://www.meinedomain.de/sw5-test/)

Vielleicht ist das schon das Problem. /frontend brauchst du eigentlich auch garnicht in der URL.
