検索のポートレットで検索のキーワードを取得したい。URL に「struts_action=/search/seach」が表示されるのを見た後、strut-config.xml を探して、次を見つけました:
action path="/search/search" forward="portlet.search.search"
私はストラットをやろうとしていますが、ストラットについてあまり知らず、うまくいきません。これは「liferay-hook.xml」のコードです:
<portal-properties>portal.properties</portal-properties>
<struts-action>
<struts-action-path>/search/search</struts-action-path>
<struts-action-impl>com.segmentationProject.searchAction.struts.SearchAction</struts-action-impl>
</struts-action>
portal.properties: auth.public.paths=/検索/検索
SearchAction.java:
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.liferay.portal.kernel.struts.BaseStrutsAction;
public class SearchAction extends BaseStrutsPortletAction {
@Override
public void processAction(StrutsPortletAction originalStrutsPortletAction, PortletConfig portletConfig, ActionRequest actionRequest, ActionResponse actionResponse) throws Exception {
System.out.println("inside the process ");
super.processAction(originalStrutsPortletAction, portletConfig, actionRequest, actionResponse);
}
@Override
public String render(StrutsPortletAction originalStrutsPortletAction,PortletConfig portletConfig, RenderRequest renderRequest, RenderResponse renderResponse) throws Exception {
// TODO Auto-generated method stub
System.out.println("inside the render");
return super.render(portletConfig, renderRequest, renderResponse);
}
}
私が行方不明または間違っていることについて何か考えはありますか? キーワードを取得してから、通常どおり検索を実行したいだけです。ありがとう!