Jersey 2.2を利用したアプリケーションをJetty 9.3 (9.3.7.v20160115)上で動かそうとしています。

データベース接続プールをアプリケーションからJNDI経由で取得できるようにするため、下記の内容を$JETTY_HOME/webapps/app.xmlに設置しました。(同じディレクトリにapp.warを設置しています。)

<Configure class="org.eclipse.jetty.webapp.WebAppContext">
    <Set name="contextPath">/</Set>
    <Set name="war"><SystemProperty name="jetty.base"/>/webapps/app.war</Set>

    <New id="datasource" class="org.eclipse.jetty.plus.jndi.Resource">
        <Arg></Arg>
        <Arg>jdbc/mysql</Arg>
        <Arg>
            <New class="org.apache.commons.dbcp2.BasicDataSource">
                <Set name="driverClassName">com.mysql.jdbc.Driver</Set>
                <Set name="url">jdbc:mysql://localhost:3306/testdb</Set>
                <Set name="username">testuser</Set>
                <Set name="password">testpw</Set>
            </New>
        </Arg>
    </New>
</Configure>

しかし、この状態でJettyを起動すると、app.xml内で指定したBasicDataSourceが見つからずにClassNotFoundExceptionが発生してしまいます。

2016-02-14 11:41:10.260:WARN:oejd.DeploymentManager:main: Unable to reach node goal: started
java.lang.ClassNotFoundException: org.apache.commons.dbcp2.BasicDataSource
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
        ...
        at org.eclipse.jetty.start.Main.main(Main.java:75)

アプリケーションのpom.xmlには下記のようにcommons-dbcp2を依存先に含めています。

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-dbcp2</artifactId>
    <version>2.1.1</version>
</dependency>
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.38</version>
</dependency>

また、下記の結果からも依存ライブラリがwarに含まれていることを確認できます。

% jar -tf app.war | grep commons-dbcp2
WEB-INF/lib/commons-dbcp2-2.1.1.jar

Jetty側でJNDIへの注入を行う場合、その中で必要となるクラスはアプリケーションのwarに含めるのではなく、別の場所へデプロイする必要があるのでしょうか?
もしくはアプリケーションのwarに含まれたライブラリをコンテナ側に読ませるための設定が別途必要なのでしょうか?