commercetools / commercetools/commercetools-sdk-java-v2
Cart discount query all cart discounts using composable API not working
- Vorherrschende Sprache
- Java
- Sterne
- 47
- Forks
- 21
- Ø Merge
- 9 T. 13 Std.
- Gemergte PRs (30 T.)
- 4
Beschreibung
Hi, While querying cart discounts using composable API getting an exception below. can you pls advice.
```
var cartDiscountQuery = apiRoot.cartDiscounts().get();
List cartDiscounts = new ArrayList<>();
queryAll(cartDiscountQuery, (Consumer>) cartDiscounts::addAll).toCompletableFuture().join();
```
**Exception**
io.vrap.rmf.base.client.DeserializationException: Could not resolve subtype of [simple type, class com.commercetools.api.models.product.ProductReference]: missing type id property 'typeId' (for POJO property 'product')\n at [Source: REDACTED (`StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION` disabled); line: 1, column: 478] (through reference chain: com.commercetools.api.models.cart_discount.CartDiscountPagedQueryResponseImpl[\"results\"]->java.util.ArrayList[0]->com.commercetools.api.models.cart_discount.CartDiscountImpl[\"value\"]->com.commercetools.api.models.cart_discount.CartDiscountValueGiftLineItemImpl[\"product\"])","stack_trace":"c.f.j.d.e.InvalidTypeIdException: Could not resolve subtype of [simple type, class com.commercetools.api.models.product.ProductReference]: missing type id property 'typeId' (for POJO property 'product')\n at [Source: REDACTED (`StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION` disabled); line: 1, column: 478] (through reference chain: com.commercetools.api.models.cart_discount.CartDiscountPagedQueryResponseImpl[\"results\"]->java.util.ArrayList[0]->com.commercetools.api.models.cart_discount.CartDiscountImpl[\"value\"]->com.commercetools.api.models.cart_discount.CartDiscountValueGiftLineItemImpl[\"product\"])\r\n\tat c.f.j.d.e.InvalidTypeIdException.from(InvalidTypeIdException.java:43)\r\n\tat c.f.j.d.DeserializationContext.missingTypeIdException(DeserializationContext.java:2050)\r\n\tat c.f.j.d.DeserializationContext.handleMissingTypeId(DeserializationContext.java:1622)\r\n\tat c.f.j.d.j.i.TypeDeserializerBase._handleMissingTypeId(TypeDeserializerBase.java:307)\r\n\tat c.f.j.d.j.i.AsPropertyTypeDeserializer._deserializeTypedUsingDefaultImpl(AsPropertyTypeDeserializer.java:211)\r\n\tat c.f.j.d.j.i.AsPropertyTypeDeserializer.deserializeTypedFromObject(AsPropertyTypeDeserializer.java:145)\r\n\tat c.f.j.d.d.BeanDeserializerBase.deserializeWithType(BeanDeserializerBase.java:1380)\r\n\tat c.f.j.d.d.SettableBeanProperty.deserialize(SettableBeanProperty.java:542)\r\n\tat c.f.j.d.d.BeanDeserializer._deserializeWithErrorWrapping(BeanDeserializer.java:570)\r\n\tat c.f.j.d.d.BeanDeserializer._deserializeUsingPropertyBased(BeanDeserializer.java:440)\r\n\tat c.f.j.d.d.BeanDeserializerBase.deserializeFromObjectUsingNonDefault(BeanDeserializerBase.java:1493)\r\n\tat c.f.j.d.d.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:348)\r\n\tat c.f.j.d.d.BeanDeserializer._deserializeOther(BeanDeserializer.java:220)\r\n\tat c.f.j.d.d.BeanDeserializer.deserialize(BeanDeserializer.java:187)\r\n\tat c.f.j.d.j.i.AsPropertyTypeDeserializer._deserializeTypedForId(AsPropertyTypeDeserializer.java:170)\r\n\tat c.f.j.d.j.i.AsPropertyTypeDeserializer.deserializeTypedFromObject(AsPropertyTy...\r\n"}
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Rechercherichtung
Beginnen Sie mit der im Report gezeigten cartDiscounts().get()-Abfrage und dem queryAll-Aufruf, und reproduzieren Sie anschließend den Fehler mit einem CartDiscount, der ein Geschenkzeilenelement enthält. Untersuchen Sie die Produktdeserialisierung von CartDiscountValueGiftLineItem und die zurückgegebenen Produktreferenzdaten, insbesondere die fehlende typeId. Als abgeschlossen gilt die Aufgabe, wenn das Abfragen aller CartDiscounts ohne die gemeldete DeserializationException abgeschlossen wird.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- api
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 25/100