?
avatar chetanmadaan
chetanmadaan
31 May 2020

Steps to reproduce the issue

Install Joomla 4 Beta 1.

Expected result

Should display the login screen!

Actual result

Displays error:
Fatal error: Trait 'Joomla\Plugin\System\Webauthn\PluginTraits\AjaxHandler' not found in H:\home\www\j4\plugins\system\webauthn\webauthn.php on line 38
image

System information (as much as possible)

PHP Version 7.3.12
Windows 7 - 64 Bit
Maria DB 10.4.10
Apache 2.4.41

Additional comments

Renaming the H:\home\www\j4\plugins\system\webauthn\ folder then displayed another name space error in the mod_menu.php file.
I was running Joomla 4 Alpha 12 on this very install and it was working fine.

avatar chetanmadaan chetanmadaan - open - 31 May 2020
avatar joomla-cms-bot joomla-cms-bot - change - 31 May 2020
Labels Added: ?
avatar joomla-cms-bot joomla-cms-bot - labeled - 31 May 2020
avatar nikosdion
nikosdion - comment - 31 May 2020

You seem to be missing some files. The error message means that the file plugins/system/webauthn/src/PluginTraits/AjaxHandler.php is missing. Can you please check if the file is there?

avatar richard67
richard67 - comment - 31 May 2020

Have you really made a new installation with Jomla 4 Beta 1 into an empty folder? Or have you updated a previous 4 Alpha 12 using the Joomla Update component? In this case you should know that this is not supported. Updates within the 4 release are supported beginning with Beta 1, i.e. you will be later able to update a Beta to a later version, but it is not supported to update a J4 nightly from before the beta or a J4 Alpha. You should use a new installation instead for testing Beta 1, or update a 3.10 nightly to 4 Beta 1.

avatar chetanmadaan
chetanmadaan - comment - 31 May 2020

@nikosdion not missing files.
https://www.youtube.com/watch?v=Uv3QVXBOW6g

@richard67
I did started the installation in a new folder (I didn't update from alpha 12 but this was a brand new install).

Thank you for your help but I think the problem is something else perhaps? Maybe windows or something?

avatar nikosdion
nikosdion - comment - 1 Jun 2020

Seeing your video it looks like the entire autoloader doesn't work for you. I can tell you that it's not an obvious bug in Joomla 4, PHP or Windows. I spent Sunday running Joomla 4 on Windows 10, a mix of IIS, Apache and NginX servers and PHP versions 7.2, 7.3 and 7.4 working on a different PR and triaging other issues reported for code I had contributed to J4. I had no problem with either of my two test sites (an upgraded from alpha and a brand new install).

Let's start from the beginning. Can you please trash that site and start over in case there are autoloader files missing? Which server software are you using and which version of PHP?

avatar jwaisner jwaisner - change - 1 Jun 2020
Status New Information Required
Build staging 4.0-b1
avatar chetanmadaan
chetanmadaan - comment - 1 Jun 2020

I'll trash and reinstall.

I am using wampserver and tried with PHP 7.2, 7.3 and 7.4.

Will post back here.

avatar chetanmadaan
chetanmadaan - comment - 1 Jun 2020

Clean reinstall into a new folder/db same thing.

avatar chetanmadaan
chetanmadaan - comment - 1 Jun 2020

It is something related to my setup as installing the same zip file online on a linux/cpanel install works.

I might try setting up a new wamp server setup locally to see if that alleviates the problem but will have to backup/move a few Joomla installs. Do you know any good backup software for Joomla @nikosdion ?

avatar richard67
richard67 - comment - 1 Jun 2020

Hmm maybe really a Windows specific problem? I have here Linux only.

avatar jwaisner
jwaisner - comment - 1 Jun 2020

I tested on Windows 10 and had no issues with the install process or post install.

avatar TobsBobs
TobsBobs - comment - 1 Jun 2020

No such issues on my Windows 10.

System Information

php: Windows NT TOBSER 10.0 build 18363 (Windows 10) AMD64
dbserver: mysql
dbversion: 10.4.11-MariaDB
dbcollation: utf8mb4_general_ci
dbconnectioncollation: utf8mb4_general_ci
dbconnectionencryption:
dbconnencryptsupported: false
phpversion: 7.4.6
server: Apache/2.4.43 (Win64) OpenSSL/1.1.1g PHP/7.4.6
sapi_name: apache2handler
version: Joomla! 4.0.0-beta1 Beta [ Mañana ] 30-May-2020 18:32 GMT
useragent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:76.0) Gecko/20100101 Firefox/76.0

avatar chetanmadaan
chetanmadaan - comment - 1 Jun 2020

Just for context, I am on windows 7 64 bit PHP 7.2, 7.3 and 7.4 with Maria DB.

I used to have Joomla 4 Alpha 12 installed a few days back and that worked well.

avatar nikosdion
nikosdion - comment - 2 Jun 2020

My reply about backup software might be a bit biased here, but I believe you should use the free of charge Akeeba Backup Core to take backups of your local Joomla installs. They say it’s really good.

Hint: look up my GitHub profile ?

avatar nikosdion
nikosdion - comment - 2 Jun 2020

Joking aside, I really don't think it's a Windows 10 problem per se. The observable problem is that the autoloader fails to find, or at least load, some class files.

One potential reason is permissions which are a thing on Windows, not just *nix systems. However, I cannot imagine a plausible scenario where extracting a ZIP would allow the autoloader to work enough for Joomla to spin up the application and end up displaying a formatted error page but not load extensions' classes.

Another reason would be OPcache. If I recall correctly, XAMPP is continuing its 15+ year tradition of delivering broken by default PHP configurations by using the defaults without paying any attention to what they are. OPcache requires the following configuration to be changed in php.ini on Windows:

opcache.use_cwd=1
opcache.dups_fix=1

This addresses the situation where similarly named files or classes would end up preventing one another from autoloading because OPcache thought they are already cached. In most cases where you only run one site at a time you might not notice a problem. Once you start using two or more sites on the same server with the same classnames but different absolute file paths OR otherwise have a copy of a library on the same site with the same classnames and different absolute file paths THEN all hell breaks loose if you don't use at the very least the dups_fix flag.

You can read a bit more about optimizing PHP on Windows in my blog post from August 2018.

avatar chetanmadaan
chetanmadaan - comment - 2 Jun 2020

My reply about backup software might be a bit biased here, but I believe you should use the free of charge Akeeba Backup Core to take backups of your local Joomla installs. They say it’s really good.

Hint: look up my GitHub profile

I am just having fun with you Nicholas, I have had akeeba Pro since forever and had used JoomlaPack back in the day! Thanks for the Amazing Software you've put together!

avatar chetanmadaan
chetanmadaan - comment - 2 Jun 2020

enabling the opcache options doesn't work either.
opcache.use_cwd=1 opcache.dups_fix=1

I am going for a reinstall of wampserver and will post back my findings!

avatar N6REJ
N6REJ - comment - 2 Jun 2020

instead of fighting with wamp use neard. http://neard.io you'll never go back. I have zero problem in windows 10 x64 pro

avatar chetanmadaan
chetanmadaan - comment - 2 Jun 2020

instead of fighting with wamp use neard. http://neard.io you'll never go back. I have zero problem in windows 10 x64 pro

Just checked the website... You get too much. Node.js, git bash and all the stuff you'd have to install anyways.

Thanks for the recommendation.

avatar N6REJ
N6REJ - comment - 2 Jun 2020

lol never heard someone complain about not having to install things. To each their own.

avatar richard67
richard67 - comment - 4 Jun 2020

@chetanmadaan You wrote a few comments above you have PHP 7.2, 7.3 and 7.4? if you: Have you checked that your library include path in your php.ini is right according to the php version? I once had forgotten to change that path in my php.ini after I had switched to a new PHP version while the old one was present, and this caused strange things, too.

avatar chetanmadaan
chetanmadaan - comment - 5 Jun 2020

Hi @richard67 I had not had checked that but I assume the problem lies there only.

avatar chetanmadaan
chetanmadaan - comment - 5 Jun 2020

Thanks everyone for your help. I installed http://neard.io/ (basically a fresh setup of PHP, Mysql and Apache) and it's working fine now. So, the problem wasn't with Joomla but my setup for that matter.

avatar chetanmadaan chetanmadaan - close - 5 Jun 2020
avatar chetanmadaan chetanmadaan - change - 5 Jun 2020
Status Information Required Closed
Closed_Date 0000-00-00 00:00:00 2020-06-05 15:54:38
Closed_By chetanmadaan

Add a Comment

Login with GitHub to post a comment