¿Falla la búsqueda JNDI con Jetty para la agrupación de conexiones JDBC con MySQL?

Estoy usando Jetty 9.2 (incrustado) con la API estándar del conector MySQL y estoy muy confundido por cómo se supone que debe configurarse. Actualmente, tengo esto en miweb.xml archivo:

<webapp ...

    <resource-ref>
        <description>JDBC Data Source</description>
        <res-ref-name>jdbc/DataSource</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
    </resource-ref>
</webapp>

... y esto en mi jetty-env.xml:

<Configure class="org.eclipse.jetty.webapp.WebAppContext">

   <New id="DatabaseConnector" class="org.eclipse.jetty.plus.jndi.Resource">
        <Arg></Arg>
        <Arg>jdbc/DataSource</Arg>
        <Arg>
            <New class="com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource">
                <Set name="Url">jdbc:mysql://localhost:3306/DBName</Set>
                <Set name="User">user</Set>
                <Set name="Password">pass</Set>
            </New>
        </Arg>
    </New>

 </Configure>

... y este código para inicializar:

Context envCtx = (Context) new InitialContext().lookup("java:comp/env");
DataSource datasource = (DataSource) envCtx.lookup("jdbc/DataSource");

Cuando intento encender el servidor, aparece el errorjavax.naming.NameNotFoundException; remaining name 'jdbc/DataSource'. He intentado muchas variaciones diferentes de las cadenas en la inicialización del código, como eliminar ellookup llamar alInitialContext objeto, pero sigo recibiendo variaciones del mismo error con un diferentename valor;

Ambos archivos xml se encuentran en mi/WAR/WEB-INF directorio. He visto un montón de preguntas y tutoriales anteriores, blogs, etc., pero no llego a ninguna parte.

Respuestas a la pregunta(1)

Su respuesta a la pregunta