Jsp调用另一个jsp

时间:2013-04-22 01:17:01

标签: jsp liferay

现在,我开发简单的JSP portlet(没有使用struts)。 我有jsp视图和第二个jsp view_detail.jsp。 在jsp视图中我写了这个:

<TD> <a href="<portlet:renderURL ><portlet:param name="view" value="/view_detail.jsp"/></portlet:renderURL>"><%=rs.getInt(1)%></a>
</TD>

但这是行不通的。请你帮助我。

2 个答案:

答案 0 :(得分:0)

如果我理解正确,您应该使用API​​。

尝试以下步骤:

在view.jsp的开头,您需要包含taglib:

<%@ taglib uri="http://java.sun.com/portlet" prefix="portlet" %>
<portlet:defineObjects />

然后你要插入网址,把

<portlet:renderURL><portlet:param name="view" value="/view_detail.jsp" /></portlet:renderURL>

所以最终<a href>将如下所示:

<a href="<portlet:renderURL><portlet:param name="view" value="/view_detail.jsp" /></portlet:renderURL>" target="_blank">Other JSP</A>

链接无法按照您的方式完成,因为other_jsp.jsp页面显示在另一个页面内,因此您必须链接到门户页面,然后在portlet中显示您的jsp。

答案 1 :(得分:0)

you should follow the below code and also check in portlet.xml
<init-param>
            <name>view-template</name>
            <value>/jsp/a.jsp</value>
        </init-param>   
 <body> 
      <portlet:renderURL var="other"> 
      <portlet:param name="jspPage" value="/jsp/b.jsp"/> 
      </portlet:renderURL> 
      <a href="<%=other%>">other</a> 
    </body>
    Example
    a.jsp

    <%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet"%>
    <%@ taglib uri="http://alloy.liferay.com/tld/aui" prefix="aui"%>
    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
      <portlet:renderURL var="other">
      <portlet:param name="jspPage" value="/jsp/b.jsp"/>
      </portlet:renderURL>
      <a href="<%=other%>">other</a>
    </body>
    </html>

    b.jsp

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
    hi karthik
    </body>
    </html>