I don't see why the SMPC will cache a huge number of entities in this case (no more than the data involved in holding the page state in the session). You have the right pattern (a long running conversation, and perhaps a pageflow) for a wizard.
Thank you for your reply,
but let me make it clear,
P1 -> P2 -> P3 ...
P1, P2, P3 are bigger than pages of wizard, they are units of process.
P1 may be order list page,
P2 may be modify order page
(P2 itself may be a wizard page composed by few child pages P21, P22, P23...)
P3 may be acceptance list page...
What we need is maintaining state between pages P1, P2, P3... but do not share the same SMPC,
(shared SMPC is still need for P21 -> P22 -> P23)
If using LRC, the whole data will be cache in a single SMPC
(in fact, we did not consider slate data yet).
Surely you would use the persistence context to share state between P1, P2, P3? - you have to share the state *showhow* ;)
An alternative would be a jbpm process like in the dvdstore example.