In eclipse jdt, there's the open-type command, which opens a window and you start typing the name of a type. While typing, the list of candidates are shown in that window is filtered dynamically and well, you select one of the types in the list to open it.
I tried to find out how to do this in lsp-java, but not very satisfied:
M-.
nicely opens the thing under the cursorM-x xref-find-apropos
well, this seems like a candidate, but I most often getArithmetic overflow error
back. Had it succeed just once, and also, it doesn't offer completion/filtering etc.
I hope I just miss something.