dataGrid manter página atual

Usando jsf2, um managed bean com escopo de sesion e primefaces 3.5 como faço pra manter a página atual de uma dataGrid ou uma dataTable?

por exemplo, eu tenho 10 páginas, se eu estou na página 5 e aperto F5 ele volta pra primeira página…

ou então um segundo caso (que é o mais urgente no meu caso), vamos supor que o cara ta listando os produtos e ta na página 5, e ele abre um produto (indo pra outra pagina) pra poder adicionar no carrinho… nesse momento eu consegui setar a página que o cara ta em uma tributo de session, então eu sei que ele estava na página 5, e quando ele voltar eu consigo saber em qual página ele estava… mais eu não estou conseguindo setar a página na dataGrid ou dataTable…

tem um código +ou- assim que tentei por fixo e não está funcionando:

DataGrid grid = (DataGrid) FacesContext.getCurrentInstance().getViewRoot().findComponent(":idDoForm:idDaTable");
grid.setFirst(5);