aspose file tools
The moose likes JSP and the fly likes How to include page from custom tags Big Moose Saloon
  Search | Java FAQ | Recent Topics
Register / Login


Win a copy of The Mikado Method this week in the Agile and other Processes forum!
JavaRanch » Java Forums » Java » JSP
Reply Bookmark "How to include page from custom tags" Watch "How to include page from custom tags" New topic
Author

How to include page from custom tags

Justin Chu
Ranch Hand

Joined: Apr 19, 2002
Posts: 209
    
    1
(I'm repharsing my last problem)
How to include a jsp page/servlet mapping from a custom tag?
I have tried requestdispatcher.include(request, response), and the page's output does not display on the correct position on the HTML page.
I've tried pageContext.include("servletmapping"); and I got an exception thrown. Something about illegal to flush from within a Custom Tag.
Chu
Justin Chu
Ranch Hand

Joined: Apr 19, 2002
Posts: 209
    
    1
Seems like its impossible to include another page from nested tags of BodyTagSupport.
Here's a work around that I've found.
<%
pageContext.setAttribute("jspWriter",out);
%>
<ct:servletList default="/WEB-INF/props.list">
html
<ct:aServlet/>
more html
</ct:servletList>
// aServletTag class
public int doStartTag() throws JspException {
flushParentBodyContent();
// Do dispatcher include
}
protected void flushParentBodyContent() throws JspException{
Tag parent=getParent();
if(parent != null && parent instanceof BodyTagSupport){
BodyTagSupport parentBodyTag=(BodyTagSupport)parent;
BodyContent parentBodyContent = parentBodyTag.getBodyContent();
try {
JspWriter writer = (JspWriter) pageContext.getAttribute("jspWriter");
parentBodyContent.writeOut(writer);
writer.flush();
} catch (IOException e) {
throw new JspException("IterationTag: " +e.getMessage());
}
parentBodyContent.clearBody();
}
}
 
I agree. Here's the link: http://zeroturnaround.com/jrebel - it saves me about five hours per week
 
subject: How to include page from custom tags
 
Similar Threads
Problem with custom tags
Q from Hanu's mock test
accessing session object from Tag Handler class.?
How to include servlets from tags?
Determine if page to include exists or not!