Hi John,
Thanks a lot for your quick reply.
The reason I raised the question "Does PointbaseCatalogDAO not used by anybody?" was, I searched the whole folder tree, but found nobody use it. I also checked details of GenericCatalogDAO, I found it did the same job, the only difference was it used a complex way and put SQL statements in XML. So, it looks like a duplicated implementation.
I agreed with you, SLSB+DAO is also a fast lane(compared with entity bean). But when you look at the "import com.sun.j2ee.blueprints.servicelocator.ejb.ServiceLocator;" from CatalogHelper.java, it is not supposed to be remote.(currently, the two ServiceLocator in PetStore both can only be local -- new InitialContext(), but the web ServiceLocator potentially could be remote).
Based on DB schema(also the PetStore Design
doc -- UI pages), the relationship is Category 1---1..* Product 1---1..* Item, but we see it in TO is: Category 1..*---1 Item 1---1..* Product(my previous description for this relationship is not correct). I can't find a reason to make such a change. Also, we are lucky don't need to maintain the catalog(pre-populated by SQL statements and no change at all), otherwise we can not even create a new product in PetStore using the TO.
Just my 2 cents.
)