gpt4 book ai didi

java - 从 SpringMVC Liferay portlet 调用 jsp 的问题

转载 作者:行者123 更新时间:2023-12-01 11:04:19 25 4
gpt4 key购买 nike

我有一个 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" />

无论我设置什么字符串,当我点击按钮时,页面都会调用主 Controller ,该 Controller 会重定向到我的默认 View jsp。

提前致谢。

最佳答案

显然(如果我错了,请纠正我),我们需要调用 Controller ,它将重定向到 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>

进入我的 Controller :

@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";

}

希望有帮助。

关于java - 从 SpringMVC Liferay portlet 调用 jsp 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33097323/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com