Closed reense closed 3 years ago
Hi @reense, thank you for opening and reporting this issue. We have created an internal task for this issue and will try to come back to you as soon as possible. Thank you for your patience!
@Frank-Magmodules Thanks! 🚀
Hi @reense ,
Seems we can't reproduce this issue and/or this exception in our environment. Can you please share some more information about your cart setup and how to reproduce this using our contact form so we can take a look with you on this?
@Frank-Magmodules hmm, this is the url we call:
http://host.test/en/rest/en/V1/guest-carts/bx3BeSWUgo0cZHwsKtqxgYmeV4Qoml2l/totals?_=1619429419062
You can reproduce this by executing the following in your console:
require(['Magento_Checkout/js/action/get-totals'], function (totals) {
totals()
});
On the cart page of any particular shop. Can you try and reproduce it with these steps? 🙂
Hi @reense, we have just released the v1.7.0 version that has a fix for this issue. Thanks for the detailed reports and patience. We are closing this issue now but please feel free to reopen the issue if this still occurs.
@Frank-Magmodules thanks! This issue has been solved on our end. :)
Hello,
Currently, we're getting the following exception on the cart page when calling
getTotals()
from'Magento_Checkout/js/action/get-totals'
, to re-collect the totals:The shipping address is missing. Set the address and try again.
This exception is thrown in the shopping cart, and not in the checkout. The user has not yet had the change to fill any address information. This is the full stack trace:The exception is generated in the file
Model/Quote/Totals/AppendShippingMethods.php
, which calls$methods = $this->shippingMethodManagement->getList($quote->getId());
, which probably works fine for the checkout but does not seem to work for the cart, because theShippingMethodManagementInterface@getList
method will thrown an exception when the country id is not set on the quote.We wrote a preference for now to intercept the append method in
AppendShippingMethod
, and surround it with a try catch. However, that does not seem like a proper solution to me. Could you guys tell me if we're doing something wrong, or if the extension is kicking in on the wrong page.