I think this is caused by the fact that your viewId is not starting with a /
character. My guess is that When PrettyFaces forwards the request to the viewId, the forward is sent relative to the requested URL. This would explain the 404 error.
So try using this instead:
<url-mapping id="admin-home">
<pattern value="/admin/home" />
<view-id value="/pages/admin/page.jsf" />
</url-mapping>