Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[bug] ControllerWebHookcatalogproduct not found - Erro ao editar um produto #101

Open
garbinmarcelo opened this issue Nov 12, 2021 · 12 comments
Assignees
Labels
bug não confirmado O problema relatado não foi confirmado.

Comments

@garbinmarcelo
Copy link

Em que versão do OpenCart Brasil o erro ocorre?
3.0.3.3 (Brasil 1.7.0)

Que parte da loja é afetada pelo erro?
Quando qualquer produto é editado.

Faça um resumo do problema ocasionado pelo erro:
Ao acessar o Catálogo => Produtos => Editar => Salvar o erro ocorre.
Erro:
Error: Class 'ControllerWebHookcatalogproduct' not found no arquivo /home/cliente/storage/modification/system/engine/actionhook.php na linha 71

Responda as perguntas abaixo sobre o seu ambiente de trabalho:

  • Você está em um computador local ou hospedagem web?
    Hospedagem / Produção.

  • Se estiver em uma hospedagem web, qual hospedagem?
    cPanel / AWS

  • Qual o sistema operacional utilizado?
    CentOS

  • Qual o servidor web utilizado?
    Apache2

  • Qual o servidor de banco dados utilizado?
    MariaDB 10.3.31

  • Qual a versão do PHP?
    PHP 7.3.32

  • Se aplicável, qual o(s) navegador(es) utilizado(s) [por exemplo: chrome 75]:
    Versão 95.0.4638.69 (Versão oficial) 64 bits

@v5mvidal v5mvidal changed the title ControllerWebHookcatalogproduct not found - Erro ao editar um produto [bug] ControllerWebHookcatalogproduct not found - Erro ao editar um produto Nov 12, 2021
@v5mvidal v5mvidal self-assigned this Nov 12, 2021
@v5mvidal v5mvidal added the em análise Analisando o problema relatado. label Nov 12, 2021
@v5mvidal v5mvidal added this to the OpenCart 3.0.x Brasil 1.x milestone Nov 12, 2021
@v5mvidal
Copy link
Contributor

Você habilitou algum webhook na loja?

Se não desabilite ele e verifique se o problema será resolvido.

Se não, confirme que em seu OpenCart existe a pasta "webhook" no raiz dos arquivos da loja, pois ela é necessária para que tudo funcione corretamente.

@garbinmarcelo
Copy link
Author

Você habilitou algum webhook na loja?
Se não desabilite ele e verifique se o problema será resolvido.

A principio não que eu saiba hehe, posso verificar isso além dessa tela?
image

Se não, confirme que em seu OpenCart existe a pasta "webhook" no raiz dos arquivos da loja, pois ela é necessária para que tudo funcione corretamente.

A pasta webhook está na raiz e o caminho configurado no config.php também.
image

image

@v5mvidal
Copy link
Contributor

Aparentemente está tudo configurado corretamente.

Faça um backup completo da loja, e execute a atualização automática da versão 1.7.0 novamente através do menu Configurações > Manutenção > Atualização, assim todos os arquivos do core serão atualizados e caso algum deles esteja corrompido, ele será restaurado e o problema deverá ser resolvido.

@garbinmarcelo
Copy link
Author

image
Fiz aqui a principio acredito que deu certo ou teria outra forma de verificar isso?

O erro ainda persiste, muito estranho.,. não sei se pode ser alguma extensão dando conflito... alguma outra ideia para poder testar aqui?

image

Esse é o conteúdo do /storage/modification/system/engine/actionhook.php que está no caminho referido ao erro:

<?php
/**
 * @package     OpenCart
 * @author      Daniel Kerr
 * @copyright   Copyright (c) 2005 - 2017, OpenCart, Ltd. (https://www.opencart.com/)
 * @license     https://opensource.org/licenses/GPL-3.0
 * @link        https://www.opencart.com
 */

/**
 * Action class
 */
class ActionHook {
	private $id;
	private $route;
	private $method = 'index';

    /**
     * Constructor
     *
     * @param    string $route
     */
	public function __construct($route) {
		$this->id = $route;

		$parts = explode('/', preg_replace('/[^a-zA-Z0-9_\/]/', '', (string)$route));

		// Break apart the route
		while ($parts) {
			$file = DIR_WEBHOOK . 'controller/' . implode('/', $parts) . '.php';

			if (is_file($file)) {
				$this->route = implode('/', $parts);

				break;
			} else {
				$this->method = array_pop($parts);
			}
		}
	}

    /**
     *
     *
     * @return    string
     *
     */
	public function getId() {
		return $this->id;
	}

    /**
     *
     *
     * @param    object $registry
     * @param    array $args
     */
	public function execute($registry, array $args = array()) {
		// Stop any magical methods being called
		if (substr($this->method, 0, 2) == '__') {
			return new \Exception('Erro: Métodos mágicos não são permitidos!');
		}

		$file = DIR_WEBHOOK . 'controller/' . $this->route . '.php';
		$class = 'ControllerWebHook' . preg_replace('/[^a-zA-Z0-9]/', '', $this->route);

		// Initialize the class
		if (is_file($file)) {
			include_once(modification($file));

			$controller = new $class($registry);
		} else {
			return new \Exception('Erro: Não foi possível chamar ' . $this->route . '/' . $this->method . '!');
		}

		$reflection = new ReflectionClass($class);

		if ($reflection->hasMethod($this->method) && $reflection->getMethod($this->method)->getNumberOfRequiredParameters() <= count($args)) {
			return call_user_func_array(array($controller, $this->method), $args);
		} else {
			return new \Exception('Erro: Não foi possível chamar ' . $this->route . '/' . $this->method . '!');
		}
	}
}

@v5mvidal
Copy link
Contributor

Seria possível você realizar uma instalação nova do OpenCart Brasil em uma pasta separada na mesma hospedagem/servidor, para que possa verificar se mesmo com uma instalação nova o problema ocorre?

Pois gostaria de analisar se é algo relacionado a estrutura de hospedagem.

@garbinmarcelo
Copy link
Author

Eu já havia tentado copiar o projeto todo pra minha máquina e utilizando o docker subi os serviços com praticamente a mesma configuração, mas o mesmo erro ocorreu.

Vou tentar fazer uma instalação limpa aqui para verificar melhor isso.

@garbinmarcelo
Copy link
Author

Uma dúvida que surgiu, é possível retornar para a versão anterior ou após atualizado não?

@v5mvidal
Copy link
Contributor

Aguardo seu retorno sobre a instalação limpa.

Atualmente não é possível fazer downgrade da versão.

@garbinmarcelo
Copy link
Author

Olá, fiz a instalação limpa, instalei extensão por extensão e fiz as respectivas configurações, deu um trabalho, porém parece estar funcionando corretamente agora. Talvez possa ter dado algum problema com os arquivos na atualização, bem estranho.

A princípio o problema foi resolvido com a instalação limpa.

Caso queira, essa issue pode ser fechada de momento.

@garbinmarcelo
Copy link
Author

Nova atualização sobre o caso.

O problema pode estar relacionado a alteração do nome da pasta /admin

Geralmente troco o nome admin para painel por questão de segurança e acabei de fazer aqui e testei o editar produto e o erro ocorreu. Então bem provável que esteja relacionado a isso.

Você teria alguma sugestão para contornar isso? no caso alterar o nome da pasta/acesso do admin para outro sem que haja conflitos?

@v5mvidal v5mvidal added bug não confirmado O problema relatado não foi confirmado. and removed em análise Analisando o problema relatado. labels Nov 15, 2021
@v5mvidal
Copy link
Contributor

Agradeço pelo feedback e pela disposição em realizar os testes, pois problemas sempre ocorrem uma vez que nada é 100% e estamos constantemente atualizando a plataforma.

Estamos sempre atentos para resolver problemas relatados, por isso a colaboração de quem relata o problema é sempre crucial para a confirmação e solução.

Bons negócios!

@v5mvidal
Copy link
Contributor

Nova atualização sobre o caso.

O problema pode estar relacionado a alteração do nome da pasta /admin

Geralmente troco o nome admin para painel por questão de segurança e acabei de fazer aqui e testei o editar produto e o erro ocorreu. Então bem provável que esteja relacionado a isso.

Você teria alguma sugestão para contornar isso? no caso alterar o nome da pasta/acesso do admin para outro sem que haja conflitos?

Agradeço pelo feedback, vou analisar o problema com calma sobre a alteração do nome da pasta admin, pois geralmente alterar o nome da pasta ocasiona problema no funcionamento de modificações.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug não confirmado O problema relatado não foi confirmado.
Development

No branches or pull requests

2 participants