ACSD-62965: sono state corrette le correzioni per la mancanza del messaggio LocalizedException nella risposta di posizionamento dell'ordine di GraphQL

La patch ACSD-62965 risolve il problema che impediva l'inclusione del messaggio LocalizedException nella risposta di GraphQL durante l'inserimento dell'ordine. Questa patch è disponibile con Quality Patches Tool (QPT) 1.1.57. L’ID della patch è ACSD-62965. Il problema è pianificato per essere risolto in Adobe Commerce 2.4.8.

Prodotti e versioni interessati

La patch è stata creata per la versione di Adobe Commerce:

Adobe Commerce (tutti i metodi di implementazione) 2.4.7

Compatibile con le versioni di Adobe Commerce:

Adobe Commerce (tutti i metodi di implementazione) 2.4.7 - 2.4.7-p3

NOTE
La patch potrebbe diventare applicabile ad altre versioni con le nuove versioni di Quality Patches Tool. Per verificare se la patch è compatibile con la versione di Adobe Commerce in uso, aggiornare il pacchetto magento/quality-patches alla versione più recente e verificare la compatibilità nella pagina Quality Patches Tool: Cerca patch. Utilizza l’ID patch come parola chiave di ricerca per individuare la patch.

Problema

La risposta di GraphQL per il posizionamento dell'ordine non include un messaggio LocalizedException, con dettagli di errore insufficienti per il debug.

Passaggi da riprodurre:

  1. Installa un'istanza Adobe Commerce pulita.

  2. Aggiungi un prodotto al carrello e procedi al passaggio di inserimento dell’ordine.

  3. Aggiungi LocalizedException a Magento\Framework\Exception\LocalizedException in app/code/Magento/QuoteGraphQl/Model/Resolver/PlaceOrder.php.

  4. Inserire l'eccezione dopo la riga seguente:

    code language-none
    $cart = $this->getCartForCheckout->execute($maskedCartId, $userId, $storeId);
    

    Aggiungi l'eccezione:

    code language-none
    throw new LocalizedException(new Phrase("Test LocalizedException"));
    
  5. Esegui la richiesta GraphQL dell'ordine cliente:

    code language-none
    mutation {
    placeOrder(input: {cart_id: "cart_id"}) {
        order {
        order_number
        }
    }
    }
    
  6. Osserva la risposta:

    1. La risposta non include il messaggio LocalizedException.

    2. Esempio di risposta errata:

      code language-none
      {
      "data": {
          "placeOrder": {
          "order": null
          }
      }
      }
      

Risultati previsti:

Se si verifica un LocalizedException, il messaggio di eccezione deve essere incluso nella risposta GraphQL di posizionamento dell'ordine per migliorare la gestione degli errori.

Risultati effettivi:

Se si verifica un LocalizedException, il messaggio di eccezione non viene incluso nella risposta GraphQL di posizionamento dell'ordine.

Applicare la patch

Per applicare singole patch, utilizzare i collegamenti seguenti, a seconda del metodo di distribuzione utilizzato:

Lettura correlata

Per ulteriori informazioni su Quality Patches Tool, vedere:

recommendation-more-help
c2d96e17-5179-455c-ad3a-e1697bb4e8c3