Using custom tags - not a "how to do my homework" question.

Hi, I havn't done a heap of JSP and I'm experimenting with custom tags. I understand this may be elementary to some. I also expect there is probably some ready-to-go libary out there that would do this for me, I just wanted to do it from scratch, mostly as a learning exercise.
So I've got a servlet which runs a query, and sends two arrays of objects to a JSP, one is an array of column headings, the other is an array of arrays representing the rows of data.
The intention of the JSP is simply to display the data in a table.
I guess one question I have is:
What is the best way to apply styles to my table? Obviously I don't want to have to recompile the tag code to add/change styles. Is the best way to do it is to have another property of the tag that accepts the name of a style class?
So when I place the tag in my JSP it will looks like <test:report-table headings="..." rows="..." style="blue"/> and in the tag code it will look something like out.write("<table class=\" + classname + \"");I appreciate any comments on how good/bad my code/theory is. Any recomended additions/omissions?
The tag in the JSP looks like this.
        <test:report-table
            headings="<%= (Object[])request.getAttribute(\"columns\")%>"
            rows="<%= (Object[])request.getAttribute(\"rows\")%>"
        />The tag class looks like this.
bar.foo.test;
import java.io.IOException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.TagSupport;
public class ReportTable extends TagSupport
    private Object[] headings;
    public Object[] getHeadings() { return headings; }
    public void setHeadings(Object[] o) { this.headings = o; }
    private Object[] rows;
    public Object[] getRows() { return rows; }
    public void setRows(Object[] o) { this.rows = o; }
    public int doStartTag()
        JspWriter out = pageContext.getOut();
        try
            out.write("<table>");
            out.write("<tr>");
            for (int i = 0; i < headings.length; i++ )
                out.write("<td>" + headings[i] + "</td>");
            out.write("</tr>");
            for (int i = 0; i < rows.length; i++)
                out.write("<tr>");
                Object[] row = (Object[])rows;
for (int j = 0; j < row.length; j++)
out.write("<td>" + row[j] + "</td>");
out.write("</tr>");
out.write("</table>");
catch (IOException e)
e.printStackTrace();
return 0;
The tag definition in my tld looks like this
    <tag>
        <name>report-table</name>
        <tagclass>bar.foo.ReportTable</tagclass>
        <bodycontent>empty</bodycontent>
        <info> Report Table </info>
        <attribute>
            <name>headings</name>
            <required>true</required>
            <rtexprvalue>true</rtexprvalue>
            <type>java.util.Object[]</type>
        </attribute>
        <attribute>
            <name>rows</name>
            <required>true</required>
            <rtexprvalue>true</rtexprvalue>
            <type>java.util.Object[]</type>
        </attribute>
    </tag>

TimSparq wrote:
Cool, thanks for the input/advice, evanfets.
Yeah, my plan was now that I have a basic understanding of the mechanics of what's going on in the tags, I'll go and look into what ready-made stuff there is out there (like you suggest, JSTL).
And thanks for the advice regarding styles, exceptions and the return value. All appreciated.
I'll be taking a look into the tag files too.
Thanks again.Just another option on the styles. One thing I have done in similar situations is to generate a lot of class names and automatically apply them to the correct spot. Example:
<table class="reportTable">
  <thead class="reportTableHead">
    <tr class="rtHeadRow"><th class="rtOddColumn">...</th><th class="rtEvenColumn">...</th></tr>
  <thead>
  <tbody class="reportTableBody">
    <tr class="rtOddRow"><td class="rtOddColumn">...</td><td class="rtEvenColumn">...</td></tr>
    <tr class="rtEvenRow"><td class="rtOddColumn">...</td><td class="rtEvenColumn">...</td></tr>
  </tbody>
</table>This gives the web developer a large selection of selectors to work on:
table.reportTable -> Edit the entire table
table.reportTable tr -> Configure all rows in the table
table.reportTable tr.rtOddRow -> Configure the odd rows in the table
table.reportTable tr.rtOddRow td.rtEvenColumn -> Configure just the even columns in an odd row
etc...
You just communicate the class names that can be used and then the web designer generates a CSS to fit his needs.

Similar Messages

  • How to use custome tag lib in the JSP page?

    How to use custome tag lib in the JSP page?...with JDeveloper

    http://www.oracle.com/webapps/online-help/jdeveloper/10.1.2/state/content/navId.4/navSetId._/vtTopicFile.working_with_jsp_pages%7Cjsp_ptagsregistering~html/

  • How to use custom tag in jsp

    sir
    plz tell me how to use custom tag in jsp.plz describe it.
    i will be thankful to u

    Do you want to use taglibs or develop custom tags? Either way take a look at these:
    http://java.sun.com/j2ee/tutorial/1_3-fcs/doc/JSPTags.html
    http://www.stardeveloper.com/articles/display.html?article=2001081301&page=1
    http://www.onjava.com/pub/a/onjava/2000/12/15/jsp_custom_tags.html
    http://jakarta.apache.org/taglibs/tutorial.html
    http://www.ibm.com/developerworks/edu/j-dw-java-custom-i.html
    http://www.herongyang.com/jsp/tag.html

  • Can I write Design-time for JSP custom tag(not JSF components)

    I have some old JSP custom tags(not JSF components), and I want to use them in the IDE through the toolbox.
    Now I have already written the BeanInfos for these tags, and they can be drag from the toolbox; but it will throw a Exception when render the tags, and the properties in the Property Editor are not which I describe in the BeanInfos.
    How can I write Design-time for these tags? or whether it is possible to write the Design-time for these tags?
    the Exception is shown as follow:
    java.lang.ClassCastException
         at com.sun.rave.insync.faces.FacesPageUnit.renderNode(FacesPageUnit.java:1347)
    [catch] at com.sun.rave.insync.faces.FacesPageUnit.renderBean(FacesPageUnit.java:1086)
         at com.sun.rave.insync.faces.FacesPageUnit.getFacesRenderTree(FacesPageUnit.java:993)
         at com.sun.rave.css2.FacesSupport.getFacesHtml(FacesSupport.java:152)
         at com.sun.rave.css2.CssContainerBox.addNode(CssContainerBox.java:373)
         at com.sun.rave.css2.CssContainerBox.createChildren(CssContainerBox.java:354)
         at com.sun.rave.css2.DocumentBox.createChildren(DocumentBox.java:90)
         at com.sun.rave.css2.DocumentBox.relayout(DocumentBox.java:160)
         at com.sun.rave.css2.PageBox.layout(PageBox.java:392)
         at com.sun.rave.css2.PageBox.relayout(PageBox.java:454)
         at com.sun.rave.css2.DocumentBox.redoLayout(DocumentBox.java:313)
         at com.sun.rave.css2.PageBox.redoLayout(PageBox.java:460)
         at com.sun.rave.css2.DocumentBox.changed(DocumentBox.java:634)
         at com.sun.rave.designer.DesignerPaneUI$UpdateHandler.changedUpdate(DesignerPaneUI.java:1012)
         at com.sun.rave.text.Document.fireChangedUpdate(Document.java:851)
         at com.sun.rave.text.Document$5.run(Document.java:631)
         at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:178)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:454)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)

    I have some old JSP custom tags(not JSF components), and I want to use them in the IDE through the toolbox.
    Now I have already written the BeanInfos for these tags, and they can be drag from the toolbox; but it will throw a Exception when render the tags, and the properties in the Property Editor are not which I describe in the BeanInfos.
    How can I write Design-time for these tags? or whether it is possible to write the Design-time for these tags?
    the Exception is shown as follow:
    java.lang.ClassCastException
         at com.sun.rave.insync.faces.FacesPageUnit.renderNode(FacesPageUnit.java:1347)
    [catch] at com.sun.rave.insync.faces.FacesPageUnit.renderBean(FacesPageUnit.java:1086)
         at com.sun.rave.insync.faces.FacesPageUnit.getFacesRenderTree(FacesPageUnit.java:993)
         at com.sun.rave.css2.FacesSupport.getFacesHtml(FacesSupport.java:152)
         at com.sun.rave.css2.CssContainerBox.addNode(CssContainerBox.java:373)
         at com.sun.rave.css2.CssContainerBox.createChildren(CssContainerBox.java:354)
         at com.sun.rave.css2.DocumentBox.createChildren(DocumentBox.java:90)
         at com.sun.rave.css2.DocumentBox.relayout(DocumentBox.java:160)
         at com.sun.rave.css2.PageBox.layout(PageBox.java:392)
         at com.sun.rave.css2.PageBox.relayout(PageBox.java:454)
         at com.sun.rave.css2.DocumentBox.redoLayout(DocumentBox.java:313)
         at com.sun.rave.css2.PageBox.redoLayout(PageBox.java:460)
         at com.sun.rave.css2.DocumentBox.changed(DocumentBox.java:634)
         at com.sun.rave.designer.DesignerPaneUI$UpdateHandler.changedUpdate(DesignerPaneUI.java:1012)
         at com.sun.rave.text.Document.fireChangedUpdate(Document.java:851)
         at com.sun.rave.text.Document$5.run(Document.java:631)
         at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:178)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:454)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)

  • Can i use Custom Tags for Database retrieval (as per MVC pattern)?

    In our project we are dealing with database, and i've used the Cutom Tags for database retrieval (as per the Article from Mr Faisal Khan) and it is working fine. But i have a doubt if it affects the performance in any way . I wanted to know if its recommendable to use Custom Tags for the DB retrieval as per MVC Pattern or shall i create a intermediate bean and then call the bean in custom tag.
    Thanks
    Prakash

    Putting database code in your JSPs certainly couples your view to the database. That's usually not good.
    If it's a simple app, it might be justified.
    When you start having lots of pages and complex business logic it becomes less attractive. - MOD

  • Can i make own formatted textbox using custom tag

    Hai,
    Can i create own format textbox similar to vb activex control.for example i want make own formatted textbox for enter only numeric value if entry any alpha value it's show error.Is this possible using custom tag

    Hai,
    Can i create own format textbox similar to vb
    activex control.for example i want make own
    formatted textbox for enter only numeric value if
    entry any alpha value it's show error.Is this
    possible using custom tag
    If you mean a custom text box in a web page without an applet (in other words an html component), then Java has nothing to do with it. And by mentioning activex (even only in a 'like' comparison), and custom tag, you are once again hinting that you want an html component. I think you need to place your request to a JavaScript Forum, which, once again, has absolutely nothing to do with Java.
    A "custom tag" in JSP is not an HTML Tag. It may look a little like an html or xml tag, but it is evaluated on the server side. The control you need must be executed on the client side, which, once again, tells me you need to post to a JavaScript forum.

  • I list books on Amazon when on IE my condition notes were always saved & I could pick any one but when using firefox they not saved how can I fix this?

    I list books on Amazon when on IE my condition notes were always saved & I could pick any one but when using firefox they not saved how can I fix this?

    Clear the cache and the cookies from websites that cause problems.
    "Clear the Cache":
    *Firefox/Tools > Options > Advanced > Network > Cached Web Content: "Clear Now"
    "Remove Cookies" from sites causing problems:
    *Firefox/Tools > Options > Privacy > Cookies: "Show Cookies"
    Make sure that you aren't blocking cookies.
    *http://kb.mozillazine.org/Cookies
    *https://support.mozilla.org/kb/Deleting+cookies
    Start Firefox in <u>[[Safe Mode|Safe Mode]]</u> to check if one of the extensions (Firefox/Tools > Add-ons > Extensions) or if hardware acceleration is causing the problem (switch to the DEFAULT theme: Firefox/Tools > Add-ons > Appearance).
    *Do NOT click the Reset button on the Safe Mode start window or otherwise make changes.
    *https://support.mozilla.org/kb/Safe+Mode
    *https://support.mozilla.org/kb/Troubleshooting+extensions+and+themes

  • HT5312 I forget answers to security questions,on the other hand rescue email address that Apple use to send me email is not correst,how I can reset security questions or change rescue email ?

    I forget answers to security question , on the other hand rescue email address that Apple use to send me email is not correct , how I can reset security questions or change and make correction for rescue email address ?
    Please send me answer to [email protected] or [email protected]
    Thank you

    You need to contact Apple. Click here, phone them, and ask for the Account Security team.
    (87669)

  • How to use Custom Tags for Theme and Base Map Definitions

    In Mapviewer documentation I've found the following new feature:
    The XML definition of a theme or base map now supports application-specific
    attribute tags. You can use the Custom Tags option in the theme definition in Map
    Builder to specify tags and their values, which can be interpreted by your application
    but are ignored by MapViewer itself.
    I'm able to define a custom tag in Mapbuilder, but how can I use it in my Application?
    Thanks.

    As he said, you have to use as Platform service to create adapter in OIM.
    tcUserOperationsIntf service = Platform.getService(Thor.API.Operations.tcUserOperationsIntf.class);
    HashMap<String,String> searchmap=new HashMap<String,String>();
    searchmap.put("Users.User ID", userID);
    tcResultSet searchset=service.findAllUsers(searchmap);

  • How to use custom tags for integrating FCK Editor?

    Hi All,
    I am looking for the integrating the FCK Editor in my jsp page. any one can please provide the procedure of How to create fckeditor in jsp?
    I have the jar file of fck editor but i am confusing while creating the custom tag for that editor.
    I want like this:
    <FCKeditor:fck ?> like this
    Regards,
    Sateesh

    google answers it all..
    [http://www.jroller.com/coreteam/entry/using_fckeditor_in_jsp_web]
    [http://java.fckeditor.net/properties.html]
    [http://java.fckeditor.net/java-core/tagreference.html]

  • Custom Tag not evaluating expression in attribute

    I have a custom tag that needs to take dynamic values in the attributes, but I can't seem to get the values "interpreted" correctly. I have the <rtexprvalue> tag set to "true" in my .tld file, which I thought was the only thing that was needed in order to accomplish what I am trying to do. However, that does not seem to be the case.
    I am using WebLogic (8.1.4) and their <netui> tags, along with JSTL tags (1.0).
    An example of what my code looks like is the following:
    <test:myTag id="1" idx="<netui:content value='{container.index}' />">
        <netui:select ... />
    </test:myTag>and
    <c:set var="myIdx" value="<netui:content value='{container.index}' />" />
    <test:myTag id="1" idx="<c:out value='${myIdx}' />">
        <netui:select ... />
    </test:myTag>Neither of the above approaches has worked. In my code for my Tag.java file, I get the literal string values of <netui:content value='{container.index}' /> and <c:out value='${myIdx}' />, respectively, in my idx property.
    Can someone give me any hints as to what I may be doing wrong?
    Thanks.

    Shouldnt that be
    <netui:content value='${container.index}' />Actually, weblogic does not use the '$' prefix before
    their expressions. Fine. Which in turn means weblogic has some custom expression evaluator.
    Note weblogic 8.1
    as a container doesnt implicitly supportexpressions
    and you have to build in that feature into yourtag
    library.Are you referring to the 'isELIgnored' attribute when
    you mentioned the above statement? If not, can you
    explain what you meant by "build that feature into
    your tag library"?
    It's like this - expression language is supported by default in all containers that implement the j2ee 1.4 spec (servlet 2.4/jsp 2.0). Additionally you should also declare your web application to adhere to the 2.4 standards (through the schema definition in web.xml). In applications that refer to the 2.3 dtd but are run on a 2.4 compliant container you can set the 'isELIgnored' attribute to false and use EL. This works because your container anyways supports it.
    If your container doesnt provide support for EL (outside the jstl tags) as is the case with weblogic 8.1, then you can still use expressions by using something like the [url http://jakarta.apache.org/commons/el/]apache common evaluator  package. The difference being that you will have to call the evaluator classes to evaluate the attribute.
    Are there any alternatives that I could use to
    accomplish what I am trying to do?Did the above answer your question?
    ram.

  • JSP Custom tag not working correctly for multiple users

    I am doing some support work for an existing web system. When doing single user access (a custom tag is called within the JSP); the output of the Custom tag is fine. However, during multiple user access to the JSP, as I could see on the log files, 2 users access the custom tag at exactly the same time- the output of one of the users was incorrect. The custom tag btw, uses TreeMap, Stringbuffer and does not have a body, only attributes passed to it. It takes an input file and a Hashmap as input attributes and it sets a string in the page context which is later being used in the JSP. No error is logged, its just that the string produced(placed in the page context) is incorrect. This only happens when this tag is called at same time(when multiple users accessing the page) Has anyone encountered this problem? Is there a known pooling/thread problem with custom tags?

    in a servlet/jsp (a jsp is compiled into a servlet),
    the class atrributes are shared. only the
    variables declared in the doservice (doGet or doPost)
    method are threadsafe.
    post your jsp plzhere's the snippet of the jsp code:
    <%@ page language="java"
    errorPage="Error.jsp"
    autoFlush="false"
    buffer="128kb"
    import="java.text.*,
    java.math.BigDecimal,
    java.rmi.RemoteException,
    java.util.*,
    java.io.*,
    %>
    <%@ include file="Secure.jsp" %>
    // a set of request.getParameter are being called here
    HashMap myMap = new HashMap();
    myMap.put(xmlDPhoneNumber, dPhoneNumber);
    myMap.put(xmlDPhoneType, "D");
    myMap.put(xmlDPhoneExt, dExtension);
    myMap.put(xmlDPhoneDigits, dPhoneDigits);
    // other myMap putting of key values are called here
    %>
    <test:applyCustomerSearchValues id="resultXml" xmlTemplate="/xml/message/CustomerUpdateRequest.xml"
    xmlMap="<%= myMap %>" />
    <test:transformXMLString id="customerUpdateRequest"
    xmlString="<%= resultXml.toString() %>"
    xslFileName="/xsl/message/CustomerCreateRequest.xsl"
    paramMap="<%= PMap %>"/>
    now here's the thing: the xml produced by test:applyCustomerSearchValues is resultXml which is used in test:transformXMLString. I got no problem with the output of test:transformXMLString. I am sure that a phone number is being passed into the former as part of the HashMap key-value. However when test:applyCustomerSearchValues is called when 2 users access the jsp, it seems like the the first xml produced does not have the phone number in it - but the other has it. The xml is OK for both users, its just that the values of the HashMap do not seem to be passed correctly into the xml produced.
    --- here's the snippet of the log, the first httpWorkerThread-80-6 does not have the phone number, however the second one-httpWorkerThread-80-7 has the phone number. The first one should also have a phone number as in the start of the log, the number was listed, but as the system called the test:applyCustomerSearchValues tag, the number was not included. There are different phone numbers for the 2 users. The odd thing here is, the userID which is the 'LastUpdatedBy' element has been set correctly. The userID is being fetched from a session attribute while the phone number is fetched from a request parameter, both are being placed in the HashMap attribute passed to the custom tag.
    2007-06-05 10:55:41,954 DEBUG [httpWorkerThread-80-6] (?:?) - ApplyCustomerSearchValuesTag : String produced is :<Values><Customer>
    <Status>
         <CustomerType></CustomerType>
         <FirstContactDate>2007-06-05</FirstContactDate>
         <StatusFlags>
              <Fraud>N</Fraud>
              <BadCheck>N</BadCheck>
              <BadCredit>N</BadCredit>
              <DoNotMerge>N</DoNotMerge>
              <ARHoldRefundCheck>N</ARHoldRefundCheck>
         </StatusFlags>
         <LastUpdatedDateTime>2007-06-05 10:55:41</LastUpdatedDateTime>
         <LastUpdatedBy>5555</LastUpdatedBy>
         <OPAlertClass></OPAlertClass>
         <MailListStoreID></MailListStoreID>
         <OriginatingSource>CSA</OriginatingSource>
    </Status>
    <DPhone id="D">
         <DPhoneNumber></DPhoneNumber>
         <DPhoneDigits></DPhoneDigits>
         <DPhoneType></DPhoneType>
         <DExtension></DExtension>
         <DAreaCode></DAreaCode>
         <DPhoneCountryCode></DPhoneCountryCode>
    </DPhone>
    </Customer>
    </Values>
    2007-06-05 10:55:41,954 DEBUG [httpWorkerThread-80-7] (?:?) - ApplyCustomerSearchValuesTag : String produced is :<Values><Customer>
    <Status>
         <CustomerType>N</CustomerType>
         <FirstContactDate>2007-06-05</FirstContactDate>
         <StatusFlags>
              <Fraud>N</Fraud>
              <BadCheck>N</BadCheck>
              <BadCredit>N</BadCredit>
              <DoNotMerge>N</DoNotMerge>
              <ARHoldRefundCheck>N</ARHoldRefundCheck>
         </StatusFlags>
         <LastUpdatedDateTime>2007-06-05 10:55:41</LastUpdatedDateTime>
         <LastUpdatedBy>1840</LastUpdatedBy>
         <OPAlertClass></OPAlertClass>
         <MailListStoreID></MailListStoreID>
         <OriginatingSource>CSA</OriginatingSource>
    </Status>
    <DPhone id="D">
         <DPhoneNumber>(123) 123-4788</DPhoneNumber>
         <DPhoneDigits>1231234788</DPhoneDigits>
         <DPhoneType>D</DPhoneType>
         <DExtension></DExtension>
         <DAreaCode>123</DAreaCode>
         <DPhoneCountryCode>US</DPhoneCountryCode>
    </DPhone>
    </Customer>
    </Values>
    Message was edited by:
    Mutya

  • Simultaneous Client and Server Form Validation using Custom Tag Library

    I am developing a custom tag library for validator tags
    which are capable of doing client side validation (Javascript)
    and server side (Java). My problem is with the development
    of a regular expression based validator. Because of differences
    in the way Javascript and Java handle regular expressions
    i can not use the same regular expression for both types of
    validation. Is there any way to convert a valid regular
    expression from the java.util.regex format into the Javascript
    format or vice versa? My major problems are with the (or, ||)
    statements and the user of backslashes.

    If you are speaking of RE syntax flavours, they are basically the same(namely perl5 flavour). Any expression that works in JS should work in j.u.regex too.
    Though, their usage is quite different.
    So, there is no need for convertion of expressions.
    But porting the code may be not so trivial.

  • Error Using Custom Tag

    I am trying to use a custom tag but receive an error when I use it on a jsp page.
    I have a tag handler class file, tag library descriptor file, specified the path to the .tld in the web.xml file.
    The error implies that it cannot find the SimpleTag.class file, though I put it in the \webapps\examples\WEB-INF\classes\ directory.
    Here is the error. Does anyone know what else it could be?
    org.apache.jasper.JasperException: Unable to compile class for JSP
    Generated servlet error:
    C:\jakarta-tomcat-4.0.1\work\localhost\examples\jsp\jspVisual\ch10\using_0005ftag$jsp.java:63: Class org.apache.SimpleTag not found.
    SimpleTag_jspx_th_myFirstTag_SimpleTag_0 = new SimpleTag();

    I could not see any obvious mistakes. But what you could try, in order to isolate the problem, is to bypass the web.xml. In other words access the TLD directly by doing this in your JSP
    <%@ taglib uri="/WEB-INF/jsp/tag_library_descriptor.tld" prefix="myFirstTag" %>
    if that does work then move the your TLD out of the jsp folder and into WEB-INF , then try
    <%@ taglib uri="/WEB-INF/tag_library_descriptor.tld" prefix="myFirstTag" %>
    Maybe someone else has better idea.

  • IllegalStateException using custom tag

    I'm receiving the following exception when trying to use a custom tag we are developing to allow us to provide localized content based on the users browser language/country settings:
         java.lang.IllegalStateException: WEB3025: Cannot reset after response has been committedThe thing is - the tag works perfectly when the page is using JSP includes:
         <jsp:include page="/components/headers/global.jsp" />but we get the exception when using our tag:
         <core:localizedInclude page="/components/headers/global.jsp" />and we make a call to our servlet:
         <jsp:forward page='/servlet/MyServlet' />Here is the line in the custom tag Java code that pulls in the file:
         pageContext.include(localizedPage);Any ideas what we can do to fix this? What are the differences between the <jsp:include> and our <core:LocalizedInclude> in this case?
    Bob

    The pagecontext 's include method flushes the buffer before a call to this method. This means the call to your tag from the jsp should be the first line in your jsp as headers have to be set first before writing any html response.
    Here's the relevant javadoc.
    blah..blah..
    The current JspWriter "out" for this JSP is flushed as a side-effect of this call, prior to processing the include.
    blah..blah..You could try the overloaded pageContext.include("path", false) which according to javadoc
    blah..blah..
    If flush is true, The current JspWriter "out" for this JSP is flushed as a side-effect of this call, prior to processing the include. Otherwise, the JspWriter "out" is not flushed.
    blah..blah..cheers,
    ram.

Maybe you are looking for