Nette\InvalidStateException: Service TemplateFactory has not been set

mimacala
Člen | 113
+
0
-

Ahojte,
při nahození nette na server mi to hodilo chybu.

Nesetkal se s tím již někdo ?
Děkuji moc

error.log

[2023-06-22 15-48-19] PHP Warning: include(/data/web/virtuals/304203/virtual/www/domains/reklab.cz/vendor/composer/../nette/application/src/Bridges/ApplicationDI/LatteExtension.php): Failed to open stream: No such file or directory in /data/web/virtuals/304203/virtual/www/domains/reklab.cz/vendor/composer/ClassLoader.php:576  @  http://reklab.cz/www/
[2023-06-22 15-48-19] PHP Warning: include(): Failed opening '/data/web/virtuals/304203/virtual/www/domains/reklab.cz/vendor/composer/../nette/application/src/Bridges/ApplicationDI/LatteExtension.php' for inclusion (include_path='.:/data/web/virtuals/304203/virtual') in /data/web/virtuals/304203/virtual/www/domains/reklab.cz/vendor/composer/ClassLoader.php:576  @  http://reklab.cz/www/

exeption.log

[2023-06-22 15-48-19] PHP Warning: include(/data/web/virtuals/304203/virtual/www/domains/reklab.cz/vendor/composer/../nette/application/src/Bridges/ApplicationDI/LatteExtension.php): Failed to open stream: No such file or directory in /data/web/virtuals/304203/virtual/www/domains/reklab.cz/vendor/composer/ClassLoader.php:576  @  http://reklab.cz/www/
[2023-06-22 15-48-19] PHP Warning: include(): Failed opening '/data/web/virtuals/304203/virtual/www/domains/reklab.cz/vendor/composer/../nette/application/src/Bridges/ApplicationDI/LatteExtension.php' for inclusion (include_path='.:/data/web/virtuals/304203/virtual') in /data/web/virtuals/304203/virtual/www/domains/reklab.cz/vendor/composer/ClassLoader.php:576  @  http://reklab.cz/www/
nightfish
Člen | 474
+
+1
-

@mimacala V error logu se píše, že PHP nemůže otevřít soubor /data/web/virtuals/304203/virtual/www/domains/reklab.cz/vendor/nette/application/src/Bridges/ApplicationDI/LatteExtension.php, takže je otázka, jestli jsi ten soubor na server nahrál či nikoliv.

mimacala
Člen | 113
+
0
-

Aha děkuji, opraveno asi při uploadu se nepřenesl soubor, což je velmi zajímavé.

Nyní mi to erro neháže, ale ukazuje mi to stránku 404.
Může to s tím nějak souviset ?

mimacala
Člen | 113
+
0
-

Vyřešeno,
kdyby někdo měl podobný problém stačí nastavit na .htaccess

RewriteEngine on
RewriteRule ^(.*)$ /www/$1 [L,NE]
mimacala
Člen | 113
+
0
-

@nightfish prosím ještě.
Vše funguje, ale pokud zadám do formuláře pro přihlášení správné údaje a kliknu na přihlásit se, vyhodí to chybu 500.

userPresenter.php ve složce je, to jsem zkontroloval.

Děkuji z pomoc,

Nette\Application\UI\InvalidLinkException: Cannot load presenter 'user', class 'App\Presenters\userPresenter' was not found.

Editoval mimacala (22. 6. 2023 17:53)

Marek Bartoš
Nette Blogger | 1177
+
+1
-

Však jsi ukázal tu samou chybu, co ti to vyhodilo předtím.

mimacala
Člen | 113
+
0
-

Moje chyba omlouvám se, zadána správná chyba :)

Pepino
Člen | 249
+
+1
-

Má ten userpresenter správný namespace?

mimacala
Člen | 113
+
0
-

Tuto chybu to hlasi jen na hostingu, na lokalu to normalne funguje, takze name space jiste bude spravny.

Nebo je potreba neco upravit ? Napriklad .htaccess ?
Dekuji

Pepino
Člen | 249
+
+1
-

Cache si smazal?

mimacala
Člen | 113
+
0
-

Ano smazal

Marek Bartoš
Nette Blogger | 1177
+
+5
-

Vyvíjíš na Windows, co? Velký/malý písmena. Linux je case-sensitive, Windows ne.

mimacala
Člen | 113
+
0
-

Ale ne máš pravdu, to určitě bude ono.
Nojo nemám dobré zkušenosti s PHPStormem na linuxu :/

Každopádně existuje nějaká vychytávka jak tohle opravit hromadně ?
Když to budu dělat ručně, můžu někde něco přehlédnout :/
Nebo jinak jak zapnout u mě na localhostu case sensitive ?

Děkuji

Editoval mimacala (22. 6. 2023 21:17)

Marek Bartoš
Nette Blogger | 1177
+
+1
-

No, nesmíš vyvíjet na Windows :)
Když si nainstaluješ WSL a soubory webu máš ve složce patřící Linuxu (vytvoří si v systému vlastní síťový disk), tak to běží svižně, i s phpstormem běžícím na Windows.
Jen to hrozně žere ramku, hlavně Docker. Linux vidí nevyužitou ramku jako zbytečnou a neuvolňuje ji, takže je třeba WSL občas killnout.

V PHP můžeš chyby ve velikosti písmen hlídat automaticky coding standardem. Konkrétně ze slevomat/coding-standard by to bylo pravidlo TypeNameMatchesFileName (stačí bez konfigurace properties) https://github.com/…doc/files.md#…
Kompletní coding standard ready pro použítí / pro inspiraci here https://github.com/…standard-php
V Latte a v odkazech si to budeš muset pohlídat sám, pro ty žádné automatické řešení (zatím) není

Editoval Marek Bartoš (22. 6. 2023 21:56)