Если вам действительно нужно только одно соединение, попробуйте установить intialSize в 1 и maxActive в 1 в вашей конфигурации DBCP .
В долгосрочной перспективе, если вы не хотите использовать пул соединений, не используйте JNDI для настройки источника данных, просто создайте его непосредственно в коде вашего веб-приложения.
Edit:
В своем комментарии вы говорите: «Это разрешает только одно соединение, и сервер сразу зависает, потому что каждый запрос ожидает соединения».
Да, если вы эффективно отключите пул, сделав пул размером 1, это то, что произойдет. Но заголовок вашего вопроса - «Как создать источник данных без объединения», поэтому я не совсем понимаю, чего именно вы пытаетесь достичь.
Мое предложение состоит в том, чтобы не использовать JNDI для определения ваших соединений (вся цель определения источника данных JNDI заключается в создании пула соединений между веб-приложениями). Вместо этого определите ваше соединение в коде сервлета для двух ваших случаев: один случай, который продолжает использовать DBCP, другой случай, который использует ваш другой низкоуровневый пул соединений.