JSP tags; html formatting problem

Hi,
I've implemented a jsp custom action which supports several enclosed tags in like this:
<%@ taglib ..... prefix="myprefix" %>
<myprefix:myTag ... >
<myprefix:myNestedTag ... />
<myprefix:myNestedTag ... />
</myprefix:myTag>
I have three classes to manage this stuff:
* class MyTag
* class MyNestedTag
* class MyNestedTagParent (interface implemented by the MyTag tag handler) that contains following lines:
=======================================================
public int doEndTag() throws JspException {
Enumeration enum = tabs.elements(); // tabs is a vector of // parameters names and values
try {
     HttpServletResponse res = (HttpServletResponse) pageContext.getResponse();
     JspWriter out = pageContext.getOut();
     out.println("SOME HTML DIRECTIVES"); // shows html formatted page OK
     out.println("<%@ include file=\"page.jsp\"%>"); // shows <%@ include.......
     out.println("<jsp:include page=\"page.jsp\" />"); // shows nothing
     // "View Page Source" shows a correct code, if I do copy/paste into another jsp file and ask it in the browser window, all works as I wish!
=======================================================
The myTag action is supposed to form an html response and send it to the browser. As long as this action sends pure html response (only html tags) things go well, I get a page formatted depending on the myTag and myNestedTag parameters.
However, when I try to send a jsp directive, it is not processed but sent directly to the browser. Namely, I want to include the
<jsp:include page="page.jsp" flush="true" />
in the response and the browser ignores this directive as if it was an unknown HTML tag. If I send
<%@ include file="page.jsp" %>
I see this line as is, not processed.
I can't find a way to avoid this. And I can't find a way to avoid using INCLUDE because the part of the response has to be dynamically processed.
Does anyone have any idea? A way to avoid using JSP directives doesn't seem possible to me, because a part of the response must be generated dynamically with the JSP methods. Anyway, if you have ideas...
Thankfully,
     Nathaniel.

out.println("<%@ include file=\"page.jsp\"%>"); //The jsp page needs to be compiled by the app server, before you send the response back to the client. What this means is that you can't send your jsp page as a response before it's compiled, as you're trying to do. What you can try doing is using the response stream to redirect to the jsp page like this: response.sendRedirect("page.jsp");.
I can't find a way to avoid this. And I can't find a way to avoid >using INCLUDE because the part of the response has to be dynamically >processed.You can create the response dynamically, based on user inout etc. but processing it dynamically soen't make sense. You should process the request from the client, create the response and send the response back to the client.
Regards,
D.

Similar Messages

  • Report Downloading in HTML Format - Problem...

    Dear All,
    While I am downloading any report in HTML Format.
    At that time I want to cahnge the font format in SAP.
    please tell how to do this.
    Regards,
    Dharmesh

    Hi Dharmesh,
    Send me the ZPROGRAM you have developed.
    Darshan Patel

  • How can I send email from an JSP page  with HTML format either using jsp

    hi,
    I have an jsp page with online application form,after compleating the form if i select submit it will send all the compleated data to the mail id we mentioned in the form tag,for this i am using javascript,but instead of receiving the data in the format of strings,my client want to receive the data in the same format as he's filling in the jsp page(html format) through e-mail.any help would be appreciated.the fallowing is the code right now i am using for email application.
    <code>
    function send()
    if(validatePersonalInfo(document.theform))
         document.theform.submit()
         location.href=location.reload()
    function validatePersonalInfo(form)
         var tmpStr ="";
         if (form.Name.value == "") {
              tmpStr = "Name";
              document.all.dName.style.visibility="visible";
              document.theform.Name.focus();
         else{
              document.all.dName.style.visibility="hidden";
         if (form.SSN.value == "") {
              tmpStr = tmpStr + ", Social Security Number";
         document.all.dSSN.style.visibility="visible";
         if(form.Name.value != "")
              {document.theform.SSN.focus();}
         else{
              document.all.dSSN.style.visibility="hidden";
    if (tmpStr == "") {
              return true;
         } else {
              alert("Please Fill the Following Fields: " + tmpStr);
              return false;
    <FORM NAME="theform" METHOD="post"
    ACTION="mailto:[email protected]?subject=Online Application Form for MinorityDealer." ENCTYPE="text/plain">
    <TABLE WIDTH="100%" BORDER="0" CELLSPACING="0" CELLPADDING="10" NOF="LY">
    <TH>
    <P>
         <FONT SIZE="3" FACE="Arial,Helvetica,Univers,Zurich BT">Online�Application</font></TH><BR>
    </TABLE>
    <table width="718" border="1" cellspacing="0" cellpadding="3" bgcolor="#CCCCFF" align="center">
         <tr>
    <td colspan="2"><font class="captionText">Name*�</font><br><input type="text" size="25" name="Name" class="bodyText">
    <div id="dName" name="dName" style="position:absolute;visibility:hidden"><font color="red">Name is Mandatory*</font></div>
    </td>
              <td colspan="2"><font class="captionText">Social Security Number*�</font><br><input type="text" size="9" name="SSN" class="bodyText">
              <div id="dSSN" name="dSSN" style="position:absolute;visibility:hidden"><font color="red">SSN is Mandatory*</font></div></td>
    </tr>
    <tr>
    <td colspan="2"><font class="captionText">Total Personal Assets</font><br><input type="text" size="10" name="TotPersAss3" class="bodyText"></td>
              <td colspan="2"><font class="captionText">Total Personal Liabilities & NetWorth</font><br><input type="text" size="10" name="TotPerLiab3" class="bodyText"></td>
    </tr>
         </tr>
    </TABLE>
    <IMG Valign="middle" name="imgSubmit" src="images/buttons/Submit.gif" width="66" height="29" border="0" alt="Submit">
    </code>

    Can any one do some help to solve this problem.
    Regards.

  • Error in jsp tag files with jdev 101310 and oc4j standalone10130

    Hello,
    I'm creating a simple jsp tag file that show "it´s test" and a jsp with the jsp tag file,
    the problem is:
    java.lang.NoSuchMethodError: oracle.jsp.runtime.OracleJspRuntime.releaseTagHandlers(Ljavax/servlet/jsp/PageContext;)V     at oracle.jsp._tag._tagMeta_tag.doTag(_tagMeta_tag.java:71)     at admin.applicationproperties._jspService(_applicationproperties.java:56)     [SRC:/admin/applicationproperties.jsp:10]     at com.orionserver[Oracle Containers for J2EE 10g (10.1.3.0.0) ].http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)     at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:416)     at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:478)     at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:401)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:719)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:376)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher.unprivileged_forward(ServletRequestDispatcher.java:270)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher.access$100(ServletRequestDispatcher.java:42)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher$2.oc4jRun(ServletRequestDispatcher.java:204)     at oracle.oc4j.security.OC4JSecurity.doPrivileged(OC4JSecurity.java:283)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:209)     at com.gtsCol.bonPen.servlets.ApplicationPropertiesServlet.doGet(ApplicationPropertiesServlet.java:51)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:719)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:376)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:870)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:451)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.AJPRequestHandler.run(AJPRequestHandler.java:299)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.AJPRequestHandler.run(AJPRequestHandler.java:187)     at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)     at java.lang.Thread.run(Thread.java:595)
    my mail is [email protected]
    thansk for your help.

    Hola a todos,
    Estoy creando un jsp tag file que solo muestra un mensaje "Esto es una prueba" y la incluyo en una jsp normal, el problema es que no parece soportar este tipo de tags.
    El error que muestra es el siguiente.
    java.lang.NoSuchMethodError: oracle.jsp.runtime.OracleJspRuntime.releaseTagHandlers(Ljavax/servlet/jsp/PageContext;)V     at oracle.jsp._tag._tagMeta_tag.doTag(_tagMeta_tag.java:71)     at admin.applicationproperties._jspService(_applicationproperties.java:56)     [SRC:/admin/applicationproperties.jsp:10]     at com.orionserver[Oracle Containers for J2EE 10g (10.1.3.0.0) ].http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)     at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:416)     at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:478)     at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:401)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:719)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:376)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher.unprivileged_forward(ServletRequestDispatcher.java:270)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher.access$100(ServletRequestDispatcher.java:42)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher$2.oc4jRun(ServletRequestDispatcher.java:204)     at oracle.oc4j.security.OC4JSecurity.doPrivileged(OC4JSecurity.java:283)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:209)     at com.gtsCol.bonPen.servlets.ApplicationPropertiesServlet.doGet(ApplicationPropertiesServlet.java:51)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:719)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:376)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:870)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:451)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.AJPRequestHandler.run(AJPRequestHandler.java:299)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].server.http.AJPRequestHandler.run(AJPRequestHandler.java:187)     at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.0.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)     at java.lang.Thread.run(Thread.java:595)
    mi correo electronico es [email protected]
    De antemano gracias por la ayuda que me puedan brindar.

  • How html textfield use i jsp tag

    hi master
    sir see my php code i get input in name and fname text box and pass in php tag for insertion into database
    <html>
    <body>
    <form action="mfa.php" method="post">
    First Name<input type="text" name="fname">
    Second Name<input type="text" name="lname">
    <input type="submit" name"Insert">
    </form>
    <?php
    //Inserting records into database
    $firstname=$_POST['fname'];
    $lastname=$_POST['lname'];
    mysql_connect("localhost","root","") or die(mysql_error());
    mysql_select_db("test1");
    mysql_query("INSERT INTO persons (Firstname, Lastname) VALUES ('$firstname','$lastname')");
    echo "Data Inserted";
    ?>
    <?php
    //showing resutls in browser
    mysql_connect("localhost", "root", "") or die(mysql_error());
    mysql_select_db("test1") or die(mysql_error());
    $result = mysql_query("SELECT * FROM persons") or die(mysql_error());
    echo "<table border='1'>
    <tr>
    <th>First Name</th>
    <th>Last Name</th>
    </tr>";
    while($row = mysql_fetch_array( $result ))
    echo "<tr>";
    echo "<td>" . $row['Firstname'] . "</td>";
    echo "<td>" . $row['Lastname'] . "</td>";
    echo "</tr>";
    echo "</table>";
    ?>
    </body>
    </html>
    how i use html text box and pass to jsp tag for insertion data into database
    please give me sample code
    thank's
    aamir

    I have never had any problems mixing straight HTML (without the verbatim tag) and JSF tags. OTOH, I use facelets, not JSPs, so my experience may not be applicable.

  • Help! Problem with Struts tag html:errors/

    Hi everybody,
    In my JSP page called addUser.jsp, i have the different Struts Tag
    <html:errors/>
    <html:form action="/addUser" focus="firstName">
    </html:form>
    I have of course the ApplicationResources.properties file with differents Struts properties:
    errors.footer=</ul><hr>
    errors.header=<h3><font color="red">Validation Error</font></h3>You must correct the following error(s) before proceeding:<ul>
    errors.ioException=I/O exception rendering error messages: {0}
    and an other one:
    error.fieldsNeeded=<font color="#FF0000">Some fields are missing.</font>
    when I call the addUser form, my JSP page display:
    null Some fields are missing. null
    Have u any suggestion about my prob?
    tx a lot
    s.

    Hi,
    can u post the java code where u are actually adding the error to the action errors. may be there is something wrong with that. I dont see any problem with the jsp or the applicationsResources.properties.
    Thanks
    Latha

  • Problems with custom JSP Tag, can someone offer some advice?

    Greetings,
    I have a problem here that I am stumped on. I am trying to create a custom JSP tag, I created a simple "Hello World" JSP, however, I am coming up a bit short. I am running Apache Tomcat 6.0 on a Win XP environment.
    The code I have is as follows:
    TLDTest.tld:
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
    "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_2.dtd">
    <taglib>
         <tlibversion>1.0</tlibversion>
         <jspversion>1.2</jspversion>
         <shortname>firstTag</shortname>
         <info>My First Tag</info>
    <!-- Here goes nothing!!! -->
    <tag>
         <name>hola</name>
         <tagclass>Hola</tagclass>
         <bodycontent>empty</bodycontent>
         <info>a simple hello tag</info>
    <!-- attributes -->
    <!-- Personalize the name -->
    <attribute>
         <name>name</name>
         <required>false</required>
         <rtexpvalue>false</rtexpvalue>
    </attribute>
    </tag>
    </taglib>
    The Hola.jsp is:
    <%@ taglib uri="/Hola" prefix="test" %>
    <html>
         <head>Just a little test on tags</head>
         <body>
              <hr />
              <test:Hola name="Woot Master" />
              <hr />
         </body>
    </html>
    And the source code for the .class file (named Hola) is:
    import javax.servlet.jsp.*;
    import javax.servlet.jsp.tagext.*;
    public class Hola extends TagSupport
         private String name = null;
         public void setName(String value)
              name = value;
         public String getName()
              return(name);
    /* doStartTag is called and defined below here for the java tag */
         public int doStartTag()
              try
                   JspWriter out = pageContext.getOut();
                   out.println("<table border=1>");
                        if (name != null)
                             out.println("<tr><td> Hola " + name + "!" + "</td></tr>");
                        else
                             out.println("<tr><td> Hola! Porque tu es una piquito perra? </td></tr>");
              catch (Exception ex)
                   throw new Error("Dio's Mio!, Esta No Va!, tu problema es en la StartTag!!!");
              return SKIP_BODY;
    /* doEndTag is defined here. */
         public int doEndTag()
              try
                   final JspWriter out = pageContext.getOut();
                   out.println("</table>");
              catch (final Exception ex)
                   throw new Error("Oops, it's broken, check your coding in the End tag!!!");
    What I keep getting is the following error:
    org.apache.jasper.JasperException: /Hola/Hola.jsp(6,2) No tag "Hola" defined in tag library imported with prefix "test"
         org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)
         org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
         org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:198)
    I've been back and forth on this, but I am lost. Obviously I am missing something, but what is it? It wouldn't be in the web.xml file would it? I am running a vanilla tomcat install. Any help that anyone can provide would be greatly appreciated.
    Sincerely,
    - Josh

    Ok
    1 - In the JSP, your tag should be "hola" not "Hola". Yes case matters.
      <test:hola name="Woot Master" />2 - Importing the taglibrary correctly.
    Either reference its tld <%@ taglib uri="/WEB-INF/Hola.tld" prefix="test" %>
    (and have the tld file sitting in /WEB-INF/Hola.tld )
    or
    Define a uri for it in the tld...
    <taglib>
    <tlibversion>1.0</tlibversion>
    <jspversion>1.2</jspversion>
    <shortname>firstTag</shortname>
    <uri>http://mytag/hola</uri>
    ...and then use that uri to import it in your JSP
    <%@ taglib uri="http://mytag/hola" prefix="test" %>
    3 - Put your tag class in a package. Classes not in packages have a way of not being found.
    package mypackage
    import javax.servlet.jsp.*;
    import javax.servlet.jsp.tagext.*;
    public class Hola extends TagSupport {
    ...That will move it in your folder structure to be /mypackage/Hola.java
    You would also need to update the tagclass element in the tld to reflect the change:
    <tagclass>mypackage.Hola</tagclass>4 - Mistake in your tld: You are missing an "r" in "rtexprvalue". <rtexpvalue> should be <rtexp*r*value>
    5 - In your Tag class, you should return something from the "doEndTag()" method.
    return super.doEndTag(); or maybe return EVAL_PAGE;
    Revised code:
    WEB-INF/hola.tld
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
    "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_2.dtd">
    <taglib>
         <tlibversion>1.0</tlibversion>
         <jspversion>1.2</jspversion>
         <shortname>firstTag</shortname>
         <uri>http://mytag/hola</uri>
         <info>My First Tag</info>
         <!-- Here goes nothing!!! -->
         <tag>
              <name>hola</name>
              <tagclass>mypackage.Hola</tagclass>
              <bodycontent>empty</bodycontent>
              <info>a simple hello tag</info>
              <!-- attributes -->
              <!-- Personalize the name -->
              <attribute>
                   <name>name</name>
                   <required>false</required>
                   <rtexprvalue>false</rtexprvalue>
              </attribute>
         </tag>
    </taglib>hola.jsp:
    <%@ taglib uri="http://mytag/hola" prefix="test"%>
    <html>
      <head>Just a little test on tags</head>
      <body>
        <hr />
        <test:hola name="Woot Master" />
        <hr />
      </body>
    </html>Hola.java. Compiles into WEB-INF/classes/mypackage/Hola.class
    package mypackage;
    import javax.servlet.jsp.*;
    import javax.servlet.jsp.tagext.*;
    public class Hola extends TagSupport {
         private String name = null;
         public void setName(String value) {
              name = value;
         public String getName() {
              return (name);
         /* doStartTag is called and defined below here for the java tag */
         public int doStartTag() {
              try {
                   JspWriter out = pageContext.getOut();
                   out.println("<table border=1>");
                   if (name != null)
                        out.println("<tr><td> Hola " + name + "!" + "</td></tr>");
                   else
                        out.println("<tr><td> Hola! Porque tu es una piquito perra? </td></tr>");
              } catch (Exception ex) {
                   throw new Error("Dio's Mio!, Esta No Va!, tu problema es en la StartTag!!!");
              return SKIP_BODY;
         /* doEndTag is defined here. */
         public int doEndTag() {
              try {
                   final JspWriter out = pageContext.getOut();
                   out.println("</table>");
                   return super.doEndTag();
              } catch (final Exception ex) {
                   throw new Error("Oops, it's broken, check your coding in the End tag!!!");
    }Cheers,
    evnafets

  • Problem in tree while using the HTML format in the lable

    Hi all,
    DefaultTreeCellRenderer is not working properly if we pass the string as a html format inside the DefaultMutableTreeNode. Using the below code snipet you can cleraly identify the problem.
    Kindly compile &execute the below code.All the lable's will be painted properly according to the color code that i've mentioned.
    After that please uncomment al the DefaultMutableTreeNode variables corresponding to html tag representation and comment the already existing DefaultMutableTreeNode variables .
    someone please clarify me the things what is happening here?
    import java.awt.BorderLayout;
    import javax.swing.*;
    import javax.swing.tree.*;
    import java.awt.*;
    public class MultiLineTreeDemo extends JFrame {
         private JTree tree;
          final int[] colorcode={0xFF0000,0x00FFFF,0x0000A0,0x800080};
         public static void main( String[] args ) throws Exception {
              SwingUtilities.invokeLater( new Runnable() {
                   public void run() { new MultiLineTreeDemo(); }
         public MultiLineTreeDemo() {
              super( "MultiLineTreeDemo" );
              setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
              DefaultMutableTreeNode root = new DefaultMutableTreeNode( "<html>This is<p>the root node.</html>" );
              DefaultMutableTreeNode node = new DefaultMutableTreeNode( "<html>This is<p>a child node.<html>" );
              DefaultMutableTreeNode leaf = new DefaultMutableTreeNode( "<html>This is<p>a leaf node.<html>" );
              DefaultMutableTreeNode leaf1 = new DefaultMutableTreeNode( "<html>This is<p>a leaf1 node.<html>" );
              /*DefaultMutableTreeNode root = new DefaultMutableTreeNode( " root node" );
              DefaultMutableTreeNode node = new DefaultMutableTreeNode( " child node" );
              DefaultMutableTreeNode leaf = new DefaultMutableTreeNode( " leaf node" );
              DefaultMutableTreeNode leaf1 = new DefaultMutableTreeNode( " leaf1 node" );*/
              node.add(leaf);
              root.add( node );
              root.add( leaf1 );
              tree = new JTree( root );
              tree.setCellRenderer(new DefaultTreeCellRenderer()
                           public Component getTreeCellRendererComponent(JTree pTree,
                               Object pValue, boolean pIsSelected, boolean pIsExpanded,
                               boolean pIsLeaf, int pRow, boolean pHasFocus)
                                JLabel lbl = (JLabel)super.getTreeCellRendererComponent(pTree, pValue, pIsSelected,pIsExpanded, pIsLeaf, pRow, pHasFocus);
                                DefaultMutableTreeNode newNode=(DefaultMutableTreeNode)pValue;
                                if(newNode.isRoot())
                                lbl.setForeground(Color.red);
                                else if(newNode.isLeaf())
                                 lbl.setForeground(Color.green);
                               else
                                lbl.setForeground(Color.blue);
                               JPanel p = new JPanel();
                               p.setBackground(tree.getBackground());
                               Dimension d = lbl.getPreferredSize();
                               p.setPreferredSize(new Dimension(d.width, d.height));
                               p.add(lbl);
                             tree.setRowHeight(80);
                            return (p);
              setLayout( new BorderLayout() );
              JScrollPane scrollPane = new JScrollPane( tree );
              add( scrollPane, BorderLayout.CENTER );
              setSize( 200, 200 );
              setVisible( true );
    }Thanks in Advance.
    Sivabalan

    Then I guess the problems come with setting explicit foreground colours on the one hand and using html on the other, even when not specifying them in the html. Stick to one or the other, I suppose. I'm not a fan of using html in labels so I don't know what problems you might run into.
    I've got rid of setForeground in the renderer and set the font colour in html. Then it is stable:
    import java.awt.BorderLayout;
    import javax.swing.*;
    import javax.swing.tree.*;
    import java.awt.*;
    public class MultiLineTreeDemo extends JFrame {
         private JTree tree;
          final int[] colorcode={0xFF0000,0x00FFFF,0x0000A0,0x800080};
         public static void main( String[] args ) throws Exception {
              SwingUtilities.invokeLater( new Runnable() {
                   public void run() { new MultiLineTreeDemo(); }
         public MultiLineTreeDemo() {
              super( "MultiLineTreeDemo" );
              setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
              DefaultMutableTreeNode root = new DefaultMutableTreeNode( "<html><font color=\"#FF0000\">This is<p>the root node.</font></html>" );
              DefaultMutableTreeNode node = new DefaultMutableTreeNode( "<html><font color=\"#0000FF\">This is<p>a child node.</font><html>" );
              DefaultMutableTreeNode leaf = new DefaultMutableTreeNode( "<html><font color=\"#00FF00\">This is<p>a leaf node.</font><html>" );
              DefaultMutableTreeNode leaf1 = new DefaultMutableTreeNode( "<html><font color=\"#00FF00\">This is<p>a leaf1 node.</font><html>" );
              DefaultMutableTreeNode root = new DefaultMutableTreeNode( " root node" );
              DefaultMutableTreeNode node = new DefaultMutableTreeNode( " child node" );
              DefaultMutableTreeNode leaf = new DefaultMutableTreeNode( " leaf node" );
              DefaultMutableTreeNode leaf1 = new DefaultMutableTreeNode( " leaf1 node" );
              node.add(leaf);
              root.add( node );
              root.add( leaf1 );
              tree = new JTree( root );
              tree.setCellRenderer(new DefaultTreeCellRenderer()
                           public Component getTreeCellRendererComponent(JTree pTree,
                               Object pValue, boolean pIsSelected, boolean pIsExpanded,
                               boolean pIsLeaf, int pRow, boolean pHasFocus)
                                JLabel lbl = (JLabel)super.getTreeCellRendererComponent(pTree, pValue, pIsSelected,pIsExpanded, pIsLeaf, pRow, pHasFocus);
                                DefaultMutableTreeNode newNode=(DefaultMutableTreeNode)pValue;
    //                            if(newNode.isRoot())
    //                            lbl.setForeground(Color.red);
    //                            else if(newNode.isLeaf())
    //                             lbl.setForeground(Color.green);
    //                           else
    //                            lbl.setForeground(Color.blue);
                               //JPanel p = new JPanel();
                               //p.setBackground(tree.getBackground());
                               //Dimension d = lbl.getPreferredSize();
                               //p.setPreferredSize(new Dimension(d.width, d.height));
                               //p.add(lbl);
                             //tree.setRowHeight(80);
                            //return (p);
                            return (lbl);
              setLayout( new BorderLayout() );
              JScrollPane scrollPane = new JScrollPane( tree );
              add( scrollPane, BorderLayout.CENTER );
              setSize( 200, 200 );
              setVisible( true );
    }

  • Problems in developing custom JSP tags

    I have problems in debugging custom JSP tags. Sometimes the doStartTag is not called on tags but the doEndTag is called. I don't know why.
    Thanks.

    Fahr--
    A word of caution -- NetUI did not ship a JSP tag SDK in 8.x, and
    we're making no compatibility guarantees for custom JSP tags written on
    the 8.x release and future releases.
    You can accomplish the same sort of functionality with a combination
    of the <netui-data:getData> tag and JSTL 1.0. This solution would
    probably provide similar functionality and be more future-proof relative
    to JSTL and the NetUI tags currently being developed in Beehive.
    Hope that helps.
    Eddie
    Fahr Vegnugen wrote:
    We are in the midst of creating our own JSP tags to work with datasources.
    In an example where you would need to compare two different datasources how would you do this?
    ie.
    <prefix:isGreater dataSource="{pageflow.column1}" dataSourceToCompare="{pageFlow.column2}" />
    How would I evaluate what column2 is since the tag will only resolve one data source
    this.evaluateDataSource();
    Any pointers you can provide would be appreciated, or if there is a library of jsp tags that evaluate objects using datasources already created, that would even be better.

  • Problem with boolean attribute of JSP tag

    Hi,
    I've being trying to use a custom JSP tag, which has a boolean attribute, declared in the TLD as follows:
    <attribute>
    <name>checked</name>
    <required>false</required>
    <rtexprvalue>true</rtexprvalue>
    <type>boolean</type>
    </attribute>
    The JSP code snippet is:
    <ui:check checked="<%= myBean.isChecked() %>"/>
    where myBean.isChecked() returns a boolean value (primitive type).
    It works fine on some web containers, but it causes a JSP compilation error on Oracle9iAS 9.0.3 Java Edition, which looks like the following:
    Method toBoolean(boolean) not found in class test. _jsp_taghandler_57.setChecked( OracleJspRuntime.toBooleanObject( toBoolean( myBean.isChecked())));
    After decompiling the container's JSP parser, I found what I think it's a bug. The java class generated by the JSP parser does not define a toBoolean method, and neither do its superclasses. The method is defined on the OracleJspRuntime class! I think the correct code would have to be something like:
    OracleJspRuntime.toBooleanObject(OracleJspRuntime.toBoolean(...))
    If I'm correct, then the "convertExpression" method of the "oracle.jsp.parse.JspUtils" class must be changed, because it outputs such wrong code for not just boolean types, but for all the primitive types.
    So, has anyone ever faced this problem before? Does it have a workaround, or a patch? Is it included on the bug fixes for the 9.0.4 release?
    Thanks!

    Instead of:
    out.println("<body onload ="+strAlert+">");
    Try this:
    out.println("<body onload =\""+strAlert+\"">");
    Add two \" around the alert call.

  • Problem reading external HTML format from text file

    I have a text file containing html formatted text which I try to get into a textfield.
    All works fine locally and even on my localhost test server, but when uploading to the real server - I get a blank.
    Anyone have any ideas? THANKS
    The text file :
    &t2=<TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="Comic Sans MS" SIZE="14" COLOR="#FF0000" LETTERSPACING="0" KERNING="0">Some text here</FONT></P></TEXTFORMAT><TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="Comic Sans MS" SIZE="14" COLOR="#FF0000" LETTERSPACING="0" KERNING="0">One more line</FONT></P></TEXTFORMAT><TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="Comic Sans MS" SIZE="14" COLOR="#FF0000" LETTERSPACING="0" KERNING="0">And more text here</FONT></P></TEXTFORMAT>
    and the AS code in the movie:
    viewData.onPress = function() {
         //get text
         loadText()
    var tz
    function loadText() {
    var my_lv:LoadVars = new LoadVars();
    my_lv.onLoad = function(success:Boolean) {
      if (success) {
      //trace(this.toString())
      mytext.htmlText= this.t2;
      } else {
      //trace("Error loading/parsing LoadVars.");
    my_lv.load("myfile.txt");

    Thanks kglad, I did it and it made me find the real problem:
    The text file is generated by PHP script that gets an html formated text from flash (it is an online editing part of an application):
    the AS code to call the php:
    var send_lv:LoadVars = new LoadVars();
    send_lv.t1 = "&t2="+editor.t1.htmlText+"&";
    send_lv.sendAndLoad("write.php", res_lv, "POST");
    the PHP:
    <?php
    $mydata = $_POST["t1"];
    $myFile = "recipe.txt";
    $fh = fopen($myFile, 'w') or die("can't open file");
    fwrite($fh, $mydata);
    fclose($fh);
    print "&done=done";
    ?>
    From some reason the online server adds \ before any " , but WAMP doesn't.
    here is the text generated on localhost (WAMP)
    &t2=<TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="Comic Sans MS" SIZE="14" COLOR="#FF0000" LETTERSPACING="0" KERNING="0">local text</FONT></P></TEXTFORMAT>&
    online server:
    &t2=<TEXTFORMAT LEADING=\"2\"><P ALIGN=\"LEFT\"><FONT FACE=\"Comic Sans MS\" SIZE=\"14\" COLOR=\"#FF0000\" LETTERSPACING=\"0\" KERNING=\"0\">online text</FONT></P></TEXTFORMAT>&
    I know its not a Flash problem now, but do you have any idea?
    Thanks

  • Problem with jsp tag in jsf file c:import

    <!-- <c:import url="#{backing_Home.whichMenu}"/>-->
    <jsp:include page="#{backing_Home.whichMenu}"/>
    I am trying to use a JSF variable in jsp tag
    I am getting error like this
    javax.servlet.jsp.JspTagException: /#{backing_Home.whichMenu}     at org.apache.taglibs.standard.tag.common.core.ImportSupport.acquireString(ImportSupport.java:318)     at org.apache.taglibs.standard.tag.common.core.ImportSupport.doEndTag(ImportSupport.java:186)     at _Home_2e_jsp._jspService(Home.jsp:24) I want to add a page dynamically using that variable
    Is there any other method

    This code works fine for me:
    <%@ taglib uri="/jstl-c" prefix="c" %>
    <html>
         <body>
         <%
              int array[] = new int[] {1,2};
              session.setAttribute("array", array);
              String arrayNames[] = new String[]{"One", "Two"};
              session.setAttribute("arrayNames", arrayNames);
         %>
              <form action="?">
              <select name="select">
                   <c:forEach items='${ sessionScope.array}' var="row">
                        <c:choose>  
                             <c:when test="${param.select== row}"> >
                                  <option value="<c:out value='${row}'/>" selected><c:out value="${sessionScope.arrayNames[row-1]}"/></option>
                             </c:when>   
                             <c:otherwise>
                                  <option value="<c:out value='${row}'/>"><c:out value="${sessionScope.arrayNames[row-1]}"/></option>
                             </c:otherwise>
                        </c:choose>
                   </c:forEach>
              </select>
              <input type="submit" name="submit" value="submit"></input>
              </form>
         </body>
    </html>
    good luck.
    MatrixPooh
    www.bizdisplay.com

  • How to send mail in html format in jsp???

    Hello everybody,
    I have two jsp pages.In one page I have the heading like Date,Transaction.I am retriving data from my second jsp page.And I hae included the second jsp page to my first jsp page.How to send mail this content in html format.
    Thanks
    Srikant

    MimeMessage m = new MimeMessage(session);
    BodyPart messageBodyPart = new MimeBodyPart();
    messageBodyPart.setContent(content, "text/html");this if u need to send a mail content as html

  • Jsp tags in .html pages

    Hi
    Is possible to put jsp tags in pages .html?
    I try this example:
    <html>
    <head>
    <title></title>
    </head>
    <%
    out.print("teste");
    %>
    <body>
    </body>
    </html>
    and the result in the page is the jsp code. Tomcat don't print "teste", print out.print("teste");.
    Is possible to do this.
    Thanks in advance.
    Lu�s Matos

    What do you expect to happen? Who would you expect to print anything? Your browser is the only instance that reads HTML, and it's not a servlet container. JSPs have to be compiled and executed by such a container like Tomcat.

  • JSP Tags problem

    I am using jsp tags and i have some text boxes defined like this:
    <html:text property="textbox"/>
    and from js i want to make some validations an i get the values from the text boxes like this: document.getElementById("textbox")
    I am testing my application from eclipse and from there it works just fine but when i try to run it under firefox document.getElementById("textbox") it doesn't work
    could some one tell me why
    thanks in advance,
    David

    View source, does the generated <input type="text" have an id of textbox? If not, then you need to change the custom tag attributes so it does (id="textbox" ?)
    Chris

Maybe you are looking for