diff --git a/portal-impl/src/com/liferay/portlet/wiki/service/permission/WikiPagePermission.java b/portal-impl/src/com/liferay/portlet/wiki/service/permission/WikiPagePermission.java
index 4efdd0089965fdfb71005ae69440032232ea4ae4..252c3b202d02d7a7808169319514844718aaa329 100644
--- a/portal-impl/src/com/liferay/portlet/wiki/service/permission/WikiPagePermission.java
+++ b/portal-impl/src/com/liferay/portlet/wiki/service/permission/WikiPagePermission.java
@@ -66,7 +66,7 @@ public class WikiPagePermission {
 
 	public static void check(
 			PermissionChecker permissionChecker, WikiPage page, String actionId)
-		throws PortalException {
+		throws PortalException, SystemException {
 
 		if (!contains(permissionChecker, page, actionId)) {
 			throw new PrincipalException();
@@ -124,7 +124,8 @@ public class WikiPagePermission {
 	}
 
 	public static boolean contains(
-		PermissionChecker permissionChecker, WikiPage page, String actionId) {
+			PermissionChecker permissionChecker, WikiPage page, String actionId)
+		throws SystemException {
 
 		Boolean hasPermission = StagingPermissionUtil.hasPermission(
 			permissionChecker, page.getGroupId(), WikiPage.class.getName(),
@@ -165,7 +166,7 @@ public class WikiPagePermission {
 		}
 
 		if (actionId.equals(ActionKeys.VIEW)) {
-			WikiPage redirectPage = page.getRedirectPage();
+			WikiPage redirectPage = page.fetchRedirectPage();
 
 			if (redirectPage != null) {
 				page = redirectPage;
@@ -185,7 +186,7 @@ public class WikiPagePermission {
 						return false;
 					}
 
-					page = page.getParentPage();
+					page = page.fetchParentPage();
 				}
 
 				return true;
