Я бы порекомендовал Server-Based Java Programming. Это не книга Java EE сама по себе, но она объясняет , что сервер на базе Java должен делать и как это сделать с хорошим примером кода. Это даст вам основание понять, что Java EE пытается достичь, и почему все так, как они есть.
В том же духе я бы порекомендовал Expert One-on-One J2EE Development without EJB. Эта книга написана основателем проекта Spring и дает представление о проблемах с Java EE, которые пытается решить Spring. Обратите внимание, что это было написано до того, как весна была открыта с открытым исходным кодом, так что это больше похоже на то, как инфраструктура сервера не Java EE может работать, а не книгу «Как использовать весну». Даже если вы используете прямую Java EE, это помогает понять, с какими проблемами вы столкнулись (с J2EE) или с мотивами Java EE 5 (на основе Spring & философии Hibernate).
Я бы не рекомендовал настоящие спецификации от Солнца. Они плотные, технические и лучше используются в качестве ссылки.