バージョン選択

フォーラム

メニュー

オンライン状況

59 人のユーザが現在オンラインです。 (50 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 59
もっと...

サイト内検索

質問 > フロント機能 > 4.2.2でイベントリスナーを作成するとエラーが出る

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
monpura
投稿日時: 2023/12/5 11:41
対応状況: −−−
新米
登録日: 2012/7/19
居住地:
投稿: 5
4.2.2でイベントリスナーを作成するとエラーが出る
▼テンプレート
[EC-CUBE] EC-CUBE4.2.2
[レンタルサーバ] エックスサーバー
[OS] Linux sv14828.xserver.jp 5.4.0-164-generic #181-Ubuntu SMP Fri Sep 1 13:41:22 UTC 2023 x86_64

[PHP] PHP8.1.22
[データベース] MariaDB10.5
[ブラウザ] Chrome
[導入プラグインの有無] 無し
[カスタマイズの有無] 無し

[現象]
ECCUBE4系を初めて使いますので、勉強の為、以下のページにあります「hello worldを表示するイベントリスナーを作成する」という機能を試してみましたがエラーが出てしまいます。

https://doc4.ec-cube.net/customize_symfony

app/Customize/EventListener/HelloListener.phpにファイルをアップロードしまして、bin/console cache:clear --no-warmupでキャッシュを削除しました。
HelloListener.phpの中身は上記の参考サイトのまま変更しておりません。

以下が出力されるエラーになります。

Customize\EventListener\HelloListener::onResponse(): Argument #1 ($event) must be of type Symfony\Component\HttpKernel\Event\FilterResponseEvent, Symfony\Component\HttpKernel\Event\ResponseEvent given, called in /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/symfony/event-dispatcher/Debug/WrappedListener.php on line 117

ECCUBEはエックスサーバーの簡単インストール機能を使ってインストールを行っています。
CSS等でデザインは変更していますが、システム系はプラグインのインストール含め何も変更を行っていない状態です。
初心者の為、どういったエラーなのか検討がつきませんので、ご教示いただければ幸いです。

よろしくお願い申し上げます。
mcontact
投稿日時: 2023/12/5 14:50
対応状況: −−−
登録日: 2022/1/22
居住地:
投稿: 1507
Re: 4.2.2でイベントリスナーを作成するとエラーが出る
EC-CUBEログを確認できますか?
どのようなエラーが出ますでしょうか?
EC-CUBEのログであれば、var/log/prod/site-yyyy-mm-dd.log に「システムエラーが発生しました」や「ERROR」といった行がありましたらご提示ください。


----------------
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
EC-CUBEインテグレートパートナー【ゴールド】ランク
M&I Works
URL: https://miworks.biz/
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

monpura
投稿日時: 2023/12/5 15:18
対応状況: −−−
新米
登録日: 2012/7/19
居住地:
投稿: 5
Re: 4.2.2でイベントリスナーを作成するとエラーが出る
ご確認頂きましてありがとうございます。
以下がログとなります。
(●や▲で見づらくなってしまっておりますがご了承ください。)

お手数をおかけしますがよろしくお願い申し上げます。


[2023-12-05T15:10:08.060421+09:00] front.ERROR [80e53311] [96948e2] [N/A] [Eccube\Log\Logger:log:66] - システムエラーが発生しました。 ["Customize\\EventListener\\HelloListener::onResponse(): Argument #1 ($event) must be of type Symfony\\Component\\HttpKernel\\Event\\FilterResponseEvent, Symfony\\Component\\HttpKernel\\Event\\ResponseEvent given, called in /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/symfony/event-dispatcher/EventDispatcher.php on line 270","/home/●●●●●/▲▲▲▲▲.com/public_html/app/Customize/EventListener/HelloListener.php",11,"#0 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/symfony/event-dispatcher/EventDispatcher.php(270): Customize\\EventListener\\HelloListener->onResponse(Object(Symfony\\Component\\HttpKernel\\Event\\ResponseEvent), 'kernel.response', Object(Symfony\\Component\\EventDispatcher\\EventDispatcher))\n#1 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/symfony/event-dispatcher/EventDispatcher.php(230): Symfony\\Component\\EventDispatcher\\EventDispatcher::Symfony\\Component\\EventDispatcher\\{closure}(Object(Symfony\\Component\\HttpKernel\\Event\\ResponseEvent), 'kernel.response', Object(Symfony\\Component\\EventDispatcher\\EventDispatcher))\n#2 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/symfony/event-dispatcher/EventDispatcher.php(59): Symfony\\Component\\EventDispatcher\\EventDispatcher->callListeners(Array, 'kernel.response', Object(Symfony\\Component\\HttpKernel\\Event\\ResponseEvent))\n#3 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/symfony/http-kernel/HttpKernel.php(196): Symfony\\Component\\EventDispatcher\\EventDispatcher->dispatch(Object(Symfony\\Component\\HttpKernel\\Event\\ResponseEvent), 'kernel.response')\n#4 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/symfony/http-kernel/HttpKernel.php(184): Symfony\\Component\\HttpKernel\\HttpKernel->filterResponse(Object(Symfony\\Component\\HttpFoundation\\Response), Object(Symfony\\Component\\HttpFoundation\\Request), 2)\n#5 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/symfony/http-kernel/HttpKernel.php(75): Symfony\\Component\\HttpKernel\\HttpKernel->handleRaw(Object(Symfony\\Component\\HttpFoundation\\Request), 2)\n#6 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/symfony/http-kernel/HttpCache/SubRequestHandler.php(86): Symfony\\Component\\HttpKernel\\HttpKernel->handle(Object(Symfony\\Component\\HttpFoundation\\Request), 2, false)\n#7 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/symfony/http-kernel/Fragment/InlineFragmentRenderer.php(80): Symfony\\Component\\HttpKernel\\HttpCache\\SubRequestHandler::handle(Object(Symfony\\Component\\HttpKernel\\HttpKernel), Object(Symfony\\Component\\HttpFoundation\\Request), 2, false)\n#8 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/symfony/http-kernel/Fragment/FragmentHandler.php(85): Symfony\\Component\\HttpKernel\\Fragment\\InlineFragmentRenderer->render('/block/search_p...', Object(Symfony\\Component\\HttpFoundation\\Request), Array)\n#9 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/symfony/http-kernel/DependencyInjection/LazyLoadingFragmentHandler.php(49): Symfony\\Component\\HttpKernel\\Fragment\\FragmentHandler->render('/block/search_p...', 'inline', Array)\n#10 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/symfony/twig-bridge/Extension/HttpKernelRuntime.php(46): Symfony\\Component\\HttpKernel\\DependencyInjection\\LazyLoadingFragmentHandler->render('/block/search_p...', 'inline', Array)\n#11 /home/●●●●●/▲▲▲▲▲.com/public_html/var/cache/prod/twig/0d/0de3631f82d6afea44cfd92cb15107b6.php(42): Symfony\\Bridge\\Twig\\Extension\\HttpKernelRuntime->renderFragment('/block/search_p...')\n#12 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/twig/twig/src/Template.php(405): __TwigTemplate_6f8bceea13958297a33d582cb2db4998->doDisplay(Array, Array)\n#13 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/twig/twig/src/Template.php(378): Twig\\Template->displayWithErrorHandling(Array, Array)\n#14 /home/●●●●●/▲▲▲▲▲.com/public_html/src/Eccube/Twig/Template.php(41): Twig\\Template->display(Array, Array)\n#15 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/twig/twig/src/Template.php(390): Eccube\\Twig\\Template->display(Array)\n#16 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/twig/twig/src/TemplateWrapper.php(45): Twig\\Template->render(Array, Array)\n#17 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/twig/twig/src/Environment.php(318): Twig\\TemplateWrapper->render(Array)\n#18 /home/●●●●●/▲▲▲▲▲.com/public_html/src/Eccube/Twig/Extension/TwigIncludeExtension.php(42): Twig\\Environment->render('Block/header.tw...', Array)\n#19 /home/●●●●●/▲▲▲▲▲.com/public_html/var/cache/prod/twig/78/785b45138998473390738fa60876d1eb.php(55): Eccube\\Twig\\Extension\\TwigIncludeExtension->include_dispatch(Array, 'Block/header.tw...')\n#20 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/twig/twig/src/Template.php(405): __TwigTemplate_1d4ec861a27e494a6147aed1249ab96c->doDisplay(Array, Array)\n#21 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/twig/twig/src/Template.php(378): Twig\\Template->displayWithErrorHandling(Array, Array)\n#22 /home/●●●●●/▲▲▲▲▲.com/public_html/src/Eccube/Twig/Template.php(41): Twig\\Template->display(Array, Array)\n#23 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/twig/twig/src/Template.php(390): Eccube\\Twig\\Template->display(Array)\n#24 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/twig/twig/src/Extension/CoreExtension.php(1290): Twig\\Template->render(Array)\n#25 /home/●●●●●/▲▲▲▲▲.com/public_html/var/cache/prod/twig/bc/bc6f1a5829e545b781b7e0746767bdc6.php(210): twig_include(Object(Twig\\Environment), Array, 'block.twig', Array)\n#26 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/twig/twig/src/Template.php(405): __TwigTemplate_b890e8a249d773c308cd25f5e2458b9c->doDisplay(Array, Array)\n#27 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/twig/twig/src/Template.php(378): Twig\\Template->displayWithErrorHandling(Array, Array)\n#28 /home/●●●●●/▲▲▲▲▲.com/public_html/src/Eccube/Twig/Template.php(41): Twig\\Template->display(Array, Array)\n#29 /home/●●●●●/▲▲▲▲▲.com/public_html/var/cache/prod/twig/e1/e1ec19778c24eae49ccc2543cac47623.php(47): Eccube\\Twig\\Template->display(Array, Array)\n#30 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/twig/twig/src/Template.php(405): __TwigTemplate_1ed977434afab912ffb147ee481479be->doDisplay(Array, Array)\n#31 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/twig/twig/src/Template.php(378): Twig\\Template->displayWithErrorHandling(Array, Array)\n#32 /home/●●●●●/▲▲▲▲▲.com/public_html/src/Eccube/Twig/Template.php(41): Twig\\Template->display(Array, Array)\n#33 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/twig/twig/src/Template.php(390): Eccube\\Twig\\Template->display(Array)\n#34 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/twig/twig/src/TemplateWrapper.php(45): Twig\\Template->render(Array, Array)\n#35 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/twig/twig/src/Environment.php(318): Twig\\TemplateWrapper->render(Array)\n#36 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/sensio/framework-extra-bundle/src/EventListener/TemplateListener.php(115): Twig\\Environment->render('index.twig', Array)\n#37 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/symfony/event-dispatcher/EventDispatcher.php(270): Sensio\\Bundle\\FrameworkExtraBundle\\EventListener\\TemplateListener->onKernelView(Object(Symfony\\Component\\HttpKernel\\Event\\ViewEvent), 'kernel.view', Object(Symfony\\Component\\EventDispatcher\\EventDispatcher))\n#38 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/symfony/event-dispatcher/EventDispatcher.php(230): Symfony\\Component\\EventDispatcher\\EventDispatcher::Symfony\\Component\\EventDispatcher\\{closure}(Object(Symfony\\Component\\HttpKernel\\Event\\ViewEvent), 'kernel.view', Object(Symfony\\Component\\EventDispatcher\\EventDispatcher))\n#39 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/symfony/event-dispatcher/EventDispatcher.php(59): Symfony\\Component\\EventDispatcher\\EventDispatcher->callListeners(Array, 'kernel.view', Object(Symfony\\Component\\HttpKernel\\Event\\ViewEvent))\n#40 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/symfony/http-kernel/HttpKernel.php(168): Symfony\\Component\\EventDispatcher\\EventDispatcher->dispatch(Object(Symfony\\Component\\HttpKernel\\Event\\ViewEvent), 'kernel.view')\n#41 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/symfony/http-kernel/HttpKernel.php(75): Symfony\\Component\\HttpKernel\\HttpKernel->handleRaw(Object(Symfony\\Component\\HttpFoundation\\Request), 1)\n#42 /home/●●●●●/▲▲▲▲▲.com/public_html/vendor/symfony/http-kernel/Kernel.php(202): Symfony\\Component\\HttpKernel\\HttpKernel->handle(Object(Symfony\\Component\\HttpFoundation\\Request), 1, true)\n#43 /home/●●●●●/▲▲▲▲▲.com/public_html/index.php(83): Symfony\\Component\\HttpKernel\\Kernel->handle(Object(Symfony\\Component\\HttpFoundation\\Request))\n#44 {main}"] [GET, /, 255.255.255.46, NULL, Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36]
fukuoka
投稿日時: 2023/12/5 15:33
対応状況: −−−
半人前
登録日: 2022/8/9
居住地:
投稿: 19
Re: 4.2.2でイベントリスナーを作成するとエラーが出る
Symfonyのバージョン違いで引数の型が異なってエラーが出ているのではないでしょうか?

KernelEvents::RESPONSE

上記で本体を検索して使用しているところを参照してみてはいかがでしょうか?
もしかしたら解決できるかもしれません。
monpura
投稿日時: 2023/12/5 16:46
対応状況: −−−
新米
登録日: 2012/7/19
居住地:
投稿: 5
Re: 4.2.2でイベントリスナーを作成するとエラーが出る
ご教示ありがとうございます。

KernelEvents::RESPONSEが利用されているファイルを確認しました所、FilterResponseEventではなくResponseEventが使われていましたので、以下の2か所を変更したら表示されるようになりました。

【変更箇所1】
use Symfony\Component\HttpKernel\Event\FilterResponseEvent;
 ↓↓↓↓↓
use Symfony\Component\HttpKernel\Event\ResponseEvent;

【変更箇所2】
public function onResponse(FilterResponseEvent $event)
 ↓↓↓↓↓
public function onResponse(ResponseEvent $event)

対応方法がこれで良いのか今一つ自信が無いのですが、
ご教示いただきありがとうございました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は94,881名です
総投稿数は111,375件です

投稿数ランキング

1
seasoft
7369
2
468
3217
3
AMUAMU
2712
4
nanasess
2324
5
umebius
2085
6
yuh
1884
7
h_tanaka
1800
8
red
1574
9
mcontact
1507
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
804
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.