The first question I always ask when someone wants to use the session is "do you really need to use the session?"
Without seeing your code it's difficult to help you but I always solve these problems without using the session. If you always pass the identifiers in the URL then you can have the same page open in multiple browser windows for different entities and everything will just work.
Option 1: Use Page activation context (for page loads) and the event context (for eventlink / actionlink) to maintain the entity id's between requests.
Option 2: Use @Persist(PersistenceConstants.CLIENT) which will use request parameters to pass the entity id's between client and server each time.
If you really want to use the HTTPSession, you can use tapestry-conversations but please consider this a last resort after considering the two stateless / URL based approaches I've mentioned above.