Java 如何从Portlet类中的processAction()方法识别表单操作URI?
我创造了一个像这样的形式Java 如何从Portlet类中的processAction()方法识别表单操作URI?,java,liferay,portlet,liferay-6,Java,Liferay,Portlet,Liferay 6,我创造了一个像这样的形式 <portlet:actionURL var="myFriendlyURI"> <portlet:param name="action" value="addUser"></portlet:param> </portlet:actionURL> <form id="userForm" name="userForm" action="${myFriendlyURI}" method="post">
<portlet:actionURL var="myFriendlyURI">
<portlet:param name="action" value="addUser"></portlet:param>
</portlet:actionURL>
<form id="userForm" name="userForm" action="${myFriendlyURI}" method="post">
Name :- <input type="text" name="userName">
<input type="submit">
</form>
我只想像在Servlet类中一样检查请求
if(request.getRequestURI().endsWith("user/add")) { // <form action="user/add" ..... >
System.out.println("Ends with : user/add ");
// do actions here
}
if(request.getRequestURI().endsWith(“user/add”){//
System.out.println(“以:user/add结尾”);
//在这里做动作
}
使用此
HttpServletRequest convertReq = PortalUtil.getHttpServletRequest(actionRequest);
HttpServletRequest originalReq = PortalUtil.getOriginalServletRequest(actionRequest);
对链接的引用有很多例子我试图在processAction(ActionRequest请求,ActionResponse响应)中获得它。这里需要的是HttpServletRequest而不是ActionRequest:PortalUtil.getCurrentCompleteURL(HttpServletRequest)。从ActionRequest强制转换到HttpServletRequest将产生类强制转换异常。已编辑我的答案。请跟随链接获取更多信息。除了处理和管理不同的操作之外,您是否出于任何原因需要操作URL?我这样问是因为如果action参数是您唯一需要的,那么您可以在不进行URL处理的情况下执行它为什么需要请求URI?是否要筛选processAction中的多个操作?
HttpServletRequest convertReq = PortalUtil.getHttpServletRequest(actionRequest);
HttpServletRequest originalReq = PortalUtil.getOriginalServletRequest(actionRequest);