Okay, I downloaded MyFaces 2.2.0 (yesterday's release), and added it to my TomEE 1.6.1 SNAPSHOT (downloaded 2 or 3 days ago), and I decided to test CDI @ViewScoped @PreDestroy.
Below, you will see that I logged in, and opened a few pages that reference a few different instances of CDI @ViewScoped beans, @PreDestroy releaseResources() method was executed as i navigated to different views, but then here is the thing that concerns me, the @PreDestroy of pre-existing-and-thought-to-be-already-destroyed bean 'instances' were executed after logout, where logout = session.invalidate. See below, please. Is this behavior per the spec? Jan 15, 2014 2:16:45 AM pf.ApplicationScopeBean login INFO: sessionId = administrator5AD906CC2D25991567A047780BBBF561 Jan 15, 2014 2:16:45 AM jsf.users.pf_UsersController loginUser INFO: administrator logged in at 01/15/2014 02:16 AM Jan 15, 2014 2:17:01 AM jsf.orders.EditDriverVehicles init INFO: jsf.orders.EditDriverVehicles@5fe1cb9b Jan 15, 2014 2:17:03 AM jsf.orders.EditDriverVehicles releaseResources INFO: jsf.orders.EditDriverVehicles@5fe1cb9b Jan 15, 2014 2:17:06 AM jsf.orders.EditDriverVehicles init INFO: jsf.orders.EditDriverVehicles@7133db9 Jan 15, 2014 2:17:07 AM jsf.orders.EditDriverVehicles releaseResources INFO: jsf.orders.EditDriverVehicles@7133db9 Jan 15, 2014 2:17:10 AM jsf.orders.OrderDocumentBean init INFO: jsf.orders.OrderDocumentBean@41d7a36a Jan 15, 2014 2:17:12 AM jsf.orders.OrderDocumentBean releaseResources INFO: jsf.orders.OrderDocumentBean@41d7a36a Jan 15, 2014 2:17:14 AM jsf.orders.OrderDocumentBean init INFO: jsf.orders.OrderDocumentBean@486ae85a Jan 15, 2014 2:17:17 AM jsf.orders.OrderDocumentBean releaseResources INFO: jsf.orders.OrderDocumentBean@486ae85a Jan 15, 2014 2:17:21 AM jsf.orders.OrderDocumentBean init INFO: jsf.orders.OrderDocumentBean@6ff554c9 Jan 15, 2014 2:17:23 AM jsf.orders.OrderDocumentBean releaseResources INFO: jsf.orders.OrderDocumentBean@6ff554c9 Jan 15, 2014 2:17:29 AM jsf.users.pf_UsersController logout INFO: administrator logged out at 01/15/2014 02:17 AM Jan 15, 2014 2:17:29 AM jsf.orders.EditDriverVehicles releaseResources INFO: jsf.orders.EditDriverVehicles@7133db9 Jan 15, 2014 2:17:29 AM jsf.orders.OrderDocumentBean releaseResources INFO: jsf.orders.OrderDocumentBean@486ae85a Jan 15, 2014 2:17:29 AM jsf.orders.EditDriverVehicles releaseResources INFO: jsf.orders.EditDriverVehicles@5fe1cb9b Jan 15, 2014 2:17:29 AM jsf.orders.OrderDocumentBean releaseResources INFO: jsf.orders.OrderDocumentBean@6ff554c9 Jan 15, 2014 2:17:29 AM jsf.orders.OrderDocumentBean releaseResources INFO: jsf.orders.OrderDocumentBean@41d7a36a FYI, I 'want' to migrate to MyFaces 2.2.0 in production, and I think I will do it anyway, but please answer my question above about this behavior/implementation/test-results-of-mine. Thanks, Howard