marius
I'm new here

Design & architecture - dynamic customized use cases

Jump to solution

Hi,

Please consider that I have integrated the integration, personalization,  search and security modules, which helps me in using some fs tags and  functionalities (in order to query some data, create some new data,  modify/delete a.s.o.).

The functionality offered through these modules is not enough in some  special cases... and I will need to integrate more business related  code/actions. So, what am I doing is:
- I'm using JSP templates (FS- Template store, Page templates ->  properties : target: JSP)
- I integrated a MVC framework (like Stripes, Struts, ...) and from  inside of the generated JSP templates (integrated with FS) I configured  so that the submitted action points to my new dynamic code (Stripes Java  action classes... or Struts actions... or JSF ...whatever)

everything fine so far...

now, inside of the new Java action classes I would like to integrate  some DAO functionality.

Questions:
1. Shall I use the FirstSpirit API to modify/create/delete some entities  (which are also used by my FS templates to generate static code)?
Does FS API provide such of classes that allows me to execute DAO  operations? ... or I should configure an ORM (like hibernate, JPA) on  top of the FS tables, in order to work with CRUD operations?

2. Do I have access to some FS transaction mechanism so I can  start/commit/rollback new customized transactions?

3. Is there an horizontal service available (AOP) for the transaction  support?

4. From the design & architecture point of view, please let me know  which is the most recommended way by "FirstSpirit standards" to manage  entities (CRUD operations on DB records) from these customized java  action classes.


Would you recommend for these customized business use cases to integrate  something like: Spring & Hibernate/JPA   ... or anything else? ... I  just want to avoid introducing inconsistent data into the FS system...  and I would like to stay as much as possible with FS standards for all  points of view (what the modules cover and the exceptional cases).

Thanks,
Marius

10 Replies

I would suggest that you let the integration module do the setup and then use some bootstrap code to transfer the session to your code.

Peter
0 Kudos