getHeaderFields()
returns header fields that were sent in the HTTP response, not in the HTTP request. You never sent these headers: Content-Language, Transfer-Encoding, etc. and yet you get them in getHeaderFields(). This is because the server sent these headers.
The custom header fields set in the request will be available to http://localhost:8080/share/page
/page can access these header fields using:
request.getHeader("SsoUserHeader"); //admin
request.getHeader("mysso"); //hi
request.getHeader("Authorization");