Actually, the precise functionality is that the first resolvable resource is the one that will work. So, for example, if the welcome list includes index.html and index.jsp but no index.html file exists, the index.jsp will be used.
To select a welcome page, you must first know whom you are welcoming. Since an initial unqualified URL request doesn't have much context, this can be challenging. If you make a welcome
JSP and attach some support logic to it, you can forward to another welcome page based on something like the requester's IP address or possibly a cookie value from a previous session.
Note that because the welcome page is executed by the container and not the webapp, ".xhtm' (JSF) welcome pages may not work, so in such cases, a forwarding HTML or JSP would be required even if everyone had the same welcome page.