Просто установите targetSdkVersion на 19. Значок уведомлений будет окрашен. Затем подождите, пока Firebase устранит эту проблему.
"каковы корпоративные приложения Java, как они отличаются от нормальных классов Java и т.д."
Хорошо они - нормальные классы. Они, работал сервером приложений. "Сервером приложений" является часто просто JVM, но иногда улучшаемый или измененный или расширенный поставщиком. Но это не должно быть никаким беспокойством Вам. Сервер приложений (т.е.: JVM), использует загрузчик класса (вероятно, настроенный поставщиком) для загрузки сервлета (любой класс, который реализует интерфейс HttpServlet). Любые другие классы (не только классы J2EE, но и все классы) будут загружены загрузчиком класса. Оттуда на нем Ваш тот же код Java. Я надеюсь, что это дает Вам вид ответа, который Вы хотите. Чтение документов J2EE (даже нацеленный к разработчикам) обычно влечет за собой бессмысленные модные словечки.
Я рекомендовал бы просмотреть Учебное руководство J2EE от Sun. Это свободно, и пробегается через основы, которые необходимо знать прежде, чем перейти на платформу (Struts, например). И конечно должен должен быть знать, собираетесь ли Вы просто использовать просто прямой J2EE.
Можно хотеть ознакомиться с частью этого:
Несколько полезных фактов:
Учебное руководство по Java EE 5 - читало онлайн или как PDF
EJB 3 в Действии - замечательная книга, которая касается всего, которое необходимо знать
Я также недавно запустил с Java EE, и я только использовал Сервер приложений Glassfish/Sun до сих пор, но от того, что я understad от моих коллег на работе и что я видел до сих пор Glassfish, кажется, лучший выбор в данный момент.