# Pluginmanager wirft Fehler, Plugin selbst läuft einwandfrei

**URL:** <https://forum.shopware.com/t/pluginmanager-wirft-fehler-plugin-selbst-lauft-einwandfrei/47699>\
**Category:** Programmierung\
**Created:** [21. August 2017 um 10:49 UTC](https://forum.shopware.com/t/pluginmanager-wirft-fehler-plugin-selbst-lauft-einwandfrei/47699 "2017-08-21T10:49:18Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Argee](https://avatars.discourse-cdn.com/v4/letter/a/e9c0ed/32.png) [@Argee](https://forum.shopware.com/u/Argee)\
**Post date:** [21. August 2017 um 10:49 UTC](https://forum.shopware.com/t/pluginmanager-wirft-fehler-plugin-selbst-lauft-einwandfrei/47699/1 "2017-08-21T10:49:18Z")

</div>

Hallo,

ich arbeite gerade an einem Plugin, um Preise aus dem Shop nach Ebay zu übertragen. Dazu nutze ich diese SDK:&nbsp;[https://github.com/davidtsadler/ebay-sdk-php](https://github.com/davidtsadler/ebay-sdk-php "diese SDK")

Folgendes Problem: Der Plugin-Manager verschluckt sich an der guzzlehttp dependency der SDK… Wenn ich den Plugin-Manager aufrufe, bekomme ich diese&nbsp;Fehlermeldung:

> SyntaxError: Unexpected token \<  
> &nbsp; &nbsp; at [http://localhost/shopware5/engine/Library/ExtJs/ext-all.js?201708081547:21:5361](http://localhost/shopware5/engine/Library/ExtJs/ext-all.js?201708081547:21:5361)  
> &nbsp; &nbsp; at Object.Ext.globalEval ([http://localhost/shopware5/engine/Library/ExtJs/ext-all.js?201708081547:21:5369](http://localhost/shopware5/engine/Library/ExtJs/ext-all.js?201708081547:21:5369))  
> &nbsp; &nbsp; at Object.success ([http://localhost/shopware5/backend/base?file=bootstrap&loggedIn=1502977820:530:5](http://localhost/shopware5/backend/base?file=bootstrap&loggedIn=1502977820:530:5))  
> &nbsp; &nbsp; at Object.callback ([http://localhost/shopware5/engine/Library/ExtJs/ext-all.js?201708081547:21:67496](http://localhost/shopware5/engine/Library/ExtJs/ext-all.js?201708081547:21:67496))  
> &nbsp; &nbsp; at i.onComplete ([http://localhost/shopware5/engine/Library/ExtJs/ext-all.js?201708081547:21:422670](http://localhost/shopware5/engine/Library/ExtJs/ext-all.js?201708081547:21:422670))  
> &nbsp; &nbsp; at i.onStateChange ([http://localhost/shopware5/engine/Library/ExtJs/ext-all.js?201708081547:21:422314](http://localhost/shopware5/engine/Library/ExtJs/ext-all.js?201708081547:21:422314))  
> &nbsp; &nbsp; at XMLHttpRequest. ([http://localhost/shopware5/engine/Library/ExtJs/ext-all.js?201708081547:21:17406](http://localhost/shopware5/engine/Library/ExtJs/ext-all.js?201708081547:21:17406))

In der Console bekomme ich außerdem diesen Fehler:

```
{
    "sourceClass": "Ext.JSON",
    "sourceMethod": "decode",
    "msg": "You're trying to decode an invalid JSON String: Fatal error: Unsupported operand types in \custom\plugins\RgEbaySync\vendor\guzzlehttp\guzzle\src\Client.php on line 236",
    "message": "You're trying to decode an invalid JSON String: Fatal error: Unsupported operand types in \custom\plugins\RgEbaySync\vendor\guzzlehttp\guzzle\src\Client.php on line 236"
}

```

Das ist die Code Zeile 236 der Teufelsdatei:

```
$result = $options + $defaults;

```

Sie liegt in dieser Funktion:

```
    private function prepareDefaults($options)
    {
        $defaults = $this->config;

        if (!empty($defaults['headers'])) {
            // Default headers are only added if they are not present.
            $defaults['_conditional'] = $defaults['headers'];
            unset($defaults['headers']);
        }

        // Special handling for headers is required as they are added as
        // conditional headers and as headers passed to a request ctor.
        if (array_key_exists('headers', $options)) {
            // Allows default headers to be unset.
            if ($options['headers'] === null) {
                $defaults['_conditional'] = null;
                unset($options['headers']);
            } elseif (!is_array($options['headers'])) {
                throw new \InvalidArgumentException('headers must be an array');
            }
        }

        // Shallow merge defaults underneath options.
        $result = $options + $defaults;

        // Remove null values.
        foreach ($result as $k => $v) {
            if ($v === null) {
                unset($result[$k]);
            }
        }

        return $result;
    }

```

Der eigentliche Spaß an der Sache ist, dass das Plugin einwandfrei funktioniert. Ich habe einfach das Laden der SDK auskommentiert, den Pluginmanager ohne Probleme gestartet, das Plugin aktiviert und danach im Code die SDK wieder „einkommentiert“. Das Plugin läuft wie ne eins, aber der Pluginmanager hat dann Bauchschmerzen…

Hatte vielleicht schon jemand das Problem und eine Lösung gefunden? Oder hat jemand eine Idee, was falsch läuft? Ich verstehe auch überhaupt nicht, warum er in dieser Zeile überhaupt iwas mit JSON-Dekodierung machen will…

Vielen Dank und schönen Gruß 🙂

---

<div class="post-metadata">

**Author:** ![arnebecker](https://avatars.discourse-cdn.com/v4/letter/a/3bc359/32.png) [@arnebecker](https://forum.shopware.com/u/arnebecker)\
**Post date:** [21. August 2017 um 11:07 UTC](https://forum.shopware.com/t/pluginmanager-wirft-fehler-plugin-selbst-lauft-einwandfrei/47699/2 "2017-08-21T11:07:19Z")

</div>

Ich glaube hier vermischen sich zwei Meldungen: ExtJS erwartet wahrscheinlich von einem XHR Request eine JSON Antwort. Bekommt aber als Antwort:

> Fatal error: Unsupported operand types in \custom\plugins\RgEbaySync\vendor\guzzlehttp\guzzle\src\Client.php on line 236

Die wiederum kommt weil es in dem Script einen Fehler gab.&nbsp;

---

<div class="post-metadata">

**Author:** ![Argee](https://avatars.discourse-cdn.com/v4/letter/a/e9c0ed/32.png) [@Argee](https://forum.shopware.com/u/Argee)\
**Post date:** [21. August 2017 um 11:51 UTC](https://forum.shopware.com/t/pluginmanager-wirft-fehler-plugin-selbst-lauft-einwandfrei/47699/3 "2017-08-21T11:51:19Z")

</div>

Okay, interessanter Gedanke… das würde bedeuten, dass das Problem bei dem guzzle-script ist und nicht bei der Ebay SDK selber, oder?

---

<div class="post-metadata">

**Author:** ![arnebecker](https://avatars.discourse-cdn.com/v4/letter/a/3bc359/32.png) [@arnebecker](https://forum.shopware.com/u/arnebecker)\
**Post date:** [21. August 2017 um 12:34 UTC](https://forum.shopware.com/t/pluginmanager-wirft-fehler-plugin-selbst-lauft-einwandfrei/47699/4 "2017-08-21T12:34:49Z")

</div>

Vermutlich. Guck doch mal in den Chrome Dev Tools auf dem Network Reiter welche XHR Requests so laufen und ob es da einen Request gibt, der zu deiner Meldung passt.

---

<div class="post-metadata">

**Author:** ![Argee](https://avatars.discourse-cdn.com/v4/letter/a/e9c0ed/32.png) [@Argee](https://forum.shopware.com/u/Argee)\
**Post date:** [21. August 2017 um 13:29 UTC](https://forum.shopware.com/t/pluginmanager-wirft-fehler-plugin-selbst-lauft-einwandfrei/47699/5 "2017-08-21T13:29:21Z")

</div>

Hmm… nein, die Fehlermeldung in der Konsole erscheint, während die XHR Requests noch laufen 😕 danke dir trotzdem 🙂
