You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Running the code list below:
SeekBasedResourceCollection seekBasedResourceCollection = scopedPartnerOperations.getInvoices().byId("unbilled").by(BillingProvider.valueOf("ALL"), "USAGELINEITEMS", currencyCode, period, size).get();
Expected behavior
Correct response.
Actual behavior
Throw exception.
Diagnostic logs
Exception msg : Could not deserialize response. Detailed message: Cannot construct instance of java.util.LinkedHashMap (although at least one Creator exists): no String-argument constructor/factory method to deserialize from String value ('')\n at [Source: UNKNOWN; line: -1, column: -1] (through reference chain: com.microsoft.store.partnercenter.models.SeekBasedResourceCollection["items"]->java.util.ArrayList[0]->com.microsoft.store.partnercenter.models.invoices.DailyRatedUsageLineItem["tags"])
Environment
JAVA JDK 1.8.0_211
Partner-Center-Java 1.15.1
The text was updated successfully, but these errors were encountered:
It seems the parameter of [tags] in the [items] of response is an empty string, and the code is trying to deserialize the empty string into Map<String, String> so it throws the exception.
I can temporarily fix this issue by adding:
jsonConverter.configure(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT, true);
at com.microsoft.store.partnercenter.network.PartnerServiceClient.getJsonConverter() to ignor tit.
@Tony-Chou thank you for reporting this issue! Currently we are working on the next release, and I have just created a pull request with a hotfix for the issue. The hope is that we can push the next release by the end of this week.
Steps to reproduce
Running the code list below:
SeekBasedResourceCollection seekBasedResourceCollection = scopedPartnerOperations.getInvoices().byId("unbilled").by(BillingProvider.valueOf("ALL"), "USAGELINEITEMS", currencyCode, period, size).get();
Expected behavior
Correct response.
Actual behavior
Throw exception.
Diagnostic logs
Exception msg : Could not deserialize response. Detailed message: Cannot construct instance of
java.util.LinkedHashMap
(although at least one Creator exists): no String-argument constructor/factory method to deserialize from String value ('')\n at [Source: UNKNOWN; line: -1, column: -1] (through reference chain: com.microsoft.store.partnercenter.models.SeekBasedResourceCollection["items"]->java.util.ArrayList[0]->com.microsoft.store.partnercenter.models.invoices.DailyRatedUsageLineItem["tags"])Environment
JAVA JDK 1.8.0_211
Partner-Center-Java 1.15.1
The text was updated successfully, but these errors were encountered: