GX-Bug #49673
geschlossenWenn das Land eines Kunden durch Aktualisierung der Länderliste nicht mehr existiert, scheitert für diese Kunden Bestellung und Editierung der Adresse
100%
Länder die von Kunden verwendet werden, können nicht mehr gelöscht werden
Beschreibung
EDIT 29.04.2019
- Aktiviere ein selten genutzes Land unter Shop Einstellungen > Land/Steuer > Länder
- Lege einen Kunden an aus eben diesem Land, logge Dich als dieser Kunde ein (2. Session oder privater Tab)
- Lösche das Land im Backend
- gehe zur Kunden-Session, aktualisiere den Tab oder navigiere zur Startseite
- erwartetes Ergebnis: steht zur Diskussion, jedenfalls sollte der Shop nicht kaputt sein
- tatsächliches Ergebnis: Shop ist kaputt, siehe Stacktrace
`FATAL ERROR(1): "Uncaught Exception: Country with the following ID could not be found: 11 in /var/www/uw/3.12.0.4_A/GXMainComponents/Services/Core/Country/CustomerCountryRepository.inc.php:55
Stack trace:
#0 /var/www/uw/3.12.0.4_A/GXMainComponents/Services/Core/Country/CountryService.inc.php(59): CustomerCountryRepository->getById(Object(IdType))
#1 /var/www/uw/3.12.0.4_A/GXMainComponents/Services/Core/Address/CustomerAddressReader.inc.php(198): CountryService->getCountryById(Object(IdType))
#2 /var/www/uw/3.12.0.4_A/GXMainComponents/Services/Core/Address/CustomerAddressReader.inc.php(96): CustomerAddressReader->_createCustomerAddressByArray(Array)
#3 /var/www/uw/3.12.0.4_A/GXMainComponents/Services/Core/Address/CustomerAddressRepository.inc.php(145): CustomerAddressReader->findById(Object(IdType))
#4 /var/www/uw/3.12.0.4_A/GXMainComponents/Services/Core/Customer/CustomerReader.inc.php(183): CustomerAddressRepository->getById(Object(IdType))
#5 /var/www/uw/3.12.0.4_A/GXMainComponents/Services/Core/Customer/CustomerReader.inc."
Information:
<br>
.gambio_error_box {<br>
font-size: 1em !important;<br>
color: black !important;<br>
margin: 0 !important;<br>
padding: 0 !important;<br>
display: block;<br>
}</p>
<pre> .gambio_error_box a.unfolder {
color: #000000 !important;
text-decoration: none !important;
outline: none !important;
font-family: monospace !important;
font-size: 12px !important;
}
.gambio_error_box a.unfolder:hover {
color: #0000FF !important;
text-decoration: underline !important;
}
.gambio_error_box.head.error {
background-color: #ff9797 !important;
}
.gambio_error_box.details.error {
background-color: #ffcaca !important;
}
.gambio_error_box.subdetails.error {
background-color: #ffdddd !important;
}
.gambio_error_box.head.warning {
background-color: #eecc88 !important;
}
.gambio_error_box.details.warning {
background-color: #ffeeaa !important;
}
.gambio_error_box.subdetails.warning {
background-color: #fff5cc !important;
}
.gambio_error_box.head.notice {
background-color: #9797ff !important;
}
.gambio_error_box.details.notice {
background-color: #cacaff !important;
}
.gambio_error_box.subdetails.notice {
background-color: #ddddff !important;
}
.gambio_error_box a {
color: blue !important;
}
</style><pre style="margin: 0; padding: 0"><span class="gambio_error_box head warning"><a href="#" class="unfolder" onclick="if(document.getElementById('error_92636').style.display == 'none'){document.getElementById('error_92636').style.display='block';}else{document.getElementById('error_92636').style.display='none';}return false;"><b>USER WARNING(512): </b>"No iso code found for country_id &quot;11&quot;"</a></span><span id="error_92636" class="gambio_error_box details warning" style="display: none;"></span></pre><br />
</pre>
<p><b>Fatal error</b>: Uncaught Exception: Country with the following ID could not be found: 11 in /var/www/uw/3.12.0.4_A/GXMainComponents/Services/Core/Country/CustomerCountryRepository.inc.php:55<br>
Stack trace:<br>
#0 /var/www/uw/3.12.0.4_A/GXMainComponents/Services/Core/Country/CountryService.inc.php(59): CustomerCountryRepository->getById(Object(IdType))<br>
#1 /var/www/uw/3.12.0.4_A/GXMainComponents/Services/Core/Address/CustomerAddressReader.inc.php(198): CountryService->getCountryById(Object(IdType))<br>
#2 /var/www/uw/3.12.0.4_A/GXMainComponents/Services/Core/Address/CustomerAddressReader.inc.php(96): CustomerAddressReader->_createCustomerAddressByArray(Array)<br>
#3 /var/www/uw/3.12.0.4_A/GXMainComponents/Services/Core/Address/CustomerAddressRepository.inc.php(145): CustomerAddressReader->findById(Object(IdType))<br>
#4 /var/www/uw/3.12.0.4_A/GXMainComponents/Services/Core/Customer/CustomerReader.inc.php(183): CustomerAddressRepository->getById(Object(IdType))<br>
#5 /var/www/uw/3.12.0.4_A/GXMainComponents/Services/Core/Customer/CustomerReader.inc. in <b>/var/www/uw/3.12.0.4_A/GXMainComponents/Services/Core/Country/CustomerCountryRepository.inc.php</b> on line <b>55</b><br />`</p>
Checkliste 0/0
Zugehörige Tickets
Von Moritz Bunjes vor mehr als 7 Jahren aktualisiert
- Tags wurde auf später, 3.9 gesetzt
- Status wurde von In Bearbeitung zu In Prüfung geändert
Bei gelöschtem Land krachts schon beim Login. Da müsste weiter ausgeholt werden. Vielleicht ein Formular zum vervollständigen der Adresse, wie es beim Single Sign On exisitiert.
Von Mirko Janssen vor mehr als 5 Jahren aktualisiert
- Zugewiesen an
Mirko Janssenwurde gelöscht
Nach dem Login ein Formular zum Ändern der Adresse einzubauen ist schlicht aktuell nicht möglich, ohne den Auth-Service grundlegend zu überarbeiten. Eine Bearbeitung ist ohne generelles Refactoring einfach nicht sinnvoll ...