我的MVC Portlet中有以下方法,
public void process(HttpServletRequest actionRequest, HttpServletResponse actionResponse){
try
{
actionResponse.sendRedirect("https://www.sample.com/category/diamond?valid=true");
actionResponse.setStatus( HttpServletResponse.SC_MOVED_PERMANENTLY);
}
catch(Exception ex){
System.out.println("Error occured" + ex.getMessage());
}
}
这成功重定向到提到的URL,但我希望它是301重定向。所以我尝试了
actionResponse.setStatus( HttpServletResponse.SC_MOVED_PERMANENTLY);
但是它不起作用,我该怎么做301重定向,请问有人可以帮我吗?
最佳答案
这里有两个问题需要解决,
首先,检查发送重定向提交响应后,是否未设置代码。
其次,要设置这样的代码,您可能想要尝试如下操作:
response.setProperty( ResourceResponse.HTTP_STATUS_CODE, Integer.toString( HttpServletResponse.SC_NOT_FOUND ) );
关于java - 如何在Liferay MVC Portlet中的actionResponse中设置301状态代码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56808356/