Sub components problem in custom tag

Hi!
Im writing custom tag that do nothing but can contains other components.
So first I create custom tag with hendler that extends UIComponentTag and component class that extends UIComponentBase
now tag work but i dont see sub components on the page
Second i override encodeChildren and getFamily methods with:
public String getFamily() {       
        return "MyCaller";
public void encodeChildren(FacesContext context) throws IOException {
        Iterator ch=this.getChildren().iterator();
        while(ch.hasNext()){
             UIComponent oKid = (UIComponent)ch.next();
             if(oKid.isRendered()){
                oKid.encodeBegin(context);
                oKid.encodeChildren(context);
                oKid.encodeEnd(context);
        super.encodeChildren(context);
    }But subcomponents not rendered on page.
So are you know whats wrong

the problem was in wrong getComponentType() that return wrong value

Similar Messages

  • Problem with custom tag attribute types

    Hi,
    I try to figure out how to pass an attribute to a custom tag that is of a type other than "String"?
    In my case, I should pass an attribute with a type of "java.util.ResourceBundle".
    My tag looks like this:
    <tt:cs sel="ab" ce="<%= java.util.ResourceBundle.getBundle("de", Application.getApp().getLocale())%>" />
    I always get the message that the attribute ce is empty.
    Isn't it possible to have attirbutes that are of an other type than string? How could I solve this problem?
    Thanks a lot!
    Regards Patrick

    In JSP 1.2, in the Tag Library Descriptor, you can specify a tagt attribute as
    <attribute>
       <name>attr1</name>
       <required>true|false|yes|no</required>
       <rtexprvalue>true|false|yes|no</rtexprvalue>
       <type>fully-qualified_type</type>
    </attribute> Notice the XML element <type>fully-qualified_type</type>
    Not sure if you can do this in JSP 1.1

  • Jsp:include problem in custom tag

    I call <jsp:include page="emailbody.jsp" /> within a custom tag(in a file
              caller.jsp), which does emailing.
              When I invoke caller.jsp from browser, I do get the output(body of the
              email) on the browser screen, but not the output is not send as the body of
              the email.
              When I use static include namely, <@include file="emailbody.jsp" />, the
              output is directed to the body of the email.
              The above means, for a static jsp include file, it is parsed and included in
              the body-evaluation of the custom tag.
              For a dynamic include file, it is NOT parsed and NOT included in the
              body-evaluation of the custome tag.
              The reason could be, How Weblogic loads classes for custom-tag for dynamic
              include files.
              Can anybody at BEA throw loght on this and the solution.
              Thanks in advance.
              Chandra
              

    Well I found out jsp:include is not supported inside custom tags for JSP
              spec 1.1.
              This was stated in section 5.4.5 of spec 1.1.
              May be in future spec 1.2.
              Thanks
              Chandra
              "Cameron Purdy" <[email protected]> wrote in message
              news:[email protected]...
              > Have you sent this to [email protected]?
              >
              > It sounds serious.
              >
              > Peace,
              >
              > --
              > Cameron Purdy
              > Tangosol, Inc.
              > http://www.tangosol.com
              > +1.617.623.5782
              > WebLogic Consulting Available
              >
              >
              > "matthew mcclain" <[email protected]> wrote in message
              > news:[email protected]...
              > > I have run into the same problem.
              > > I'm certain it's because CustomTags have their own buffer and
              > > jsp:include or pageContext.include() or requestDispatcher.include()
              > > all bypass the buffer and write to the underlying stream.
              > >
              > > I attempted to define jspx:include by wrapping the response object
              > > which is sent to requestDispatcher.include and then wrapping the
              > > OutputStream returned from the response with a stream which
              > > writes to the "out" of the pageContext for my tag.
              > >
              > > Unfortunately, I get a class cast exception because weblogic expects
              > > it's own class to be there as a ServletOutputStream:
              > >
              > > java.lang.ClassCastException:
              com.allmystuff.wif.IncludeServletResponse$1
              > > at
              > >
              >
              weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImp
              > > l.java:202)
              > > at
              > >
              >
              weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImp
              > > l.java:172)
              > > at com.allmystuff.wif.Include.doStartTag(Include.java:37)
              > >
              > > So any chance, jsp:include will get fixed?
              > >
              > > Thanks,
              > > Matthew McClain
              > > [email protected]
              > >
              > >
              > > "chandra" <[email protected]> wrote in message
              > > news:[email protected]...
              > > > I call <jsp:include page="emailbody.jsp" /> within a custom tag(in a
              > file
              > > > caller.jsp), which does emailing.
              > > > When I invoke caller.jsp from browser, I do get the output(body of the
              > > > email) on the browser screen, but not the output is not send as the
              body
              > > of
              > > > the email.
              > > > When I use static include namely, <@include file="emailbody.jsp" />,
              the
              > > > output is directed to the body of the email.
              > > >
              > > > The above means, for a static jsp include file, it is parsed and
              > included
              > > in
              > > > the body-evaluation of the custom tag.
              > > > For a dynamic include file, it is NOT parsed and NOT included in the
              > > > body-evaluation of the custome tag.
              > > > The reason could be, How Weblogic loads classes for custom-tag for
              > dynamic
              > > > include files.
              > > > Can anybody at BEA throw loght on this and the solution.
              > > > Thanks in advance.
              > > > Chandra
              > > >
              > > >
              > >
              > >
              >
              >
              

  • Problem with custom tag

    I have written a custom tag that I am having problems with. It works on some machines, but not on others. I have a page that uses many 'standard' tags. I have correctly set the URI etc, because all of my other tags work. However, on some machines, my custom tag gives me an error:
    attribute does not support request time values
    I'm assuming that I have the correct versions of standard.jar etc because all of the regular jstl 1.1 tags work. It is just my custom tag that throws an error.
    here is the .tld for my tag:
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN" "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">
    <taglib>
         <tlib-version>1.1.2</tlib-version>
         <jsp-version>1.2</jsp-version>
         <short-name>My custom tag</short-name>
         <uri>http://my.custom/tags</uri>
         <tag>
              <name>breadcrumb</name>
              <tag-class>tag.BreadcrumbTag</tag-class>
              <body-content>JSP</body-content>
              <attribute>
                   <name>breadcrumbs</name>
                   <required>true</required>
                   <rtexprvalue>false</rtexprvalue>
                   <description>Pass in the list of Breadcrumbs containing the actual information
    about what tags need to be rendered on the page.</description>
              </attribute>
         </tag>
    </taglib>
    Any thoughts/help greatly appreciated...

    I encountered the same problem in our environment. I did the same thing as
              James. Simply re-initialize all variables in the do end tag.
              Also, with the nested tags you use you may also need to implement cloneable
              in the inner tag if the outer tag keeps references to all the inner tag
              instances.
              For instance if the outer tag kept a vector of references to the inner tag,
              then you would need to use clone() on the inner tag before adding it to the
              vector.
              "James Lynn" <[email protected]> wrote in message
              news:3af05d29$[email protected]..
              > > But
              > > with WL 6.0, the cell tag handler reuse the same instance each time the
              > cell tag
              > > is called and the member field is not reset
              >
              > I had the same problem. As a work around, I reinitialize everything in my
              > doEndTag() method and it works.
              >
              >
              > --
              > James Lynn - Lead Software Architect
              > Oakscape - Java Powered eBusiness Solutions <http://www.oakscape.com/>
              >
              >
              

  • Problems with custom tags (Tomcat 4.1)

    I have been trying to set up an existing web application to use a custom tag library. I have these tag-related files:
    /photodb/WEB-INF/photodb.tld
    /photodb/WEB-INF/classes/PhotoListTag.class
    /photodb/photolist.jsp
    This is how i have the photoList tag configured in photodb.tld
    <tag>
    <name>photoList</name>
    <tag-class>PhotoListTag</tag-class>
    <body-content>JSP</body-content>
    <attribute>
    <name>startIndex</name>
    </attribute>
    </tag>
    When i try to view photolist.jsp, i get this error:
    org.apache.jasper.JasperException: Unable to compile class for JSP
    An error occurred at line: -1 in the jsp file: null
    Generated servlet error:
    [javac] Compiling 1 source file
    C:\Program Files\Apache Group\Tomcat 4.1\work\Standalone\localhost\photodb\photolist_jsp.java:73: cannot resolve symbol
    symbol : class PhotoListTag
    location: class org.apache.jsp.photolist_jsp
    PhotoListTag jspxth_photodb_photoList_0 = (PhotoListTag) jspxtagPool_photodb_photoList.get(PhotoListTag.class);
    ^
    C:\Program Files\Apache Group\Tomcat 4.1\work\Standalone\localhost\photodb\photolist_jsp.java:73: cannot resolve symbol
    symbol : class PhotoListTag
    location: class org.apache.jsp.photolist_jsp
    PhotoListTag jspxth_photodb_photoList_0 = (PhotoListTag) jspxtagPool_photodb_photoList.get(PhotoListTag.class);
    ^
    C:\Program Files\Apache Group\Tomcat 4.1\work\Standalone\localhost\photodb\photolist_jsp.java:73: cannot resolve symbol
    symbol : class PhotoListTag
    location: class org.apache.jsp.photolist_jsp
    PhotoListTag jspxth_photodb_photoList_0 = (PhotoListTag) jspxtagPool_photodb_photoList.get(PhotoListTag.class);
    ^
    3 errors
    I have tried many ideas, such as packaging the tag handler class, and putting the class file in other loctions, but nothing has helped.
    I know that Tomcat is recognizing PhotoListTag at some point (when it parses the TLD file, but not when compiling the JSP, I think), because if i change the <tag-class> to an invalid class, i get an "Unable to load class photoList" (which is a confusing error message btw, as photoList is not a class, but a tag name).
    Does anyone know how to fix this problem? I've been going in circles for hours, and i'm thinking this problem has a simple solution.

    Thank you for your quick replies. Unfortunately, they do not solve my problem. If I put PhotoListTag in the com.yourdomain package (and move it to classes/com/yourdomain), the error changes to reflect the different package (e.g. package com.yourdomain does not exist). Also, deleting the class files and restarting Tomcat did not cause any changes.
    Although my knowledge of how Tomcat works is limited, it seems to me that something like this is happening:
    When a request for /photodb/photolist.jsp is recieved, tomcat processes that file, processes the tld file, and checks for that any classes called using a tag--in this case <photodb:photoList>--exist. If the class is invalid, the error message "Unable to load class photoList" is given.
    Otherwise, it translates the jsp into java, and attempts to compile it. This is where the problem occurs. It seems that the jasper compiler does not know where to look for the PhotoListTag class. Is there a way that this can be changed, or is could the problem be caused by something else?

  • Problem creating custom tag

    I tried to create a simple custom tag using apache webserver. my jsp file is HelloWorld.jsp (for presentation, codes listed below), my HelloWorld.java class (listed below) ,a and my TLD file is called WoaTagLibDesc (also listed below). I ran this and I got this error message below:
    HTTP status 404
    type status report
    message:
    description The requested resource () is not available.
    Apache Tomcat/6.0.18
    Can anybody advise me on what to do please
    (1) HelloWorld.jsp
    <%@page contentType="text/html" pageEncoding="UTF-8"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <%@taglib uri="/WEB-INF/woatags/WoaTagLibDesc.tld" prefix="mt" %>
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title>JSP Page</title>
        </head>
        <body>
            <mt:helloWorld/>
        </body>
    </html>
    (2) WoaTagLibDesc.tld<?xml version="1.0" encoding="UTF-8"?>
    <taglib version="2.0" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-jsptaglibrary_2_0.xsd">
    <tlib-version>1.0</tlib-version>
    <short-name>woataglibdesc</short-name>
    <uri>/WEB-INF/woatags/WoaTagLibDesc</uri>
    <tag>
    <name>helloWorld</name>
    <tag-class>woatag.HelloWorldTag</tag-class>
    <body-content>empty</body-content>
    </tag>
    </taglib>
    (3) HelloWorldTag.java
    import java.io.IOException;
    import javax.servlet.jsp.*;
    import javax.servlet.jsp.tagext.*;
    public class HelloWorldTag implements Tag {
        private PageContext pageContext;
        private Tag parent;
        public HelloWorldTag() {
            super();
        public void setPageContext(final PageContext pageContext) {
            this.pageContext = pageContext;
        public void setParent(final Tag parent) {
            this.parent = parent;
        public javax.servlet.jsp.tagext.Tag getParent() {
            return parent;
        public int doStartTag() throws JspException {
            return SKIP_BODY;
        public int doEndTag() throws JspException {
            try {
                pageContext.getOut().write("Hello World!");
            } catch (IOException e) {
                throw new JspTagException("IO Error: " + e.getMessage());
            return EVAL_PAGE;
        public void release() {
    }

    Your class (according to what is posted) is in the package mytag.
    So in your tld: <tagclass>tag.Hello</tagclass>should be<tagclass>mytag.Hello</tagclass>cheers,
    evnafets

  • Problem with custom tags

    Hello..
    I have created custom tags and she gives an error me.
    The code is:
    <%@ taglib uri="mitaglib.tld" prefix="ejemplos" %>
    <HTML>
    <HEAD>
    <TITLE>Tag Hola Mundo</TITLE>
    </HEAD>
    <ejemplos:holamundo/><br>
    <ejemplos:SumaTag num1="2" num2="6" />
    </BODY>
    </HTML>
    The class:
    package helperClasses;
    import java.io.*;
    import javax.servlet.jsp.*;
    import javax.servlet.jsp.tagext.*;
    public class hm extends TagSupport{
    public int doStartTag() throws JspException
    try
    pageContext.getOut().print("Hola Mundo");
    catch (IOException e)
    throw new JspException("Error: IOException" + e.getMessage());
    return SKIP_BODY;
    public int doEndTag() throws JspException
    return EVAL_PAGE;
    package helperClasses;
    import java.io.*;
    import javax.servlet.jsp.*;
    import javax.servlet.jsp.tagext.*;
    public class SumaTag extends TagSupport{
    private int num1,num2;
    public void setNum1(int num1){
    this.num1 = num1;
    public void setNum2(int num2){
    this.num2 = num2;
    public int doStartTag() throws JspException {
    try{
    pageContext.getOut().print("Suma: " + (num1+num2));
    } catch (IOException e) {
    throw new JspException ("Error: IOException" +
    e.getMessage());
    return SKIP_BODY;
    public int doEndTag() throws JspException {
    return SKIP_PAGE;
    The file mitaglib.tld is:
    <?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_1.dtd">
    <taglib>
    <tlibversion>1.0</tlibversion>
    <jspversion>1.1</jspversion>
    <shortname>ejemplos</shortname>
    <uri></uri>
    <info>Etiquetas de ejemplo</info>
         <tag>
         <name>holamundo</name>
         <tagclass>helperClasses.hm</tagclass>
         <bodycontent>empty</bodycontent>
         <info>Saludo</info>
         </tag>
         <tag>
         <name>suma</name>
         <tagclass>helperClasses.SumaTag</tagclass>
         <bodycontent>empty</bodycontent>
         <info>Saludo</info>
         <attribute>
         <name>num1</name>
         <required>true</required>
         <rtexprvalue>false</rtexprvalue>
         </attribute>
         <attribute>
              <name>num2</name>
         <required>true</required>
         <rtexprvalue>false</rtexprvalue>
         </attribute>
         </tag>
    </taglib>

    [22/Dec/2003:09:43:47] failure (11848): Internal error: Unexpected error condition thrown (unknown exception,no description), stack: java.lang.NoSuchMethodError: javax.servlet.jsp.tagext.TagAttributeInfo.<init>(Ljava/lang/String;ZLjava/lang/String;Z)V
         at org.apache.jasper.compiler.TagLibraryInfoImpl.createAttribute(TagLibraryInfoImpl.java:518)
         at org.apache.jasper.compiler.TagLibraryInfoImpl.createTagInfo(TagLibraryInfoImpl.java:426)
         at org.apache.jasper.compiler.TagLibraryInfoImpl.parseTLD(TagLibraryInfoImpl.java:379)
         at org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:227)
         at org.apache.jasper.compiler.JspParseEventListener.handleDirective(JspParseEventListener.java:701)
         at org.apache.jasper.compiler.DelegatingListener.handleDirective(DelegatingListener.java:110)
         at org.apache.jasper.compiler.Parser$Directive.accept(Parser.java:215)
         at org.apache.jasper.compiler.Parser.parse(Parser.java:1077)
         at org.apache.jasper.compiler.Parser.parse(Parser.java:1042)
         at org.apache.jasper.compiler.Parser.parse(Parser.java:1038)
         at org.apache.jasper.compiler.Compiler.compile(Compiler.java:218)
         at org.apache.jasper.servlet.JspServlet$JspServletWrapper.loadJSP(JspServlet.java:193)
         at org.apache.jasper.servlet.JspServlet$JspServletWrapper.access$4(JspServlet.java:167)
         at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:477)
         at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:589)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
         at com.iplanet.server.http.servlet.NSServletRunner.invokeServletService(NSServletRunner.java:897)
         at com.iplanet.server.http.servlet.WebApplication.service(WebApplication.java:1065)
         at com.iplanet.server.http.servlet.NSServletRunner.ServiceWebApp(NSServletRunner.java:959)

  • Problem creating custom tags for site that has no outside internet connecti

    I've created a set of custom tags that work fine until we install our app at the customer site. The customer site has no outside Internet access, and so the DOCTYPE is failing since it references the web-jsptaglibrary_1_1.dtd located on Sun's site.
    I tried copying the dtd locally and got it to work, but the solution sucks because this web-jsptaglibrary_1_1.dtd file is referenced in both my taglib.tld file AND the web-jsptaglibrary_1_1.dtd itself. Soooo....I can put in a URL that references it on the local machine, e.g.,
    In the taglib.tld file:
    <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.// DTD JSP Tag Library 1.1//EN"
    "http://ClientAAA/web-jsptaglibrary_1_1.dtd">
    In the web-jsptaglibrary_1_1.dtd file:
    <!ATTLIST taglib id ID #IMPLIED
    xmlns CDATA #FIXED
    "http://ClientAAA/AdProduction/web-jsptaglibrary_1_1.dtd"
    >
    but that means for every client that uses this app (and we have several) I have to change that URL inside both these files.
    I tried simply changing it to the relative "web-jsptaglibrary_1_1.dtd", e.g.,
    taglib.tld:
    <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.// DTD JSP Tag Library 1.1//EN"
    "web-jsptaglibrary_1_1.dtd">
    web-jsptaglibrary_1_1.dtd:
    <!ATTLIST taglib id ID #IMPLIED
    xmlns CDATA #FIXED
    "web-jsptaglibrary_1_1.dtd"
    >
    but then it is requiring me to put the dtd in both my web app root directory AND my jakarta/bin directory. I get the following error:
    XML parsing error on file ../vtaglib.tld: java.io.FileNotFoundException: D:\jakarta\jakarta-tomcat-4.1.29\bin\web-jsptaglibrary_1_1.dtd (The system cannot find the file specified)
    It seems like I must be missing something here. This shouldn't be this hard. And it seems funny that to use custom tags, you have to have Internet access in the first place.
    Help!!! :)
    Thanks.

    Yeah, I think it's a bit ridiculous that in order to make all the tag library examples and instructions work, you have to have access to the Internet. I haven't seen a single example on how to make it work if there is no Internet access. That's very limiting. And I've tried all sorts of other ways of doing it, such as
    <!DOCTYPE taglib SYSTEM "web-jsptaglibrary_1_1.dtd">
    but even then it won't work because I get an error message saying:
    XML parsing error on file /assets/../vtaglib.tld: java.io.FileNotFoundException: D:\jakarta\jakarta-tomcat-4.1.29\bin\web-jsptaglibrary_1_1.dtd (The system cannot find the file specified)
    I just don't think I should have to place this file in the bin directory. There has to be another way. Do I need to modify the dtd somehow? Cuz the dtd has the following line...is this messing it up??
    <!ATTLIST taglib id ID #IMPLIED xmlns CDATA #FIXED "web-jsptaglibrary_1_1.dtd">
    I sure could use some help.

  • Problem using custom tag library in portlet's jsp

    Hi,
    I created a custom portlet (a JSR 168 portlet) and I'm using a tag library that I previously developed. Normally it works fine, but sometimes I get a ClassCastException. Once I redeploy the portlet everything works again. This is Oracle Portal 10.1.4.
    Has anybody encountered similar problems?
    Here's the exception:
    taglib exception:
    java.lang.ClassCastException at timecardreminderportlet.html._view._jspService(_view.java:201) at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56) at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:350) at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:509) at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:413) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:824) at com.evermind.server.http.ServletRequestDispatcher.include(ServletRequestDispatcher.java:121) at oracle.webdb.wsrp.server.RequestDispatcherImpl.include(Unknown Source) at org.mitre.isis.trs.reminder.portlet.TimecardReminderPortlet.doDispatch(TimecardReminderPortlet.java:108) at javax.portlet.GenericPortlet.render(Unknown Source) at oracle.webdb.wsrp.server.Server.getMarkup(Unknown Source) at oracle.webdb.wsrp.WSRP_v1_Markup_PortType_Tie.invoke_getMarkup(WSRP_v1_Markup_PortType_Tie.java:224) at oracle.webdb.wsrp.WSRP_v1_Markup_PortType_Tie.processingHook(WSRP_v1_Markup_PortType_Tie.java:499) at com.sun.xml.rpc.server.StreamingHandler.handle(StreamingHandler.java:230) at com.sun.xml.rpc.server.http.ea.JAXRPCServletDelegate.doPost(JAXRPCServletDelegate.java:153) at com.sun.xml.rpc.server.http.JAXRPCServlet.doPost(JAXRPCServlet.java:69) at javax.servlet.http.HttpServlet.service(HttpServlet.java:760) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65) at oracle.webdb.wsrp.server.ContextFilter.doFilter(Unknown Source) at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:663) at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330) at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:830) at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:224) at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:133) at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192) at java.lang.Thread.run(Thread.java:534)

    Hi,
    I created a custom portlet (a JSR 168 portlet) and I'm using a tag library that I previously developed. Normally it works fine, but sometimes I get a ClassCastException. Once I redeploy the portlet everything works again. This is Oracle Portal 10.1.4.
    Has anybody encountered similar problems?
    Here's the exception:
    taglib exception:
    java.lang.ClassCastException at timecardreminderportlet.html._view._jspService(_view.java:201) at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56) at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:350) at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:509) at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:413) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:824) at com.evermind.server.http.ServletRequestDispatcher.include(ServletRequestDispatcher.java:121) at oracle.webdb.wsrp.server.RequestDispatcherImpl.include(Unknown Source) at org.mitre.isis.trs.reminder.portlet.TimecardReminderPortlet.doDispatch(TimecardReminderPortlet.java:108) at javax.portlet.GenericPortlet.render(Unknown Source) at oracle.webdb.wsrp.server.Server.getMarkup(Unknown Source) at oracle.webdb.wsrp.WSRP_v1_Markup_PortType_Tie.invoke_getMarkup(WSRP_v1_Markup_PortType_Tie.java:224) at oracle.webdb.wsrp.WSRP_v1_Markup_PortType_Tie.processingHook(WSRP_v1_Markup_PortType_Tie.java:499) at com.sun.xml.rpc.server.StreamingHandler.handle(StreamingHandler.java:230) at com.sun.xml.rpc.server.http.ea.JAXRPCServletDelegate.doPost(JAXRPCServletDelegate.java:153) at com.sun.xml.rpc.server.http.JAXRPCServlet.doPost(JAXRPCServlet.java:69) at javax.servlet.http.HttpServlet.service(HttpServlet.java:760) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65) at oracle.webdb.wsrp.server.ContextFilter.doFilter(Unknown Source) at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:663) at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330) at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:830) at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:224) at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:133) at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192) at java.lang.Thread.run(Thread.java:534)

  • Problem using Custom tag in JSP

    Iam facing problem when i am deploying my files on j2ee 1.4 server it give following erroer::
    my .tld file and jsp are given below
    any body can help me;
    mytaglib.tld file:
    <<?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_1.dtd">
    <!-- a tag library descriptor -->
    <taglib>
    <tlibversion>1.0</tlibversion>
    <jspversion>1.1</jspversion>
    <shortname>first</shortname>
    <uri></uri>
    <info>A simple tab library for the
    examples</info>
    <tag>
    <name>hello</name>
    <tagclass>tags.HelloTag</tagclass>
    <bodycontent>empty</bodycontent>
    <info>Say Hi</info>
    </tag>
    </taglib>
    MY JSP file :::
    <%@ taglib uri="/WEB-INF/mytaglib.tld"
    prefix="first" %>
    <HTML>
    <HEAD>
    <TITLE>Hello Tag</TITLE>
    </HEAD>
    <BODY bgcolor="#ffffcc">
    <B>My first tag prints</B>:
    <first:hello/>
    </BODY>
    </HTML>
    Error :::
    org.apache.jasper.JasperException: Unable to initialize TldLocationsCache: XML parsing error on file /WEB-INF/mytaglib.tld: (line 1, col 2)
         org.apache.jasper.compiler.TldLocationsCache.init(TldLocationsCache.java:218)
         org.apache.jasper.compiler.TldLocationsCache.getLocation(TldLocationsCache.java:188)
         org.apache.jasper.JspCompilationContext.getTldLocation(JspCompilationContext.java:515)
         org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:460)
         org.apache.jasper.compiler.Parser.parseDirective(Parser.java:526)
         org.apache.jasper.compiler.Parser.parseElements(Parser.java:1617)
         org.apache.jasper.compiler.Parser.parse(Parser.java:174)
         org.apache.jasper.compiler.ParserController.parse(ParserController.java:244)
         org.apache.jasper.compiler.ParserController.parse(ParserController.java:146)
         org.apache.jasper.compiler.ParserController.parse(ParserController.java:132)
         org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:245)
         org.apache.jasper.compiler.Compiler.compile(Compiler.java:462)
         org.apache.jasper.compiler.Compiler.compile(Compiler.java:448)
         org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:551)
         org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:300)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         java.lang.reflect.Method.invoke(Method.java:324)
         org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:284)
         java.security.AccessController.doPrivileged(Native Method)
         javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
         org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:306)
         org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:200)

    thanks for reply it still giving error :
    org.apache.jasper.JasperException: Unable to initialize TldLocationsCache: XML parsing error on file /WEB-INF/mytaglib.tld
         org.apache.jasper.compiler.TldLocationsCache.init(TldLocationsCache.java:218)
         org.apache.jasper.compiler.TldLocationsCache.getLocation(TldLocationsCache.java:188)
         org.apache.jasper.JspCompilationContext.getTldLocation(JspCompilationContext.java:515)
         org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:460)
         org.apache.jasper.compiler.Parser.parseDirective(Parser.java:526)
         org.apache.jasper.compiler.Parser.parseElements(Parser.java:1617)
         org.apache.jasper.compiler.Parser.parse(Parser.java:174)
         org.apache.jasper.compiler.ParserController.parse(ParserController.java:244)
         org.apache.jasper.compiler.ParserController.parse(ParserController.java:146)
         org.apache.jasper.compiler.ParserController.parse(ParserController.java:132)
         org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:245)
         org.apache.jasper.compiler.Compiler.compile(Compiler.java:462)
         org.apache.jasper.compiler.Compiler.compile(Compiler.java:448)
         org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:551)
         org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:300)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         java.lang.reflect.Method.invoke(Method.java:324)
         org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:284)
         java.security.AccessController.doPrivileged(Native Method)
         javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
         org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:306)
         org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:200)

  • Problem with custom tag using TagExtraInfo

              Hi,
              I have a tag that create a Java variable using TEI. The scope of this
              variable is driving me crazy. The problem is hard to describe, so the
              email is a bit long - stay with me...
              <pre:setvar id="foo" value="test" /> create a Java variable
              named "foo", which has String value "test". I can use "foo" like this in
              the page later: <%= foo %>.
              Now, if I call setvar twice with same id:
              <pre:setvar id="foo" value="test" />
              <pre:setvar id="foo" value="another-test" />
              This is still ok. By checking the compiled Java file, the first call
              declare the var, the second call just use it without creating it again:
                   //first call
                   String foo=null;
                   foo="test";
                   //second call
                   foo="another test";
              Now the problem comes when the frist call is in "if" statement (code is not
              useful, only for demostration):
              <% if (1>0) { %>
                   <pre:setvar id="foo" value="test" />
              <% } %>
              <pre:setvar id="foo" value="another-test" />
              The compiled code looks like:
                   if (1>0) {
                        //first call
                        String foo=null;
                        foo="test";
                   //second call
                   foo="another test";
              Variable foo is out of scope at the second call! (BTW, I can workaround this by
              adding another <pre:setvar id="foo" value="" /> before the "if".)
              Is it a fault in JSP specification? Or a problem when WebLogic implements TEI?
              Any idea?
              Thanks,
              -- Jin
              

    I encountered the same problem in our environment. I did the same thing as
              James. Simply re-initialize all variables in the do end tag.
              Also, with the nested tags you use you may also need to implement cloneable
              in the inner tag if the outer tag keeps references to all the inner tag
              instances.
              For instance if the outer tag kept a vector of references to the inner tag,
              then you would need to use clone() on the inner tag before adding it to the
              vector.
              "James Lynn" <[email protected]> wrote in message
              news:3af05d29$[email protected]..
              > > But
              > > with WL 6.0, the cell tag handler reuse the same instance each time the
              > cell tag
              > > is called and the member field is not reset
              >
              > I had the same problem. As a work around, I reinitialize everything in my
              > doEndTag() method and it works.
              >
              >
              > --
              > James Lynn - Lead Software Architect
              > Oakscape - Java Powered eBusiness Solutions <http://www.oakscape.com/>
              >
              >
              

  • Problem using custom tags

    Hi All,
    I am trying to run an test application where in the jsp and tld are as below:
    FirstTag.jsp:
    <html>
    <head>
         <title>Your first JSP tag : FirstTag</title>
         <style>
         p, b { font-family:Tahoma,Sans-Serif; font-size:10pt; }
         b { font-weight:bold; }
         </style>
    </head>
    <body>
    <p align="center">
    <em><u>Your first JSP tag : FirstTag</u></em></p>
    <%@ taglib uri="/WEB-INF/tlds/DemoTags.tld" prefix="star" %>
    <p>Name entered : <star:firsttag name="Hi" /></p>
    <p>No name entered : <star:firsttag /></p>
    </body>
    </html>
    nd the DemoTag.tld is as follows:
    <?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_1.dtd">
    <taglib>
         <tlibversion>1.0</tlibversion>
         <jspversion>1.1</jspversion>
         <shortname>DemoTags</shortname>
         <uri>http://www.stardeveloper.com</uri>
         <info>Demo Tags Library</info>
         <tag>
              <name>firsttag</name>
              <tagclass>FirstTag</tagclass>
              <bodycontent>empty</bodycontent>
              <info>Your first JSP Tag</info>
              <attribute>
                   <name>name</name>
                   <required>false</required>
              </attribute>
         </tag>
    </taglib>
    I am getting an error as:
    An error occurred at line: 15 in the jsp file: /FirstTag.jsp
    FirstTag cannot be resolved to a type
    12: <em><u>Your first JSP tag : FirstTag</u></em></p>
    13:
    14: <%@ taglib uri="/WEB-INF/tlds/DemoTags.tld" prefix="star" %>
    15: <p>Name entered : <star:firsttag name="Hi" /></p>
    16:
    17: <p>No name entered : <star:firsttag /></p>
    18:
    Can anyone say me is there any configuration in web.xml or any jar file as to be included.I do have a java class for the tld file.Please help me regarding this.
    Thankx

    <tagclass>FirstTag</tagclass>Package your classes first. Read this:
    [http://faq.javaranch.com/java/PackageYourBeans|http://faq.javaranch.com/java/PackageYourBeans]

  • Problems with Custom Tags

    I get a error message like this:
    root cause
    java.lang.NoClassDefFoundError: javax/servlet/jsp/JspContext
    at java.lang.Class.getDeclaredMethods0(Native Method)
    And I checked that the error looks like to be in the line
    that I try to write something in my Page. This way:
    this.pageContext.getOut().write("hello");
    And I don�t realize what is going on, I've already checked
    out in many places, web, list, etc, about this error, and up
    to now I don't get any clue about what's happening.
    I don't think that there's a problem in the code, because
    the same code was running perfectly in another application
    server.
    Please someone could help me ?
    Thanks in advance!
    Ualter Jr.

    Ok, I've alredy found the cause.
    I'm using Eclipse to build my application, and the Eclipse is pointing to J2EE version 1.4 (that's in my computer) for the compilation of the Servlets and TagHandlers.
    But, I'm using Tomcat 4.1.29, or JBoss 3.2.3 to test the application, and these version aren't compatible with version 1.4 of J2EE, they are compatible with version 1.3
    In J2EE 1.3 there's no class called JspContext just in the J2EE 1.4
    That's all confusion.
    That's was my fault, sorry.

  • 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

  • Custom Tag -- Custom Component problems with iframes

    I have a "project" component that originally iterated over a list of models and created/renderered the corresponding (and fairly complex) interactive UI components for those models. On the client-side, the output from these were then organized neatly into "tabs" via CSS ... all on one page. Since these UI Components are so hefty, when any iteraction was done on one of them, the whole page had to re-render and things got just plain slow. To get around this limitation, I decided to have my "project" component no longer create the UI components himself, but instead generate an IFRAME that points to a page that will generate a single component. This way, any iteraction will just cause that single IFRAME to refresh.
    Due to the fact that an IFRAME can only be populated by using the src attribute, I have created a page that contains a JSF View (<faces:view>) and inside is a single custom tag of mine (<mine:displayView>). Let's call this page singleDisplayView.jsf. I create iframes that point to singleDisplayView.jsf with different request params for each (singleDisplayView.jsf?modelName=Foo, singleDisplayView.jsf?modelName=Bar, etc.)
    The displayView tag has one attribute called requestQueryString and I use the tag like so:
    <t:displayView requestQueryString="<%=request.getQueryString()%>" />The displayView tag's class is DisplayViewTag. In DisplayViewTag::setProperties(UIComponent uiComponent) method, I get the model name out of the request map and set this property on the UIComponent.
    The problem is that I'm noticing that as the main page (that contains these frames) loads, setProperties() is only being called twice. After that, the components created by subsequent iframes just seem to be using the modelName from the second frame.
    Is there a syncronization issue I don't understand?
    Any ideas?
    Any help would be much appreciated.
    Thanks in advance,
    Mark

    On a possibly related note, I read this in an article of the JSF application lifecycle:
    In the first phase of the JSF lifecycle -- restore view -- a request comes
    through the FacesServlet controller. The controller examines the request and
    extracts the view ID, which is determined by the name of the JSP page.Could it be that the lifecycle is trying to reuse components from a single view, since all these iframes are pointing to the same page?

Maybe you are looking for

  • How do I use contact groups to easily dial friends and fam

    Hi I set up groups (family/friends) in my address book MAINLY NOT to have to filter through every "Elizabeth" in my phone just to call my sister!  Now, although I have a group of family and friends set up, I cant figure out how to utilize them (the g

  • Customizing Request while Hiring an employee using PA40

    Hi All 1. I am hiring an employee using Hiring Action (PA40) , once i enter the data in Infotype 0000 (Actions) & Infotype 0001 (Org Assignment) while saving it is asking for a Customizing Request . Pls let me know why is it asking for the request &

  • Unable to import IDoc from ECC to PI 7.1(ESR)

    Hi, I am creating an IDoc to File scenario in PI7.1 . I am trying to import the MATMAS IDoc from ECC to PI 7.1.So under the SWCV -> Imported Objects - > Wizard to import IDod/RFC opens -> I enter the ECC system login details -> But when I expand the

  • WebUtil on Linux is not working

    Hi All, I have install app server 10.1.2.0.2 and configured the webuitl on linux ES4. I am trying to use client_text_io command it is not working. It is not even giving any errors. Please help me to find the problem. Thanks,

  • NFC stopped working

    I have used the NFC to check the balance on my travel card for subway/bus. But now it doesn´t work anymore. I just get a notification "Reading error. Try again." Both alternatives NFC and Android Beam are activated. I have deactivated/activated them