improve Exception handling for ScheduleDetail.

ScheduleDetail now throws out all the exceptions through ScheduleDetailListener.
add missing Subjects.
CatalogDetailListener now throws all the exceptions.

CatalogDetailListener now throws all the exceptions.
Change CatalogDetailTest exception handling.
Reformat for CatalogDetailTest.