Support

Admin Tools

#31450 How to turn off alert InvalidArgumentException

Posted in ‘Admin Tools for Joomla! 4 & 5’
This is a public ticket

Everybody will be able to see its contents. Do not include usernames, passwords or any other sensitive information.

Environment Information

Joomla! version
n/a
PHP version
n/a
Admin Tools version
n/a

Latest post by on Monday, 22 July 2019 17:17 CDT

mhilliard
Hi, we have an older component (VMUIKit) used for emailing customers for a catalog we built, and over the past year have been receiving these notices from AdminTools about an InvalidArgumentException. Initially, we would get these messages a couple of times each day, but since the last updates to Joomla and AdminTools we're seeing the message 500+ times per day.

We plan to move the site to a different eCommerce platform in the next few months, so it doesn't make sense to update the component (and it does the basic job we need it to do right now), so the next best option is to stop AdminTools from finding/reporting this exception error until the site is changed. I cannot find a place in AdminTools to exclude the .../HTML/HTMLHelper.php or .../vmuikit_override/legacy.php files from the trace and report in the documentation.

Would you tell me where to turn this off? It's overwhelming my inbox.

Thanks much!
m.

- - - -

A PHP Exception occurred on your site. Here you can find the stack trace:

Exception Type: InvalidArgumentException
File: /home/gtwnusa/public_html/libraries/src/HTML/HTMLHelper.php
Line: 137
Message: JHtml::theme not found.

#0 /home/gtwnusa/public_html/plugins/system/vmuikit_override/legacy.php(743): Joomla\CMS\HTML\HTMLHelper::_('jhtml..theme')
#1 /home/gtwnusa/public_html/plugins/system/vmuikit_override/legacy.php(211): JViewLegacy->loadTemplate(NULL)
#2 /home/gtwnusa/public_html/plugins/system/rsfirewall/rsfirewall.php(428): JViewLegacy->display()
#3 /home/gtwnusa/public_html/plugins/system/rsfirewall/rsfirewall.php(1073): plgSystemRsfirewall->showForbiddenMessage(false)
#4 /home/gtwnusa/public_html/libraries/joomla/event/event.php(70): plgSystemRsfirewall->onAfterRoute()
#5 /home/gtwnusa/public_html/libraries/joomla/event/dispatcher.php(160): JEvent->update(Array)
#6 /home/gtwnusa/public_html/libraries/src/Application/BaseApplication.php(108): JEventDispatcher->trigger('onafterroute', Array)
#7 /home/gtwnusa/public_html/libraries/src/Application/CMSApplication.php(1122): Joomla\CMS\Application\BaseApplication->triggerEvent('onAfterRoute')
#8 /home/gtwnusa/public_html/libraries/src/Application/SiteApplication.php(796): Joomla\CMS\Application\CMSApplication->route()
#9 /home/gtwnusa/public_html/libraries/src/Application/SiteApplication.php(218): Joomla\CMS\Application\SiteApplication->route()
#10 /home/gtwnusa/public_html/libraries/src/Application/CMSApplication.php(196): Joomla\CMS\Application\SiteApplication->doExecute()
#11 /home/gtwnusa/public_html/index.php(49): Joomla\CMS\Application\CMSApplication->execute()
#12 {main}

... 

dlb
It doesn't look like an Admin Tools error. I see RS Firewall in the stack trace, but I don't think it is guilty either.

Let's start by going to the Joomla! Global Configuration settings and set Error Reporting to "none". I think that will fix it. That should be the setting for a production site anyway.


Dale L. Brackin
Support Specialist


us.gifEnglish: native


Please keep in mind my timezone and cultural differences when reading my replies. Thank you!


????
My time zone is EST (UTC -5) (click here to see my current time in Philadelphia, PA)

mhilliard
Thanks for your quick reply, Dale.

I changed the setting for Error Reporting to NONE a few days ago (saw that in another related thread from 2014) with no luck. When I searched my local development version of the site for the term "Unhandled exception - InvalidArgumentException" it turns up two results:
/libraries/fof30/Cli/Application.php
/plugins/system/admintools/feature/emailphpexceptions.php

It seems like this is a system exception from a combination of tools making the perfect storm. We are running RSFirewall (as we do in combination with AdminTools with about 30 other sites), and I'm confident it's not a direct conflict between them, or we'd be seeing more of this; our usual configuration is to keep PHP monitoring turned off in RSFirewall and have AdminTools handle that. But that VMUIKit component is out-of-date and our only site with this error — and as that language shows up in the AdminTools emailphpexceptions.php file, I'm inclined to say the report is coming from there.

As a test, I've unpublished RSFirewall and let AdminTools handle everything, but left VMUIKit alone. Over a two-hour period, the Exception error reporting has stopped leaving me convinced the combination of the three tools together is creating the problem. I'll let this go over the weekend and if it doesn't spit out another 500 messages I'll mark the ticket answered.

---
FYI: We keep the RSFirewall on our sites with AdminTools for their system and user reporting tools, and the ease of blacklisting from those reports. It'd be really convenient to have all of those reporting tools in a handy graphic interface for our clients in AdminTools... and it'd save us the additional licensing. Their UI is easier for our clients to understand and use, but obviously, it can result in conflicts in the backend.

nicholas
Akeeba Staff
Manager
Your assessment is wrong.

Admin Tools has a feature which catches any exception raised by anything running on your site and sends you an email about it. This feature's purpose is to let you know about coding issues in third party software which may affect the way your visitors experience your site, issues you had no idea about. By unpublishing the Admin Tools plugin these emails are not sent since the feature is part of Admin Tools which you have disabled. If you take out the batteries of the smoke alarm it doesn't mean there's no smoke anymore because it doesn't beep. It only means that you disabled the smoke alarm and the lack of alarm signal does NOT tell you anything about the existence of smoke.

The issue, according to your issue report, comes from RS!Firewall. The plgSystemRsfirewall::showForbiddenMessage() method tries to instantiate a Joomla View object. At this point something in the view tries to call an invalid JHTML callback which causes Joomla's core API to throw the InvalidArgumentException. This issue DOES NOT come from FOF since it has nothing to do with Joomla Views.

Finally, I'd like to point out that we do NOT support running two or more security extensions at the same time. Even though in this case there is no conflict whatsoever (the issue is coming from RS!Firewall) we will not provide any support at all for this kind of installations.

You have two options.

One, uninstall RS!Firewall and keep Admin Tools. We can keep supporting you with your use of Admin Tools.

Two, uninstall Admin Tools and keep RS!Firewall. The exception will still occur but it won't be reported to you. You will only experience it as a 500 Internal Server Error message when RS!Firewall tries to block a request. You should send the issue report, with the debug information you gave us in the ticket, to its developers so they can fix it. No further support will be provided in this case.

Nicholas K. Dionysopoulos

Lead Developer and Director

🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!

System Task
system
This ticket has been automatically closed. All tickets which have been inactive for a long time are automatically closed. If you believe that this ticket was closed in error, please contact us.

Support Information

Working hours: We are open Monday to Friday, 9am to 7pm Cyprus timezone (EET / EEST). Support is provided by the same developers writing the software, all of which live in Europe. You can still file tickets outside of our working hours, but we cannot respond to them until we're back at the office.

Support policy: We would like to kindly inform you that when using our support you have already agreed to the Support Policy which is part of our Terms of Service. Thank you for your understanding and for helping us help you!