When to specify taglib uri in web.xml

When declaring a URI in the taglib directive, when must you include the taglib elements in web.xml, and when can you avoid them?
I tried putting a relative path to the .tld file, setting uri to �/WEB-INF/mysubfolder/myfile.tld�, but my web server complains that I�m missing a tlib-version element somewhere�
What is the uri path relative to, and in what cases must you include a mapping in web.xml and when do you not have to?
Thanks.

So it sounds like your tld file has some invalid xml in it.
Double check the contents of your tld file.
If you declare a <uri> in your taglibrary, then you never need to declare it in web.xml.
You can just use that "well-known" uri to access your tag library.
The tld has to be either
1 - in the META-INF folder of a jar file deployed
2 - under the WEB-INF directory
See JSP specification section JSP.7.3.1

Similar Messages

  • Error in parsing taglib taglib tag in web.xml or .tld file of the taglib

    Hi All,
    I have added ResourceBundle.tld file in following path : /PORTAL-INF/taglib/tld/
    I have added portalapp.xml file following entry  :
    <property name="/PORTAL-INF/taglib/tld/ResourceBundle.tld" value="/PORTAL-INF/taglib/tld/ResourceBundle.tld"/>
    I have added jsp file following entry :
    <%@ taglib uri="/PORTAL-INF/taglib/tld/ResourceBundle.tld" prefix="bundle" %>
    I am getting the following the error: Error in parsing taglib taglib tag in web.xml or .tld file of the taglib library
    can you tell me where i am giving the wrong.
    Regards
    Siva

    hi rabih,
    in jsp..
    <%@ taglib uri="tagLib" prefix="bundle" %>
    in portalapp.xml
    <component-profile>
      <property name="tagLib" value="/PORTAL-INF/taglib/tld/ResourceBundle.tld"/>
    </component-profile>
    it may help u..
    regards,
    Chinnadurai.R

  • My application gives "Error in parsing taglib 'tagLib' tag in web.xml "

    Hi ,
    My Portal application developed completely on JSP Dynpages and JSPs gives <b>at times</b> the following error
    "Error in parsing taglib 'tagLib' tag in web.xml or .tld file of the taglib library.."
    I know that this error comes when the taglib declared in the jsp and portalapp.xml doesn't match. But I have made sure that they are the same.
    Can anyone give me an opinion as to why this problem is occuring inspite of making sure that the taglib declaration are same in jsp and portalapp.xml.
    Is the problem on the server side??
    Valuable suggestions would be rewarded!!
    -Thanks
    Padmarajan.

    Hi Anagha,
    No the application is accessed using an http link.
    I am unable to make out why this error comes up only once in a while and when you refresh the screen it starts working fine.
    This is my big issue because when
    -Thanks
    Padmarajan.

  • Bug when specifying url-pattern in web.xml

    Hi
              I have been using Weblogic 6.0 Beta and managed to specify the following
              security constraint
              <security-constraint>
              <web-resource-collection>
              <web-resource-name>SecurePages</web-resource-name>
              <description>no description</description>
              <url-pattern>/control/signin</url-pattern>
              <url-pattern>/control/refreshUser</url-pattern>
              <url-pattern>/control/updateUser</url-pattern>
              <url-pattern>/control/deleteaddress</url-pattern>
              <url-pattern>/control/updateaddress</url-pattern>
              <url-pattern>/control/refreshcontacts</url-pattern>
              <url-pattern>/control/updatecard</url-pattern>
              <http-method>POST</http-method>
              <http-method>GET</http-method>
              </web-resource-collection>
              </security-constraint>
              This works fine as you would expect. I have upgraded to Weblogic 6.0 Service
              Pack 1 Rolling Patch 1 and the same web.xml file no longer works. When you
              try and start the server Weblogic hangs just after loading the Oracle driver
              that I use.
              The odd behaviour is that if I change the order of the url-pattern elements
              so that the updatecard URL is above the refreshUser URL the server starts!
              (shown below)
              <url-pattern>/control/signin</url-pattern>
              <url-pattern>/control/updatecard</url-pattern>
              <url-pattern>/control/refreshUser</url-pattern>
              <url-pattern>/control/updateUser</url-pattern>
              <url-pattern>/control/deleteaddress</url-pattern>
              <url-pattern>/control/updateaddress</url-pattern>
              <url-pattern>/control/refreshcontacts</url-pattern>
              A deadlock condition appears to occur, a section of the thread dump looks
              like:
              "Reference Handler" daemon prio=10 tid=0x8990b20 nid=0x7dc waiting on
              monitor [0
              x8c0f000..0x8c0fdc4]
              at java.lang.Object.wait(Native Method)
              at java.lang.Object.wait(Object.java:420)
              at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:110)
              "main" prio=5 tid=0x234ce0 nid=0x6cc runnable [0x6e000..0x6fc3c]
              at weblogic.servlet.utils.URLMatchMap.put(URLMatchMap.java:156)
              at
              weblogic.servlet.security.internal.WebAppSecurity.setConstraints(WebA
              ppSecurity.java:77)
              Looking at the weblogic.jar file the URLMatchMap class is a new addition
              over the original Weblogic 6.0. It seems that the put method of the
              URLMatchMap may be going into an infinite loop, dependant on the URLs that
              are being entered. The fact that changing the order of the URLs overcomes
              the bug seems to suggest there may be some coding error in this new class.
              A fix would be great if anyone has one.
              Chris Mein
              

              Just wondering if anyone ever came up with the solution to the bug with WL 6.0
              sp1, mentioned by Chris, below. Any information on this would be greatly appreciated.
              Tony
              "Chris Mein" <[email protected]> wrote:
              >Hi
              >
              >I have been using Weblogic 6.0 Beta and managed to specify the following
              >security constraint
              >
              ><security-constraint>
              > <web-resource-collection>
              > <web-resource-name>SecurePages</web-resource-name>
              > <description>no description</description>
              > <url-pattern>/control/signin</url-pattern>
              > <url-pattern>/control/refreshUser</url-pattern>
              > <url-pattern>/control/updateUser</url-pattern>
              > <url-pattern>/control/deleteaddress</url-pattern>
              > <url-pattern>/control/updateaddress</url-pattern>
              > <url-pattern>/control/refreshcontacts</url-pattern>
              > <url-pattern>/control/updatecard</url-pattern>
              > <http-method>POST</http-method>
              > <http-method>GET</http-method>
              > </web-resource-collection>
              > </security-constraint>
              >
              >This works fine as you would expect. I have upgraded to Weblogic 6.0
              >Service
              >Pack 1 Rolling Patch 1 and the same web.xml file no longer works. When
              >you
              >try and start the server Weblogic hangs just after loading the Oracle
              >driver
              >that I use.
              >
              >The odd behaviour is that if I change the order of the url-pattern elements
              >so that the updatecard URL is above the refreshUser URL the server starts!
              >(shown below)
              >
              ><url-pattern>/control/signin</url-pattern>
              ><url-pattern>/control/updatecard</url-pattern>
              ><url-pattern>/control/refreshUser</url-pattern>
              ><url-pattern>/control/updateUser</url-pattern>
              ><url-pattern>/control/deleteaddress</url-pattern>
              ><url-pattern>/control/updateaddress</url-pattern>
              ><url-pattern>/control/refreshcontacts</url-pattern>
              >
              >A deadlock condition appears to occur, a section of the thread dump looks
              >like:
              >
              >"Reference Handler" daemon prio=10 tid=0x8990b20 nid=0x7dc waiting on
              >monitor [0
              >x8c0f000..0x8c0fdc4]
              > at java.lang.Object.wait(Native Method)
              > at java.lang.Object.wait(Object.java:420)
              > at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:110)
              >
              >"main" prio=5 tid=0x234ce0 nid=0x6cc runnable [0x6e000..0x6fc3c]
              > at weblogic.servlet.utils.URLMatchMap.put(URLMatchMap.java:156)
              > at
              >weblogic.servlet.security.internal.WebAppSecurity.setConstraints(WebA
              >ppSecurity.java:77)
              >
              >Looking at the weblogic.jar file the URLMatchMap class is a new addition
              >over the original Weblogic 6.0. It seems that the put method of the
              >URLMatchMap may be going into an infinite loop, dependant on the URLs
              >that
              >are being entered. The fact that changing the order of the URLs overcomes
              >the bug seems to suggest there may be some coding error in this new class.
              >
              >A fix would be great if anyone has one.
              >
              >Chris Mein
              >
              >
              

  • Catch the exception thrown when database is not available in web.xml

    Hi,
    I have an app that uses a mysql database configured in the web.xml configuration file - a javax.servlet.jsp.jstl.sql.dataSource param
    There have been occasions where that server has been down, and this causes the expected error stack trace to be dumped to the jsp page
    Is there anywhere I can catch that exception in the jsp page, so the end user does not see that nasty error?
    Thanks,
    Tom

    You have answered your own question, catch the exception with a try catch block !!
    try
    // doing something stupid
    catch (Exception exception)
    out.println("sorry user, you did something really stupid");
    // it is acceptable to do nothing here if you dont want to handle the
    // error or output a message
    }

  • Taglib element not allowed in web.xml conforming to web-app_2_4.xsd ?

    Hello,
    I want to configure taglibs in my web.xml file.
    The beginning of the file looks like this:
    <web-app 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 http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
          version="2.4">I placed the following:      
    <taglib>
        <taglib-uri>/tags/struts-bean</taglib-uri>
        <taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
    </taglib>element just after the welcome-file-list element. When I "validate XML" in Netbeans I get :
    cvc-complex-type.2.4.a: Invalid content was found starting with element 'taglib'. One of '{"http://java.sun.com/xml/ns/j2ee":description, "http://java.sun.com/xml/ns/j2ee":display-name, "http://java.sun.com/xml/ns/j2ee":icon, "http://java.sun.com/xml/ns/j2ee":distributable, "http://java.sun.com/xml/ns/j2ee":context-param, "http://java.sun.com/xml/ns/j2ee":filter, "http://java.sun.com/xml/ns/j2ee":filter-mapping, "http://java.sun.com/xml/ns/j2ee":listener, "http://java.sun.com/xml/ns/j2ee":servlet, "http://java.sun.com/xml/ns/j2ee":servlet-mapping, "http://java.sun.com/xml/ns/j2ee":session-config, "http://java.sun.com/xml/ns/j2ee":mime-mapping, "http://java.sun.com/xml/ns/j2ee":welcome-file-list, "http://java.sun.com/xml/ns/j2ee":error-page, "http://java.sun.com/xml/ns/j2ee":jsp-config, "http://java.sun.com/xml/ns/j2ee":security-constraint, "http://java.sun.com/xml/ns/j2ee":login-config, "http://java.sun.com/xml/ns/j2ee":security-role, "http://java.sun.com/xml/ns/j2ee":env-entry, "http://java.sun.com/xml/ns/j2ee":ejb-ref, "http://java.sun.com/xml/ns/j2ee":ejb-local-ref, "http://java.sun.com/xml/ns/j2ee":service-ref, "http://java.sun.com/xml/ns/j2ee":resource-ref, "http://java.sun.com/xml/ns/j2ee":resource-env-ref, "http://java.sun.com/xml/ns/j2ee":message-destination-ref, "http://java.sun.com/xml/ns/j2ee":message-destination, "http://java.sun.com/xml/ns/j2ee":locale-encoding-mapping-list}' is expected. [53]
    cvc-complex-type.2.3: Element 'web-app' cannot have character [children], because the type's content type is element-only. [71]
    XML validation finished.Indeed, looking at the web-app_2_4.xsd I cannot find a description for the taglib element.
    Where should a put taglibs ? Is it enough to include them in every JSP so I don't need to place them in web.xml ?
    Thank you.
    Vlad.

    web.xml 2.4 uses a <jsp-config> to enclose the
    <tag-lib>
    <jsp-config>
    <tag-lib>
    </tag-lib>
    </jsp-config>I believe that is the syntax. I will check when I get
    to my server comp.You are right. That's how it's done. Thanks a lot for the reply.
    I hope there were good reasons to break compatibility with the old format. There are a lot of examples out there that use the old one. Without knowing the reason for such a change, I find it very annoying.
    Thanks again
    Vlad.

  • Question on defining taglib in  web.xml

    I am using netbeans to develop a j2ee5 web application.
    I created a web application project using the wizard.
    When I defined a <taglib> in the web.xml, it detected an error.
    cvc-complex-type.2.4.a: Invalid content was found starting with element 'taglib'. One of '{"http://java.sun.com/xml/ns/javaee":description, "http://java.sun.com/xml/ns/javaee":display-name, "http://java.sun.com/xml/ns/javaee":icon, "http://java.sun.com/xml/ns/javaee":distributable, "http://java.sun.com/xml/ns/javaee":context-param, "http://java.sun.com/xml/ns/javaee":filter, "http://java.sun.com/xml/ns/javaee":filter-mapping, "http://java.sun.com/xml/ns/javaee":listener, "http://java.sun.com/xml/ns/javaee":servlet, "http://java.sun.com/xml/ns/javaee":servlet-mapping, "http://java.sun.com/xml/ns/javaee":session-config, "http://java.sun.com/xml/ns/javaee":mime-mapping, "http://java.sun.com/xml/ns/javaee":welcome-file-list, "http://java.sun.com/xml/ns/javaee":error-page, "http://java.sun.com/xml/ns/javaee":jsp-config, "http://java.sun.com/xml/ns/javaee":security-constraint, "http://java.sun.com/xml/ns/javaee":login-config, "http://java.sun.com/xml/ns/javaee":security-role, "http://java.sun.com/xml/ns/javaee":env-entry, "http://java.sun.com/xml/ns/javaee":ejb-ref, "http://java.sun.com/xml/ns/javaee":ejb-local-ref, "http://java.sun.com/xml/ns/javaee":service-ref, "http://java.sun.com/xml/ns/javaee":resource-ref, "http://java.sun.com/xml/ns/javaee":resource-env-ref, "http://java.sun.com/xml/ns/javaee":message-destination-ref, "http://java.sun.com/xml/ns/javaee":persistence-context-ref, "http://java.sun.com/xml/ns/javaee":persistence-unit-ref, "http://java.sun.com/xml/ns/javaee":post-construct, "http://java.sun.com/xml/ns/javaee":pre-destroy, "http://java.sun.com/xml/ns/javaee":message-destination, "http://java.sun.com/xml/ns/javaee":locale-encoding-mapping-list}' is expected.
    Here is my web.xml:
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
    <welcome-file-list>
    <welcome-file>
    index.jsp
    </welcome-file>
    </welcome-file-list>
    <taglib>
    <taglib-uri>/mytag</taglib-uri>
    <taglib-location>/WEB-INF/mytag.tld</taglib-location>
    </taglib>
    </web-app>

    As of servlet 2.4 (jsp 2.0), you'll have to move the taglib declarations inside a <jsp_config> element.
    <jsp-config>
        <taglib> ..........your stuff
    </jsp-config>ram.

  • Using taglib in web.xml in WLS 9.2

    I am trying to build a web application in which the JSPs refer to a JSF taglib at the following URI(http://java.sun.com/jsf/core). When i deploy the application in WLS 9.2 and attempt to load this JSP, WLS says that it is unable to resolve this taglib. I added the following to web.xml to help the application find the taglibs.
              <taglib>
              <taglib-uri>http://java.sun.com/jsf/core</taglib-uri>
              <taglib-location>
              /WEB-INF/jsf_core.tld
              </taglib-location>
              </taglib>
              But now when i attempt to startup WLS, it looks like the appserver does not recognize the <taglib> as a valid element. It gives the following exception:
              Expected elements 'description@http://java.sun.com/xml/ns/j2ee display-name@http://java.sun.com/xml/ns/j2ee
              instead of 'taglib@http://java.sun.com/xml/ns/j2ee' here in element web-app@http://java.sun.com/xml/ns/j2ee
              ..." VALIDATION PROBLEMS WERE FOUND"
              Any clues as to what i am doing wrong here since I have seen documentation which shows using taglib elements in web.xml.
              Thanks
              Ramdas

    I figured out looking at one of the webapp samples that is packaged as part of WLS9.2 that the taglib element needs to be part of the jsp-config element.
              -Ramdas

  • Automatic update of web.xml when running UIX application

    I moved my UIX project from 9.02 to 9.03. The UIX resource files have changed between the versions so I deleted the old cabo folder so that when I ran my applicaton for the first time it would rebuild it. When I ran my application my web.xml file was automatically updated with the following servlet initialisation parameters:
    <init-param>
    <param-name>oracle.cabo.servlet.pageBroker</param-name>
    <param-value>oracle.cabo.servlet.xml.UIXPageBroker</param-value>
    </init-param>
    <init-param>
    <param-name>oracle.cabo.ui.UIExtensions</param-name>
    <param-value>oracle.cabo.data.jbo.ui.JboUIExtension</param-value>
    </init-param>
    The problem is that I've got my own pageBroker already defined in web.xml so when I run my application it used UIXPageBroker instead. This took me a while to find - my app just suddenly stopped working. I don't know what actually updated web.xml but I think it needs to check for the presence of these parameters before inserting them.
    Cheers
    Ian

    Sorry about that Ian, I agree that the code should
    check for the presence of another PageBroker. I'll
    log a bug and bring this up with the development
    team.
    - Jeff

  • Generated JSP reports and context-param in web.xml

    I have what I believe to be a problem when using .jsp files generated from reports builder (actually, it looks as if the problem is in the reports tag library. When adding a context-param to web.xml, I get an error when compiling the following line:
    <%@ taglib uri="/WEB-INF/lib/reports_tld.jar" prefix="rw" %>
    Error(1): oracle.xml.parser.v2.XMLParseException: Invalid element 'context-param' in content of 'web-app', expected elements '[taglib, resource-ref, security-constraint, login-config, security-role, env-entry, ejb-ref]'.
    Note that I can read the context param and no other JSP pages seem to care, just those with the Reports Tag library.
    Regards,
    Jeff

    Ben -
    There can be init params for the servlet or for the servlet context. For the servlet, this looks like:
    <servlet>
    <servlet-name>InitServlet</servlet-name>
    <servlet-class>package1.InitServlet</servlet-class>
    <init-param>
    <param-name>message</param-name>
    <param-value>Hello From Initialization Parameter</param-value>
    </init-param>
    </servlet>
    in the web.xml file, and is accessed using:
    public void init(ServletConfig config) throws ServletException
    super.init(config);
    message = config.getInitParameter("message");
    For a servlet context init param, you define it as you did using the web.xml settings editor:
    <context-param>
    <param-name>hello</param-name>
    <param-value>hi</param-value>
    </context-param>
    This is accessed using:
    public void init(ServletConfig config) throws ServletException
    super.init(config);
    message1 = config.getServletContext().getInitParameter("hello");
    Hope this helps,
    Lynn
    Java Tools Team

  • JDev 9.0.3_2: web.xml fails DTD validation

    Hi all,
    I just started using JDev 9.0.3_2 and found that it is trying to validate my web.xml when I build my Project.
    It is complaining about the <distributable> Tag inside my web.xml file. It should NOT be complaining about this, but it is obviously using either an outdated DTD or the wrong one.
    How can I either point JDev at the correct DTD or get it to stop attemting to validate web.xml?
    Thanks!
    Kevin Dougan

    I think I have figured out a workaround: It appears that JDeveloper is extremely picking about web.xml and validates it in a strict sense. You MUST put your elements in EXACTLY the same order as specified in the DTD, or it throws an error.
    However, that doesn't answer my original question: Is there a way to specify the DTD for web.xml (or other elements for that matter, Schema's aside for the moment) or at least turn off this form of validation? If not in the current release, is this coming in 9.0.4 or 9.0.5?
    Thanks again,
    Kevin

  • Use of jsp-file in web.xml

    hello
    can anybody explain about , when we need <jsp-file> in web.xml
    and why we use this tag in place of <url-pattern>?

    If you want to declare a JSP in your web.xml file you use the jsp-file tag instead of the servlet-class tag. Normally there is no need to declare a JSP in the web.xml file unless you want to use init-params.
    Usually people can access a JSP directly wether it is declared in the web.xml or not. So it is not that the jsp-file tag replaces the url-pattern tag so much as the url-pattern tag is not needed for a JSP. However notthing prevents you from declaring the JSP in the web.xml and then mapping the JSP to a different url that doesn't end in '.jsp'.

  • Impossible to get the Sun NS and XSD to validate my web.xml

    Hello,
    I'm having a problem getting the namespace and schema to validate my web.xml file. Three days ago, everythings were working fine, but since friday I can't get the XSD.
    The top of my web.xml looks like this :
    <web-app version="2.4" 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 http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    >When I try to validate my web.xml, I got error like this :
    s4s-elt-character: Non-whitespace characters are allowed ...I've recently seen other topics like this, but I'm not sure it's the same issue.
    Is it a known issue? What can I do to validate my web.xml? Are there mirrors for this XSD?
    Best Regards.
    Message was edited by:
    Arlo

    Please help, I still have the problem and it seems it's a known issue :
    http://dev.eclipse.org/newslists/news.eclipse.webtools/msg03484.html

  • Reference taglibs in web.xml

    Hi,
    I'm trying to find a way to avoid having to always reference commonly used taglibs in all my jsps. Its kind of a hassle to manually change all references when the taglib.tld changes name.
    I looked at the <tag-lib> element for web.xml and am a little confused as to what purpose it serves. Does anyone know if this is suppose to provide the functionality I want or is used for earlier jsp specifications? Thanks.

    Which taglibs are you having trouble with that keep renaming their taglib.tld? Are they custom ones or standard ones available over the net?
    There are two methods of doing this, one by specifying a uri inside the taglib (like JSTL does) the second by setting up mappings in web.xml.
    The web.xml file can provide a mapping between the uri you specify in the jsp, and the actual tld file.
    So for example if you have in your jsp:
    <%@ taglib prefix="test" uri="http://my.testtag" %>in web.xml you would have the following:
      <taglib>
        <taglib-uri>/http://my.testtag</taglib-uri>
        <taglib-location>/WEB-INF/mytag.tld</taglib-location>
      </taglib>This sets up the mapping between the uri you used, and the actual tld on disk
    Now if the name of the tld file changes, all you do is change it in web.xml, and all your jsp pages will point at it.
    The better method IMO is to use the <uri> element in the tld file.
    For instance taking an example from JSTL 1.1 , c.tld
    <taglib>
    <uri>http://java.sun.com/jsp/jstl/core</uri>
    ...The c.tld file is bundled with the JSTL file standard.jar in the META-INF directory.
    This lets your jsp page just import the taglib with the uri, and the server will find it in the appropriate jar file. No need for any entries in web.xml to do this.
    If the tag library is written half-decently nowadays, they follow this pattern, and installing a new taglib becomes painless.
    Hope this helps,
    evnafets

  • Configuring web.xml when using JSP as display technology

    Hi,
    I have a very simple HelloWorld style jsp.
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
    <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
    <f:view>
      <html>
        <head>
          <title>
            JSF in Action - Hello, world!
          </title>
        </head>
        <body>
          <h:form id="welcomeForm">
            <h:outputText id="welcomeOutput" value="Welcome to JavaServer Faces!"
                           style="font-family: Arial, sans-serif; font-size: 24; color: green;"/>
            <p>
             <h:message id="errors" for="helloInput" style="color: red"/>
            </p>
            <p>
              <h:outputLabel for="helloInput">
                <h:outputText id="helloInputLabel"
                              value="Enter number of controls to display:"/>
              </h:outputLabel>
              <h:inputText id="helloInput" value="#{helloBean.numControls}"
                           required="true">
                <f:validateLongRange minimum="1" maximum="500"/>
              </h:inputText>
            </p>
            <p>
              <h:panelGrid id="controlPanel" binding="#{helloBean.controlPanel}"
                           columns="20" border="1" cellspacing="0"/>
            </p>
            <h:commandButton id="redisplayCommand" type="submit" value="Redisplay"
                             actionListener="#{helloBean.addControls}"/>
            <h:commandButton id="goodbyeCommand" type="submit" value="Goodbye"
                             action="#{helloBean.goodbye}" immediate="true"/>
          </h:form>
        </body>
      </html>
    </f:view>To get this working I had to use the following web.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
      <display-name>JSFHelloWorld3</display-name>
      <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>default.html</welcome-file>
        <welcome-file>default.htm</welcome-file>
        <welcome-file>default.jsp</welcome-file>
      </welcome-file-list>
      <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
      </servlet>
      <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>/faces/*</url-pattern>
      </servlet-mapping>
      <context-param>
        <description>State saving method: 'client' or 'server' (=default). See JSF Specification 2.5.2</description>
        <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
        <param-value>client</param-value>
      </context-param>
      <context-param>
        <param-name>javax.servlet.jsp.jstl.fmt.localizationContext</param-name>
        <param-value>resources.application</param-value>
      </context-param>
      <listener>
        <listener-class>com.sun.faces.config.ConfigureListener</listener-class>
      </listener>
      <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.jsf</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.faces</url-pattern>
      </servlet-mapping>
    </web-app>When I go to:
    http://localhost:8080/MyApp/hello.jsp
    I get:
    org.apache.jasper.JasperException: An exception occurred processing JSP page /hello.jsp at line 23
    20: <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
    21: <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
    22:
    23: <f:view>
    24:   <html>
    25:     <head>
    26:       <title>
    Stacktrace:
         org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
         org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:419)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    root cause
    java.lang.RuntimeException: Cannot find FacesContext
         javax.faces.webapp.UIComponentClassicTagBase.getFacesContext(UIComponentClassicTagBase.java:1855)
         javax.faces.webapp.UIComponentClassicTagBase.setJspId(UIComponentClassicTagBase.java:1672)
         org.apache.jsp.hello_jsp._jspx_meth_f_005fview_005f0(hello_jsp.java:119)But when I go to:
    http://localhost:8080/MyApp/hello.faces
    Everything is ok?
    I am confused why?
    Any help appreciated.

    I believe this is a url pattern issue. You have one for *.jsf as opposed to *.jsp.
    <url-pattern>*.jsf</url-pattern>
    This likely any pattern containing "faces".
    <url-pattern>/faces/*</url-pattern>
    Add one for *.jsp and you should be OK.

Maybe you are looking for

  • Problem with file access in other computer in jsp

    I have problem with file accessing in other computer in jsp. The follow code File folder=new File("Z:"+File.separator+"sharefolder");//Z is a net share driver File[] files=folder.listFiles(); System.out.println("test"); System.out.println("length="+f

  • Submit by Email Does Not Work in IE9

    I have a PDF form that is on our company Intranet with a Submit by Email button.  When a user uses Internet Explorer 9 to open this form and hit the Submit by Email button, the Select Email Client window appears.  After selecting Desktop Email Applic

  • TS4455 Why IMovie no longer shows all movie clips from movies from Kodak camera

    I am on an IMac 10.6.8   2.16 ghz intel core 2 duo with 3 gb memory I am using IMovie 11  (9.0.4) My camera is a Kodak Playsport shooting hd video On all of over 300 videos I have shot previously IMovie worked perfectly. On the last 3 movies imported

  • Artwork in iTunes won't transfer to iPod

    I'm having a little problem with my iPod Nano 4th Gen. I'm running iTunes on Windows XP. Everytime I create a playlist in iTunes and transfer it to my iPod, half the artwork is missing in the iPod playlist. All of the artwork is there in iTunes. I re

  • 'Delete' operation with CMIS connector

    I was told in one of the post I made at - http://forums.adobe.com/thread/879186?tstart=0 that Drive uses 'Delete' option from the context menu of OS (no such option exists in the Drive menu). When I was testing my deleteObject method and tried to do