【发布时间】:2013-09-26 09:44:12
【问题描述】:
这就是我想要做的:
我正在尝试从 liferay 主题调用 servlet/控制器(无论我可以先开始工作)。
这是我所做的: 我制作了一个名为 XController 的控制器,然后生成了一个 url 来调用它:
#set ($embeddedPortletURL = $portletURLFactory.create($request, "workspace_WAR_xportlet", $page.plid, "RESOURCE_PHASE"))
<input id="workspaceSearchUrl" value="${embeddedPortletURL}" type="hidden">
然后对于 ajax 调用,我使用 $("#workspaceSearchUrl").val() + "&p_p_mode=view&p_p_resource_id=doSomething" 作为 url。
我能够调用 portlet 没有问题,但是每当我调用 portletRequest.getRemoteUser() 时,我得到的 userId 为“2203”,而不是登录用户。
那么...我到底做错了什么?为什么 getRemoteUser 方法会返回一个数字?
编辑: 为了清楚起见,对其他控制器的其他 ajax 调用返回一个有效的用户 ID(文本)。
我也尝试调用一个 servlet,但是调用 getRemoteUser 返回一个空值。我猜这意味着 servlet 不与门户共享会话?
【问题讨论】:
标签: java liferay portlet portal