Que fait ce fichier di.xml incorrect?
Question
Je suis en train de mettre en œuvre une passerelle de paiement personnalisée.
Pour pouvoir le configurer, j'ai créé un configmentProvider de cette façon:
<?php
/**
* Copyright © 2015 Magento. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Desytec\Transbank\Model;
use Magento\Checkout\Model\ConfigProviderInterface;
use Magento\Framework\Escaper;
use Magento\Payment\Helper\Data as PaymentHelper;
class WebpayConfigProvider implements ConfigProviderInterface
{
/**
* @var string[]
*/
protected $methodCode = Webpay::CODE;
/**
* @var Webpay
*/
protected $method;
/**
* @var Escaper
*/
protected $escaper;
/**
* @param PaymentHelper $paymentHelper
* @param Escaper $escaper
*/
public function __construct(
PaymentHelper $paymentHelper,
Escaper $escaper
) {
$this->escaper = $escaper;
$this->method = $paymentHelper->getMethodInstance($this->methodCode);
}
/**
* {@inheritdoc}
*/
public function getConfig()
{
return $this->method->isAvailable() ? [
'payment' => [
'webpay' => [
'image' => $this->getImage(),
'instructions' => $this->getInstructions(),
],
],
] : [];
}
/**
* Get mailing address from config
*
* @return string
*/
protected function getImage()
{
return nl2br($this->escaper->escapeHtml($this->method->getImage()));
}
/**
* Get mailing address from config
*
* @return string
*/
protected function getInstructions()
{
return nl2br($this->escaper->escapeHtml($this->method->getInstructions()));
}
}
et ce fichier di.xml dans etc / frontend:
<?xml version="1.0"?>
<!--
/**
* Copyright © 2015 Magento. All rights reserved.
* See COPYING.txt for license details.
*/
-->
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
<type name="Magento\Checkout\Model\CompositeConfigProvider">
<arguments>
<argument name="configProviders" xsi:type="array">
<item name="transbank_webpay_config_provider" xsi:type="object">Desytec\Transbank\Model\WebpayConfigProvider</item>
</argument>
</arguments>
</type>
</config>
Lorsque je télécharge un fichier di.xml sur le serveur et essayez de charger la commande, une erreur 500 se produit.Si je le supprime, la page est affichée correctement.
Que voyez-vous mal dans ce fichier?
merci Jaime
La solution
Il n'est pas nécessaire d'être le di.xml lui-même contenant l'erreur.
Une réponse 500 signifie principalement que vous devriez examiner votre erreur WebServers.Log.Il devrait y avoir une exception ou une erreur de contenant un message d'erreur de proprementer
Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange