簡體   English   中英

從SpringMVC Liferay Portlet調用jsp的問題

[英]issue to call a jsp from a SpringMVC Liferay portlet

我有一個SpringMVC portlet到Maven構建的項目中。 我無法將JSP渲染到另一個JSP。

我不確定這是因為我的JSP路徑還是因為我對SpringMVC的誤解。

我的jsp完整路徑是:/src/main/webabb/WEB-INF/jsp/render/logs.jsp

我嘗試這樣稱呼它:

<aui:button-row cssClass="...">
    <portlet:renderURL var="myURL">
        <portlet:param name="mvcPath"
            value="render/logs.jsp" />
    </portlet:renderURL>

    <aui:button onClick="<%=myURL.toString()%>"
        value="my button" />
</aui:button-row>

我嘗試過

value="/webabb/WEB-INF/jsp/render/logs.jsp" />
value="webabb/WEB-INF/jsp/render/logs.jsp" />
value="/WEB-INF/jsp/render/logs.jsp" />
value="WEB-INF/jsp/render/logs.jsp" />
value="/jsp/render/logs.jsp" />
value="jsp/render/logs.jsp" />
value="/jsp/render/logs.jsp" />
value="jsp/render/logs.jsp" />
value="/render/logs.jsp" />
value="render/logs.jsp" />

無論設置什么字符串,當我按下按鈕時,頁面都只會調用主控制器,該控制器將重定向到我的默認視圖jsp。

提前謝謝。

顯然(如果我錯了,請糾正我),我們需要調用控制器,它將重定向到JSP。 我設法以這種方式工作:

在我的JSP中:

<%-- URL declarations --%>
   <portlet:renderURL var="logsURL">
        <portlet:param name="action"
            value="viewLogs" />
    </portlet:renderURL>
        <portlet:renderURL var="failURL">
        <portlet:param name="action"
            value="fail" />
    </portlet:renderURL>

<%-- buttons--%>
<aui:button-row cssClass="guestbook-buttons">

    <aui:button onClick="<%=logsURL.toString()%>" value="test MVC logs" />
    <aui:button onClick="<%=failURL.toString()%>" value="test MVC fail" />
</aui:button-row>

進入我的控制器:

@RenderMapping(params = "action=fail")
    public String fail() {
        LOG.info("\n#############Calling fail###########");
        return "<my_dir>/fail";

    }

@RenderMapping(params = "action=viewLogs")
    public String logs() {
        LOG.info("\n#############Calling logs###########");
        return "<my_dir>/logs";

    }

希望能幫助到你。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM