Basically, the problem is that: when a wildcard is in the path, FileSystem object splits the whole path into components, and then get matches/status of each component. However, Har file root path doesn't start with "/" so it can't process any prefix.
For example, the .har file is created at /user/me/foo.har.
When user does "hadoop dfs -ls har:///test/foo.har/* ", FileSystem object passes each component path to HarFileSystem: /, /test, /test/foo.har, /test/foo.har/*. HarFileSystem doesn't recognize any prefix pathes "/" or "/test" since they are not in har file system.
The fix is to redirect the request to its source file system(e.g., HDFS) for the prefix paths.
Uploaded a patch for branch 2.3.