2014-09-03 57 views
0

我试图提供从我的主题导航到控制面板的链接。 我用了下面这段代码。提供从liferay主题导航到控制面板的链接

<li><a href="$my_account_url">Manage Your Profile</a></li> 

这在我的本地测试环境工作的罚款。 但是,当我将其转移到生产环境时,出现以下错误。

10:10:13,998 ERROR [IncludeTag:231] Current URL /group/control_panel/manage?p_p_auth=9AUrwzDp&p_p_id=2&p_p_lifecycle=0&p_p_state=maximized&p_p_mode=view&p_p_col_count=1&refererPlid=25014&_2_struts_action=%2Fmy_account%2Fedit_user&_2_backURL=%2Fgroup%2F19765%2Fdashboard generates exception: An exception occurred processing JSP page /html/portlet/enterprise_admin/init.jsp at line 221 

218: boolean isHavingUpdatePermission = false; 
219: boolean isHavingAssignUserRolesPermission = false; 
220: 
221: boolean isOrganization = GroupLocalServiceUtil.getGroup(themeDisplay.getDoAsGroupId()).isOrganization(); 
222: long orgId = GroupLocalServiceUtil.getGroup(themeDisplay.getDoAsGroupId()).getOrganizationId(); 
223: 
224: List<Role> objRolesList = RoleLocalServiceUtil.getUserGroupRoles(themeDisplay.getUserId(),themeDisplay.getDoAsGroupId()); 


Stacktrace: 
10:10:13,999 ERROR [IncludeTag:154] com.liferay.portal.NoSuchGroupException: No Group exists with the primary key 0 
at com.liferay.portal.service.persistence.GroupPersistenceImpl.findByPrimaryKey(GroupPersistenceImpl.java:723) 
at com.liferay.portal.service.impl.GroupLocalServiceImpl.getGroup(GroupLocalServiceImpl.java:517) 
at com.liferay.portal.dao.jdbc.aop.DynamicDataSourceTransactionInterceptor.invoke(DynamicDataSourceTransactionInterceptor.java:44) 
at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:58) 
at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:58) 
at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:58) 
at com.liferay.portal.service.GroupLocalServiceUtil.getGroup(GroupLocalServiceUtil.java:166) 
at org.apache.jsp.html.portlet.enterprise_005fadmin.edit_005fuser_jsp._jspService(edit_005fuser_jsp.java:1162) 
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377) 
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646) 
at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551) 
at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488) 
at com.liferay.taglib.util.IncludeTag.include(IncludeTag.java:175) 

请帮我解决这个问题。 由于事先

+0

我已经调整的格式,让您的链接可以看到 - 你说你正在链接到控制面板,但显示$ my_account_url。我还没有尝试过,但它碰巧不适合未登录的用户? – 2014-09-03 12:45:22

回答

0

我不明白你怎么构建的链接,但这里是我的代码,我使用了相同的任务:

#if($themeDisplay.getPermissionChecker().isOmniAdmin()) 
    <a href="$themeDisplay.getURLControlPanel()">Control Panel</a> 
#end 
+0

嗨 感谢您的回答。 但问题是,我想为每个用户提供这个功能不仅是管理员。 my_account_url是liferay速度中可用的预定义变量。这在我的本地环境中工作正常。 – 2014-09-04 06:23:21