Azure-sdk-for-java: [BUG] com.microsoft.azure:azure-spring-boot 2.3.5 UserGroups class expects nextLink as 'odata.nextLink' when API returns '@odata.nextLink'

Created on 3 Nov 2020  路  9Comments  路  Source: Azure/azure-sdk-for-java

Describe the bug
The method getGroups of the class AzureADGraphClient deserializes the ouput of the MS Graph API call to get the user memberships (for instance, https://graph.microsoft.com/v1.0/me/memberOf).
However, the API currently returns the next page link as the property @odata.nextLink as specified here but the class UserGroups expects as odata.nextLink.

Exception or Stack Trace
No exceptions are thrown. However the next page is not fetched.

To Reproduce

Code Snippet
Class com.microsoft.azure.spring.autoconfigure.aad.UserGroups

    @JsonCreator
    public UserGroups(
            @JsonProperty("odata.nextLink") String odataNextLink,
            @JsonProperty("value") List<UserGroup> value) {
        this.odataNextLink = odataNextLink;
        this.value = value;
    }

Expected behavior
The class UserGroups should set the value of the JsonProperty that extracts the odataNextLink to @odata.nextLink or make it configurable.

Class com.microsoft.azure.spring.autoconfigure.aad.UserGroups

    @JsonCreator
    public UserGroups(
            @JsonProperty("@odata.nextLink") String odataNextLink,
            @JsonProperty("value") List<UserGroup> value) {
        this.odataNextLink = odataNextLink;
        this.value = value;
    }

Screenshots
If applicable, add screenshots to help explain your problem.

Setup (please complete the following information):

  • OS: [e.g. iOS]: Windows Enterprise
  • IDE : [e.g. IntelliJ]: IntelliJ IDEA Ultimate 2020.2
  • Version of the Library used: com.microsoft.azure:azure-spring-boot:2.3.5

Additional context
Add any other context about the problem here.

Information Checklist
Kindly make sure that you have added all the following information above and checkoff the required fields otherwise we will treat the issuer as an incomplete report

  • [X] Bug Description Added
  • [X] Repro Steps Added
  • [X] Setup information Added
Client azure-spring azure-spring-aad customer-reported question

All 9 comments

@jialindai could you please assist in routing this azure-spring issues?

Thanks for the reporting @wellingtonsampaio , we have create a PR for this bug, please expect our next release for updates.

Thanks for the reporting @wellingtonsampaio , we have create a PR for this bug, please expect our next release for updates.

Thanks @yiliuTo. When is that supposed to be released?

Hi @wellingtonsampaio , we will try to make it released in Mid-November.

Thanks @yiliuTo. Is there already a nightly build or beta version I could use in development to test?

Thanks @yiliuTo. Is there already a nightly build or beta version I could use in development to test?

Yes, for the nightly build version, you can refer to this link for details: https://github.com/Azure/azure-sdk-for-java/blob/master/CONTRIBUTING.md#dev-feed
Given this PR hasn't been apporved yet, I will talk to our colleages to review it as soon as possible.

@yiliuTo I tested version 3.0.0-alpha.20201111.0 and it looks ok. I am now able to fetch all the pages and the authorization process works. When is this version going to be released? Thanks.

Hi @wellingtonsampaio we are performing a beta release now, so it will be published to Maven soon, perhaps 2 days later.

Hi @wellingtonsampaio , the bug has been fixed and now you can use our newly released 3.0.0 of azure-spring-boot-starter-active-directory.

Was this page helpful?
0 / 5 - 0 ratings