BasicPortal uses custom DAOs, Liferay uses EJBs.
Liferay also has a demo at my.liferay.com and has a ton of features (web mail, doc library, calendar, wiki, msg boards, polls, shopping, etc). Both are based on Struts.
Pros of DAOs: Light weight, very fast, simple.
Cons of DAOs: Clustering...
Pros of EJBs: Transactions, simple. You can cluster in 3 tiers, a cluster of web servers can hit a cluster of ejb servers that hit a cluster of dbs.
Cons of EJBs: Slow... like using a tank to swat a fly.