Closed Samson1964 closed 4 years ago
kannst Du parallel die Debugkonsole deines Browsers öffnen und "Netzwerk" einstellen - wenn es nicht funktioniert, benötigen wir die Aufrufe (URL) und was ggf. zurück kommt - ggf. auch mal mit Symfony-Toolbar testen (https://metamodels.readthedocs.io/de/latest/cookbook/symfony/mm-2-1-tips.html#symfony-toolbar) dann erscheint unten einige blinkende Links, wenn ein Ajax-Error kommt.
UNGÜLTIGE ANFRAGE:
Angefragte Adresse:https://www.schachbund.de/contao?do=metamodel_mm_bundeskongresse&act=create&id=&after=mm_bundeskongresse::23&rt=pE57WvoLrbfHWElxgfKR4ACwzQW8jWXZVq4cMYCjk9Y&ref=mh50PbU8 Anfragemethode:POST Externe Adresse:[2a00:1158:1000:408::4f]:443 Status-Code: 500 Version:HTTP/1.1 Referrer Policy:origin
Antwortkopfzeilen: Cache-Control max-age=0, must-revalidate, private Connection close Content-Type text/html; charset=UTF-8 Date Tue, 23 Jul 2019 18:39:03 GMT Referrer-Policy no-referrer-when-downgrade, strict-origin-when-cross-origin Server Apache/2.4.39 Transfer-Encoding chunked X-Content-Type-Options nosniff x-powered-by PHP/7.1.23 X-XSS-Protection 1; mode=block
Anfragekopfzeilen: Accept application/json Accept-Encoding gzip, deflate, br Accept-Language de,en-US;q=0.7,en;q=0.3 Connection keep-alive Content-Length 166 Content-type application/x-www-form-urlencoded; charset=utf-8 Cookie cto_lwid=da593730-b241-4378-bb…EhOQmR0QT09; BE_PAGE_OFFSET=0 Host www.schachbund.de Referer https://www.schachbund.de/ User-Agent Mozilla/5.0 (Windows NT 10.0; …) Gecko/20100101 Firefox/68.0 X-Request JSON X-Requested-With XMLHttpRequest
Suchbegriff:
do metamodel_mm_bundeskongresse
act create
id
after mm_bundeskongresse::23
rt pE57WvoLrbfHWElxgfKR4ACwzQW8jWXZVq4cMYCjk9Y
ref mh50PbU8
Formulardaten: action reloadFiletree name dateien value files/dsb/kongresse/protokolle/Kongress_1983-12_Marburg.pdf REQUEST_TOKEN pE57WvoLrbfHWElxgfKR4ACwzQW8jWXZVq4cMYCjk9Y
Suchbegriff: do metamodel_mm_bundeskongresse act edit id mm_bundeskongresse::24 after mm_bundeskongresse::23 rt pE57WvoLrbfHWElxgfKR4ACwzQW8jWXZVq4cMYCjk9Y ref hMpfMmon
Formulardaten
action reloadFiletree
name dateien
value files/dsb/kongresse/protokolle/Kongress_1983-12_Marburg.pdf
REQUEST_TOKEN pE57WvoLrbfHWElxgfKR4ACwzQW8jWXZVq4cMYCjk9Y
Suchbegriff: do metamodel_mm_bundeskongresse act create rt pE57WvoLrbfHWElxgfKR4ACwzQW8jWXZVq4cMYCjk9Y ref WXFThYDl
Formulardaten
action reloadFiletree
name dateien
value files/dsb/kongresse/protokolle/Kongress_1983-05_Saarbruecken.pdf
REQUEST_TOKEN pE57WvoLrbfHWElxgfKR4ACwzQW8jWXZVq4cMYCjk9Y
Auffallend bei der ungültigen Anfrage gegenüber der erfolgreichen (auch mit Datensatz neu): Es wird der after-Parameter gesetzt und eine leere id gesendet.
o.k. - damit sollte @baumannsven was anfangen können
Angefragte Adresse:https://www.schachbund.de/contao?do=metamodel_mm_bundeskongresse&act=create&id=&after=mm_bundeskongresse::23&rt=pE57WvoLrbfHWElxgfKR4ACwzQW8jWXZVq4cMYCjk9Y&ref=mh50PbU8
Anfragemethode:POST
Externe Adresse:[2a00:1158:1000:408::4f]:443
Status-Code: 500
Da sollte was im error log und in der symfony console stehen was da an Exception geschmissen wurde.
In der Symfony Debug Konsole kann man oben links auf "last 10" gehen, dann sieht man die letzten 10 Requests, einer davon ist der 500er (rot markiert). Bitte da drauf gehen und bei den Errors reinschauen was genau da an Fehler geworfen wurde und den Stacktrace bitte auch dazu.
Jetzt muß ich nur noch den Trick wissen, wie man diese Symfony-Toolbar angezeigt bekommt. Ich habe im app_dev-Modus noch nie eine Toolbar gesehen, wenn kein Fehler auftrat.
@Samson1964 was steht in dem geposteten Link? https://metamodels.readthedocs.io/de/latest/cookbook/symfony/mm-2-1-tips.html#symfony-toolbar
das Handbuch scheint Dir ein Graus zu sein :D
Dein Sarkasmus hilft hier nicht weiter. In dem Handbuch steht: "Mit dem Seitenaufruf per app_dev wird auch das Caching von Contao unterbunden und man muss den Cache nicht so häufig leeren - bedeutet aber auch, dass die Seite ohne app_dev ggf. „anders aussieht“ => Cache löschen. Zudem wird die Debug-Toolbar von Symfony im Browser eingeblendet." Ich habe app_dev.php in der URL, aber trotzdem keine Toolbar! Wahrscheinlich muß ich jetzt den dump-Code in dem einen Template eintragen. Also was unter https://metamodels.readthedocs.io/de/latest/cookbook/debug/templates.html#rst-cookbook-debug-templates steht. Keine Ahnung wie ich damit eine Ausgabe (der Toolbar) im BE bekomme...
hast Du die Zugangsdaten für app_dev erstellt? den dump-Aufruf muss du nur machen, wenn Du irgendwelche Variablen ansehen möchtest... die Toolbar sollte auch so kommen
Ich benutze den Debug-Modus in Contao 4 regelmäßig. Im Seitenquelltext habe ich nur die Kommentare für die Template-Namen, aber keinen Hinweis auf die Toolbar. Die sehe ich nur, wenn ein Fehler auftritt - und dann gleich das ganze Symfony-Debug-Zeug. Und das ist aktuell nicht der Fall.
P.S. In Contao 4.6 habe ich die Toolbar, in 4.7 nicht.
Ich habe einen Verdacht. Mal fe_page checken.... .... wars auch nicht. Ich habe in der 4.6er die Toolbar im Quelltext, in der 4.7er nicht.
AFAIR musst du dir den debug Modus in 4.7 per Contao Manager aktivieren (unter Tools glaub ich).
entweder die Datei .env mit in den Testcase umziehen oder über Manager anlegen oder per Konsole https://metamodels.readthedocs.io/de/latest/cookbook/symfony/mm-2-1-tips.html#symfony-toolbar
Bei "Mehrere bearbeiten" geht das Download-Element übrigens auch nicht.
Im CM ist der Debug-Modus aktiviert und es gibt die datei .env. Debug-Modus funktioniert auch wunderbar, wenn ich wissen will was für ein Fehler aufgetreten ist. Im fehlerfreien Modus wird nur der HTML-Code mit Kommentaren modifiziert, aber es wird keine Toolbar eingebaut.
Bei "Mehrere bearbeiten" geht das Download-Element übrigens auch nicht.
meinst Du das File-Attribut/File-Picker?
Der Attribut-Typ ist deutsch "Datei". Halt für das Download-Element.
Der Attribut-Typ ist deutsch "Datei". Halt für das Download-Element.
o.k. das File/Datei-Attribut... ist mit "Download" nicht gleich zu setzen - auch wenn Du ggf. das gerade für einen Download verwendest... das ist auch z.B. für die Bildauswahl für Einzelbilder/Galerie/Slider usw.
Das ist der 500er bei "Mehrere bearbeiten". Ich werde danach mal schauen, was beim Eingangsfall ausgespuckt wird.
ErrorException:
Warning: Invalid argument supplied for foreach()
at /vendor/contao-community-alliance/dc-general/src/Contao/View/Contao2BackendView/Subscriber/MultipleHandlerSubscriber.php:272
at ContaoCommunityAlliance\DcGeneral\Contao\View\Contao2BackendView\Subscriber\MultipleHandlerSubscriber->findModelIdByPropertyName(object(BuildWidgetEvent))
(/vendor/contao-community-alliance/dc-general/src/Contao/View/Contao2BackendView/Subscriber/MultipleHandlerSubscriber.php:205)
at ContaoCommunityAlliance\DcGeneral\Contao\View\Contao2BackendView\Subscriber\MultipleHandlerSubscriber->handleOriginalWidget(object(BuildWidgetEvent), 'dc-general.view.contao2backend.build-widget', object(EventDispatcher))
(/vendor/symfony/event-dispatcher/EventDispatcher.php:212)
at Symfony\Component\EventDispatcher\EventDispatcher->doDispatch(array(array(object(MultipleHandlerSubscriber), 'handleOriginalWidget'), array(object(NameAndDescriptionListener), 'buildWidget'), array(object(JumpToListener), 'buildWidget'), array(object(DisableMandatoryListener), 'handle'), array(object(DisableReadOnlyListener), 'handle'), array(object(LegendTitleListener), 'buildWidget'), array(object(FilterParamWidgetListener), 'handle'), array(object(BackendTableListener), 'fillExtraData'), array(object(BackendListener), 'getFiltersParams'), array(object(BackendEventsListener), 'getFiltersParams'), array(object(ColorPickerWizardListener), 'handleEvent'), array(object(WidgetBuilder), 'handleEvent')), 'dc-general.view.contao2backend.build-widget', object(BuildWidgetEvent))
(/vendor/symfony/event-dispatcher/EventDispatcher.php:44)
at Symfony\Component\EventDispatcher\EventDispatcher->dispatch('dc-general.view.contao2backend.build-widget', object(BuildWidgetEvent))
(/vendor/contao-community-alliance/dc-general/src/Contao/View/Contao2BackendView/ContaoWidgetManager.php:265)
at ContaoCommunityAlliance\DcGeneral\Contao\View\Contao2BackendView\ContaoWidgetManager->getWidget('dateien', object(PropertyValueBag))
(/vendor/contao-community-alliance/dc-general/src/Contao/View/Contao2BackendView/ContaoWidgetManager.php:403)
at ContaoCommunityAlliance\DcGeneral\Contao\View\Contao2BackendView\ContaoWidgetManager->processInput(object(PropertyValueBag))
(/vendor/contao-community-alliance/dc-general/src/Controller/Ajax3X.php:82)
at ContaoCommunityAlliance\DcGeneral\Controller\Ajax3X->getWidget('dateien', null, '2cab7b68-5216-11e5-8bef-50e549420dda')
(/vendor/contao-community-alliance/dc-general/src/Controller/Ajax3X.php:242)
at ContaoCommunityAlliance\DcGeneral\Controller\Ajax3X->reloadTree()
(/vendor/contao-community-alliance/dc-general/src/Controller/Ajax3X.php:260)
at ContaoCommunityAlliance\DcGeneral\Controller\Ajax3X->reloadFiletree()
(/vendor/contao-community-alliance/dc-general/src/Controller/Ajax.php:240)
at ContaoCommunityAlliance\DcGeneral\Controller\Ajax->executePostActions(object(DcCompat))
(/vendor/contao-community-alliance/dc-general/src/Contao/View/Contao2BackendView/BaseView.php:377)
at ContaoCommunityAlliance\DcGeneral\Contao\View\Contao2BackendView\BaseView->handleAjaxCall()
(/vendor/contao-community-alliance/dc-general/src/DC/General.php:141)
at ContaoCommunityAlliance\DcGeneral\DC\General->checkAjaxCall()
(/vendor/contao-community-alliance/dc-general/src/DC/General.php:104)
at ContaoCommunityAlliance\DcGeneral\DC\General->__construct('mm_bundeskongresse', array('tables' => array('mm_bundeskongresse'), 'callback' => 'MetaModels\\BackendIntegration\\Module'))
(/vendor/contao/core-bundle/src/Resources/contao/classes/Backend.php:399)
at Contao\Backend->getBackendModule('metamodel_mm_bundeskongresse', null)
(/vendor/contao/core-bundle/src/Resources/contao/controllers/BackendMain.php:169)
at Contao\BackendMain->run()
(/vendor/contao/core-bundle/src/Controller/BackendController.php:48)
at Contao\CoreBundle\Controller\BackendController->mainAction()
(/vendor/symfony/http-kernel/HttpKernel.php:151)
at Symfony\Component\HttpKernel\HttpKernel->handleRaw(object(Request), 1)
(/vendor/symfony/http-kernel/HttpKernel.php:68)
at Symfony\Component\HttpKernel\HttpKernel->handle(object(Request), 1, true)
(/vendor/symfony/http-kernel/Kernel.php:200)
at Symfony\Component\HttpKernel\Kernel->handle(object(Request))
(/web/app_dev.php:83)
Nochmal kurz:
Uncaught PHP Exception ErrorException: "Warning: Invalid argument supplied for foreach()" at /vendor/contao-community-alliance/dc-general/src/Contao/View/Contao2BackendView/Subscriber/MultipleHandlerSubscriber.php line 272
Okay, der Fehler im Eingangsthread ist ein anderer:
Uncaught PHP Exception ContaoCommunityAlliance\DcGeneral\Exception\DcGeneralInvalidArgumentException: "Can't instantiate model id. No data provider name given." at /vendor/contao-community-alliance/dc-general/src/Data/ModelId.php line 59
Stacktrace:
ContaoCommunityAlliance\DcGeneral\Exception\DcGeneralInvalidArgumentException:
Can't instantiate model id. No data provider name given.
at /vendor/contao-community-alliance/dc-general/src/Data/ModelId.php:59
at ContaoCommunityAlliance\DcGeneral\Data\ModelId->__construct(null, '')
(/vendor/contao-community-alliance/dc-general/src/Contao/View/Contao2BackendView/BaseView.php:366)
at ContaoCommunityAlliance\DcGeneral\Contao\View\Contao2BackendView\BaseView->handleAjaxCall()
(/vendor/contao-community-alliance/dc-general/src/DC/General.php:141)
at ContaoCommunityAlliance\DcGeneral\DC\General->checkAjaxCall()
(/vendor/contao-community-alliance/dc-general/src/DC/General.php:104)
at ContaoCommunityAlliance\DcGeneral\DC\General->__construct('mm_bundeskongresse', array('tables' => array('mm_bundeskongresse'), 'callback' => 'MetaModels\\BackendIntegration\\Module'))
(/vendor/contao/core-bundle/src/Resources/contao/classes/Backend.php:399)
at Contao\Backend->getBackendModule('metamodel_mm_bundeskongresse', null)
(/vendor/contao/core-bundle/src/Resources/contao/controllers/BackendMain.php:169)
at Contao\BackendMain->run()
(/vendor/contao/core-bundle/src/Controller/BackendController.php:48)
at Contao\CoreBundle\Controller\BackendController->mainAction()
(/vendor/symfony/http-kernel/HttpKernel.php:151)
at Symfony\Component\HttpKernel\HttpKernel->handleRaw(object(Request), 1)
(/vendor/symfony/http-kernel/HttpKernel.php:68)
at Symfony\Component\HttpKernel\HttpKernel->handle(object(Request), 1, true)
(/vendor/symfony/http-kernel/Kernel.php:200)
at Symfony\Component\HttpKernel\Kernel->handle(object(Request))
(/web/app_dev.php:83)
Bei "Mehrere bearbeiten" geht das Download-Element übrigens auch nicht.
siehe https://github.com/MetaModels/attribute_file/issues/68
@Samson1964 bitte ein downgrade auf Contao LTS (4.4.40) machen und testen - das Problem dürfte von Contao 4.7 kommen
offiziell wird von MM nur die LTS unterstützt und geprüft - siehe https://metamodels.readthedocs.io/de/latest/manual/install.html#installation-von-mm-2-1
@zonky2 Zusatz: da bald die 4.8 kommt, sollten wir es mit dieser auch nochmal gegen testen.
mit Contao 4.4.40 getestet - funktioniert i.O. daher nächster Check MM 2.2
mit Contao 4.9 (dev-master) getestet - funktioniert
Das Download-Attribut will manchmal ausgewählte Dateien nicht "festhalten". Man wählt Datei(en) aus, klickt auf Anwenden, aber es wird nichts übernommen. Erst wenn man den neuen Datensatz speichert klappt "Anwenden".
Nochmal die Schritte im Einzelnen: 1) Datensatz anlegen 2) Download auswählen und anwenden - klappt 3) Speichern und neu 4) Download auswählen und anwenden - klappt nicht 5) Datensatz speichern 6) Download auswählen und anwenden - klappt