GX-Bug #68368
geschlossenLeere URL in Paketdienst führt zu Fehler in Hermes HSI | Missing URL in parcel service leads to errors in Hermes HSI
0%
Hermes HSI: Konfiguration kann jetzt auch aufgerufen werden, wenn bei einem Paketdienst kein URL angebeben ist
Beschreibung
Leere URL in Paketdienst führt zu Fehler in Hermes HSI
Wenn unter Shop Einstellungen -> Paketdienste ein Paketdienst ohne URL angelegt wird, führt dies bei Aufruf des Moduls Hermes HSI zu einer Fehlermeldung:
Uncaught InvalidArgumentException: NonEmptyStringType: Invalid argument value given (expected non-empty string got string): in src/GXEngine/Shared/Types/NonEmptyStringType.inc.php:38
Stack trace:
#0 src/GXMainComponents/Services/Core/ParcelService/Entities/ParcelServiceDescription.inc.php(63): NonEmptyStringType->__construct()
#1 src/GXMainComponents/Services/Core/ParcelService/Repositories/ParcelServiceMapper.inc.php(184): ParcelServiceDescription::create()
#2 src/GXMainComponents/Services/Core/ParcelService/Repositories/ParcelServiceMapper.inc.php(160): ParcelServiceMapper->createParcelService()
#3 src/GXMainComponents/Services/Core/ParcelService/Repositories/ParcelServiceMapper.inc.php(51): ParcelServiceMapper->createParcelServiceCollection()
Testen:
- Shop Einstellungen -> Paketdienste aufrufen
- Leeren URL bei einem Paketdienst eintragen
- Hermes HSI unter Module -> Modul-Center installieren
- HSI-Konfiguration aufrufen
- erwartetes Verhalten: hier sollte nun die Modul-Konfiguration (siehe Screenshot) angezeigt werden
- tatsächliches Verhalten: Ausgabe der oben genannten Fehlermeldung
Der Punkt Shop Einstellungen -> Paketdienste erlaubt das Anlegen von Paketdiensten ohne Angabe einer URL und das ist auch korrekt so, da es hierfür Anwendungsfälle in der Praxis gibt. Der in der Fehlermeldung genannte Service verlangt hier aber eine Eingabe und reagiert mit einer Fehlermeldung, wenn das Feld leer ist. Der Service muss hier daher auch leere Angaben akzeptieren.
===================================================================================================
If a parcel service without a URL is created under Shop Settings -> Parcel Services, this leads to an error message when calling the Hermes HSI module:
Uncaught InvalidArgumentException: NonEmptyStringType: Invalid argument value given (expected non-empty string got string): in src/GXEngine/Shared/Types/NonEmptyStringType.inc.php:38
Stack trace:
#0 src/GXMainComponents/Services/Core/ParcelService/Entities/ParcelServiceDescription.inc.php(63): NonEmptyStringType->__construct()
#1 src/GXMainComponents/Services/Core/ParcelService/Repositories/ParcelServiceMapper.inc.php(184): ParcelServiceDescription::create()
#2 src/GXMainComponents/Services/Core/ParcelService/Repositories/ParcelServiceMapper.inc.php(160): ParcelServiceMapper->createParcelService()
#3 src/GXMainComponents/Services/Core/ParcelService/Repositories/ParcelServiceMapper.inc.php(51): ParcelServiceMapper->createParcelServiceCollection()
Testing:
- Go to shop settings -> parcel services
- Enter an empty URL for a parcel service
- Install Hermes HSI under Modules -> Module Center
- Call up HSI configuration
- Expected behavior: the module configuration (see screenshot) should now be displayed here
- Actual behavior: Output of the above error message
The point Shop Settings -> Parcel Services allows the creation of parcel services without specifying a URL and that is correct, as there are use cases for this in practice. The service named in the error message requires an entry here and reacts with an error message if the field is empty. The service must therefore also accept missing information here.
Dateien
Zugehörige Tickets