This is to answer the second question as references for all.
The problem is due to the header is set to "gzip" format when calling GET :urn/metadata/:guid. If it is not "gzip", all work well. While with other ways such as Postman, the header with gzip can also work.
In the past, when clients used gzip header, actually it doesn't trigger a gzip encoding. So everything is fine. After the release recently, the content returns the content in gzip if gzip is specified, while the SDK doesn't handle it correctly. Postman unzips the gzip to json automatically, so it looks working.
So, the fix could be adding one line in the ApiClient.java at line 115: client.addFilter(new GZIPContentEncodingFilter(false));
I also forked the source github repository in my space with the fixes on the two problems. a pull request is commit to the main repo. that is to allow the response of API call can handle gzip content and unzip it.
https://github.com/xiaodongliang/forge-api-java-client
We apologize for the two issues that have affected some projects using SDK.