I did some research on this. The guys on tomcat-users wrote that this behavior has been implemented because it is “required by the HTTP spec”. I don’t fully understand why. But it seems like most of the containers implement something similar.
So I guess the only option for you would be to either append the trailing slash to your virtual URL (the path() part of your join) or you simply rename the directory in your webapp to something else to prevent the name clash.
Do you play Magic?
Get TopDecked MTG, the #1 Magic App, built by players, for players. Free to use, forever.