JSF 1.1 and JDK 1.3.1

Hello,
Trying JSF1.1 with guessNumber demo I encountered an error. Running guessNumber demo application under tomcat 5.0.19 and JSK1.3.1_06 and I get the error reported at the end of this message.
If i try with J2SDK 1.4.0 or above, it works properly...
does JSF1.1 compatible only with J2SDK 1.4.0++ ?
Bye,
mirko
2004-05-28 15:08:23 StandardWrapperValve[jsp]: Servlet.service() for servlet jsp threw exception
java.lang.NoSuchMethodError
     at com.sun.faces.util.InstancePool.checkout(InstancePool.java:129)
     at com.sun.faces.el.ValueBindingImpl.checkoutExpressionInfo(ValueBindingImpl.java:431)
     at com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:166)
     at com.sun.faces.el.ValueBindingImpl.getValue(ValueBindingImpl.java:154)
     at javax.faces.component.UIOutput.getValue(UIOutput.java:147)
     at com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getValue(HtmlBasicInputRenderer.java:82)
     at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.getCurrentValue(HtmlBasicRenderer.java:191)
     at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeEnd(HtmlBasicRenderer.java:169)
     at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:712)
     at javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:616)
     at javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:539)
     at com.sun.faces.taglib.html_basic.OutputTextTag.doEndTag(OutputTextTag.java:173)
     at org.apache.jsp.greeting_jsp._jspx_meth_h_outputText_0(greeting_jsp.java:185)
     at org.apache.jsp.greeting_jsp._jspx_meth_h_form_0(greeting_jsp.java:140)
     at org.apache.jsp.greeting_jsp._jspx_meth_f_view_0(greeting_jsp.java:110)
     at org.apache.jsp.greeting_jsp._jspService(greeting_jsp.java:77)
     at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
     at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
     at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
     at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:284)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204)
     at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:750)
     at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:510)
     at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:445)
     at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:359)
     at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:322)
     at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:147)
     at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
     at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
     at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:284)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204)
     at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:750)
     at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:510)
     at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:445)
     at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:359)
     at org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:712)
     at org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:682)
     at org.apache.jsp.index_jsp._jspService(index_jsp.java:61)
     at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
     at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
     at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
     at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:284)
     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204)
     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:257)
     at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
     at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567)
     at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:245)
     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:199)
     at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
     at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:509)
     at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
     at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567)
     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:184)
     at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:164)
     at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
     at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567)
     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:156)
     at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
     at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567)
     at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:972)
     at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:206)
     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:833)
     at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:732)
     at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:619)
     at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:688)
     at java.lang.Thread.run(Thread.java:484)

Thanks for locating this and bringing it to our
attention.
This is indeed a method call BitSet.nextClearBit(),
which is new in 1.4. I'm sorry our testing resources
didn't catch this. I'll investigate what options we
can take going forward.ONe quick and obvious workaround would be to take the java/util/BitSet.java from the java 1.4 sources and compile it yourself. Then you could use the -Xbootclasspath/p: argument to the JVM to make sure it gets picked up at runtime. You could probably also do some hacks using CGLIB proxying to fix this sort of thing as well.
+=javafan

Similar Messages

  • JDeveloper 11g and JDK 1.4.2_16

    Hi! I just created a new simple app in JDev 11g and selected the JDK 1.4.2_16 for the model project. I created a set of business components from tables, built the project and them attempted to run the AppModule tester.
    I got the following error:
    /usr/java/j2sdk1.4.2_16/bin/java -server -classpath /opt/app/oracle/product/jdevstudio1111/BC4J/jlib/bc4jtester.jar:/opt/app/oracle/product/jdevstudio1111/BC4J/lib/bc4jsyscat.jar:/opt/app/oracle/product/jdevstudio1111/BC4J/lib/db-ca.jar:/opt/app/oracle/product/jdevstudio1111/jlib/jdev-cm.jar:/opt/app/oracle/product/jdevstudio1111/lib/xmlparserv2.jar:/opt/app/oracle/product/jdevstudio1111/jlib/ohj.jar:/opt/app/oracle/product/jdevstudio1111/jlib/help-share.jar:/opt/app/oracle/product/jdevstudio1111/jlib/share.jar:/opt/app/oracle/product/jdevstudio1111/jlib/jewt4.jar:/opt/app/oracle/product/jdevstudio1111/jlib/oracle_ice.jar:/opt/app/oracle/product/jdevstudio1111/jlib/ojmisc.jar:/opt/app/oracle/product/jdevstudio1111/ide/lib/idert.jar:/opt/app/oracle/product/jdevstudio1111/ide/lib/javatools.jar:/usr/java/j2sdk1.4.2_16/jre/lib/rt.jar:/usr/java/j2sdk1.4.2_16/jre/lib/i18n.jar:/usr/java/j2sdk1.4.2_16/jre/lib/sunrsasign.jar:/usr/java/j2sdk1.4.2_16/jre/lib/jsse.jar:/usr/java/j2sdk1.4.2_16/jre/lib/jce.jar:/usr/java/j2sdk1.4.2_16/jre/lib/charsets.jar:/usr/java/j2sdk1.4.2_16/jre/classes:/home/mcruz/development/11g/SessionTest11g/.adf:/home/mcruz/development/11g/SessionTest11g/Model/classes:/opt/app/oracle/product/jdevstudio1111/BC4J/lib/adf-share-support.jar:/opt/app/oracle/product/jdevstudio1111/BC4J/lib/adf-share-ca.jar:/opt/app/oracle/product/jdevstudio1111/BC4J/lib/adf-share-base.jar:/opt/app/oracle/product/jdevstudio1111/jlib/identitystore.jar:/opt/app/oracle/product/jdevstudio1111/BC4J/lib/bc4jmt.jar:/opt/app/oracle/product/jdevstudio1111/BC4J/lib/bc4jwizard.jar:/opt/app/oracle/product/jdevstudio1111/BC4J/lib/groovy-all-1.0.jar:/opt/app/oracle/product/jdevstudio1111/BC4J/lib/bc4jct.jar:/opt/app/oracle/product/jdevstudio1111/jlib/commons-el.jar:/opt/app/oracle/product/jdevstudio1111/jlib/jsp-el-api.jar:/opt/app/oracle/product/jdevstudio1111/jlib/oracle-el.jar:/opt/app/oracle/product/jdevstudio1111/jlib/resourcebundle.jar:/opt/app/oracle/product/jdevstudio1111/lib/java/api/jaxb-api.jar:/opt/app/oracle/product/jdevstudio1111/lib/java/api/jsr173_api.jar:/opt/app/oracle/product/jdevstudio1111/j2ee/home/lib/activation.jar:/opt/app/oracle/product/jdevstudio1111/lib/java/shared/sun.jaxb/2.0/jaxb-xjc.jar:/opt/app/oracle/product/jdevstudio1111/lib/java/shared/sun.jaxb/2.0/jaxb-impl.jar:/opt/app/oracle/product/jdevstudio1111/lib/java/shared/sun.jaxb/2.0/jaxb1-impl.jar:/opt/app/oracle/product/jdevstudio1111/BC4J/lib/adfshare.jar:/opt/app/oracle/product/jdevstudio1111/BC4J/lib/adfm.jar:/opt/app/oracle/product/jdevstudio1111/BC4J/jlib/adfui.jar:/opt/app/oracle/product/jdevstudio1111/BC4J/lib/adfbinding.jar:/opt/app/oracle/product/jdevstudio1111/adfdt/lib/adfdtatrt.jar:/opt/app/oracle/product/jdevstudio1111/adfdt/lib/adftransactionsdt.jar:/opt/app/oracle/product/jdevstudio1111/adfdt/lib/adfdt_common.jar:/opt/app/oracle/product/jdevstudio1111/mds/lib/mdsrt.jar:/opt/app/oracle/product/jdevstudio1111/j2ee/home/jazn.jar:/opt/app/oracle/product/jdevstudio1111/j2ee/home/jazncore.jar:/opt/app/oracle/product/jdevstudio1111/j2ee/home/jps-api.jar:/opt/app/oracle/product/jdevstudio1111/j2ee/home/jps-common.jar:/opt/app/oracle/product/jdevstudio1111/j2ee/home/jps-internal.jar:/opt/app/oracle/product/jdevstudio1111/j2ee/home/jps-fmw.jar:/opt/app/oracle/product/jdevstudio1111/j2ee/home/jps-unsupported-api.jar:/opt/app/oracle/product/jdevstudio1111/j2ee/home/lib/jacc-api.jar:/opt/app/oracle/product/jdevstudio1111/j2ee/home/lib/oc4j-unsupported-api.jar:/opt/app/oracle/product/jdevstudio1111/jdbc/lib/ojdbc5dms.jar:/opt/app/oracle/product/jdevstudio1111/jlib/orai18n.jar:/opt/app/oracle/product/jdevstudio1111/jlib/ojdl.jar:/opt/app/oracle/product/jdevstudio1111/jlib/dms.jar:/opt/app/oracle/product/jdevstudio1111/BC4J/lib/bc4jdomorcl.jar:/opt/app/oracle/product/jdevstudio1111/BC4J/jlib/bc4jdatum.jar:/opt/app/oracle/product/jdevstudio1111/j2ee/home/lib/servlet.jar:/opt/app/oracle/product/jdevstudio1111/jlib/commons-cli-1.0.jar:/opt/app/oracle/product/jdevstudio1111/j2ee/home/lib/commons-collections.jar:/opt/app/oracle/product/jdevstudio1111/jlib/xmlef.jar:/opt/app/oracle/product/jdevstudio1111/lib/xml.jar:/opt/app/oracle/product/jdevstudio1111/rdbms/jlib/xdb.jar:/opt/app/oracle/product/jdevstudio1111/javacache/lib/cache.jar:/opt/app/oracle/product/jdevstudio1111/diagnostics/lib/ojdl.jar:/opt/app/oracle/product/jdevstudio1111/j2ee/home/lib/pcl.jar:/opt/app/oracle/product/jdevstudio1111/ucp/lib/ucp.jar:/opt/app/oracle/product/jdevstudio1111/lib/java/shared/oracle.javatools/11.1.1.0.0/dafrt.jar:/opt/app/oracle/product/jdevstudio1111/lib/java/shared/oracle.javatools/11.1.1.0.0/javatools-nodeps.jar:/opt/app/oracle/product/jdevstudio1111/BC4J/jlib/bc4jui.jar:/opt/app/oracle/product/jdevstudio1111/dvt/lib/dvt-client.jar:/opt/app/oracle/product/jdevstudio1111/dvt/lib/dvt-utils.jar:/opt/app/oracle/product/jdevstudio1111/jlib/LW_PfjBean.jar: oracle.jbo.jbotester.MainFrame -X 116D6D52C8E -H jar:file:/opt/app/oracle/product/jdevstudio1111/jdev/doc/studio_doc/ohj/bc4j_f1.jar!/bc4j_f1.hs
    Exception in thread "main" java.lang.UnsupportedClassVersionError: oracle/jbo/jbotester/MainFrame (Unsupported major.minor version 49.0)
         at java.lang.ClassLoader.defineClass0(Native Method)
         at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
         at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
         at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
         at java.net.URLClassLoader.access$100(URLClassLoader.java:55)
         at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
         at java.security.AccessController.doPrivileged(Native Method)
         at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
    Process exited with exit code 1.
    Am I to assume that jdk1.4.x is no longer supported in JDeveloper and that I should start using JDK1.5.x? But apps built with JDK1.5.x are not supported in AppServer 10.1.2.0.2, which is J2EE 1.3 compliant... Does that mean that JDeveloper 11g is suitable only for apps deployed on OAS 10.1.3.x and above? (OAS 10.1.3.x is J2EE 1.4 compliant, and OAS 11g will be J2EE 5.x compliant).
    Comments please.
    Thx!

    be on OracleAs 10.1.3 at a minimum<<The problem (for us) with Oracle AS 10.1.3 is that Portal 10.1.4 will not run on it (not certified). We want to take advantage of ADF RC and we hope to be able to produce JSF portlets or "portletized" apps. But at the moment we are "stuck" with 10.1.2.0.2 and JDK 1.4.x/J2EE1.3...
    While you can have a 10.1.2 farm and add a 10.1.3 separate instance it is not a clean/complete integration (you can't manage all services from the 10.1.2 farm EM and others; this is what I've seen so far, IMO).
    We can't wait for OAS 11g to come out and take a look at that. And I certainly hope that Portal will be certifed on 11g so that we can just jump there.
    Another wish: WebCenter functionality in Portal, or Portal/WebCenter rolled out into one.

  • JSF 1.2 and Tomcat 6.0.16, error parsing 'jsf-ri-runtime.xml'

    I am working on an application that used jsf 1.1 but would like to move to jsf 1.2. I've added the 1.2 jars (jsf-api.jar and jsf-impl.jar) and jstl-1.2.jar to the app. When I deploy to tomcat 6, i get the following error:
    15-Feb-2008 11:30:36 org.apache.catalina.core.StandardContext listenerStart
    SEVERE: Exception sending context initialized event to listener instance of class com.sun.faces.config.ConfigureListener
    com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! Unable to parse document 'jar:file:/C:/servers/apache-tomcat-6.0.16/webapps/myWebApp/WEB-INF/lib/jsf-impl-1.2.jar!/com/sun/faces/jsf-ri-runtime.xml': This parser does not support specification "null" version "null"
    at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:212)
    at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:174)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4350)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
    at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:829)
    at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:718)
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)
    at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1147)
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
    at org.apache.catalina.core.StandardService.start(StandardService.java:516)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
    Caused by: com.sun.faces.config.ConfigurationException: Unable to parse document 'jar:file:/C:/servers/apache-tomcat-6.0.16/webapps/myWebApp/WEB-INF/lib/jsf-impl-1.2.jar!/com/sun/faces/jsf-ri-runtime.xml': This parser does not support specification "null" version "null"
    at com.sun.faces.config.ConfigManager$ParseTask.call(ConfigManager.java:409)
    at com.sun.faces.config.ConfigManager$ParseTask.call(ConfigManager.java:353)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
    at java.util.concurrent.FutureTask.run(FutureTask.java:138)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
    at java.lang.Thread.run(Thread.java:619)
    I thought this would have something to do with the xml parser so i added jaxb and jaxp to the application but I still get the same error. Can anyone help? Is there a possibility that a library in the app is overriding jaxb/jaxp?

    I had a similar problem on OC4J. For some crazy reason, Oracle still bundles their own XML parser (I say still. It's OC4J 10.1.3 we have in production, so we're just a wee bit behind the curve). At any rate, I had to tell OC4j not to use Oracle's XML parser and just the one bundle with the JRE (1.5). IIRC (and I should know this since I work on Mojarra :), that's caused by an older version of JAXB, so I think you're on the right track. You might check to see if Tomcat 6 bundles JAXB. If it does, you'll need to remove it or update it. If you're on 1.5 or greater, I don't think you need to have that in the app server lib anyway, as the JDK/JRE bundles it.
    Hope that helps. :)

  • Oracle 8.1.5 and JDK 1.2 Thin Driver

    We are doing some prototyping with Oracle 8.1.5, BEA WebLogic
    6.1, and JDK 1.3. We needed to know what is the latest version
    supported by the oracle thing client drivers for that
    configuration.
    Or are we the only users doing this and is it mandatory that we
    migrate to Oracle 8.1.7?
    Thanks,
    Nikhil Kumar
    Lead Architect
    Delta Dental Plan of Michigan
    [email protected]

    Check out the SQLJ FAQ at:
    http://technet.oracle.com/tech/java/sqlj_jdbc/htdocs/faq.html
    "ExceptionInInitializerError: NullPointerException"
    (This is likely a general configuration issue, not something specific to your code.)
    If you see the following stack trace:
    unexpected error occurred... java.lang.ExceptionInInitializerError: java.lang.NullPointerException
    at sqlj.framework.ClassFileReader.attribute_info(Compiled Code) ...
    at sqlj.tools.Sqlj.statusMain(Compiled Code)
    at sqlj.tools.Sqlj.main(Sqlj.java:117)
    then you are likely running SQLJ version 8.1.5 or earlier under JDK 1.2.x or later.
    You need to download the SQLJ 8.1.6 SDK patch, which contains a new translator.zip
    version that you can use to replace the translator.zip from 8.0.5/7.3.4 or from JDeveloper 3.0.
    null

  • Tomcat 6.0.9 and jsf 1.2 and jstl 1.2 using *.tag file error

    I using :tomcat 6.0.9 and jsf 1.2 and jstl 1.2
    My web.xml is at version 2.5 and I am using a custom tag (with the .tag extension). I am trying to use the http://java.sun.com/jsf/html library and values from my attribute. I'm new to this so I figure I must just me missing something.
    I am run http://192.168.1.1/test.jsf laster,view:
    HTTP Status 500 -
    type Exception report
    message
    description The server encountered an internal error () that prevented it from fulfilling this request.
    exception
    org.apache.jasper.JasperException: Unable to compile class for JSP:
    Stacktrace:
         org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:85)
         org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
         org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:415)
         org.apache.jasper.compiler.Compiler.compile(Compiler.java:308)
         org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
         org.apache.jasper.compiler.Compiler.compile(Compiler.java:273)
         org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
         org.apache.jasper.servlet.JspServletWrapper.loadTagFile(JspServletWrapper.java:212)
         org.apache.jasper.compiler.TagFileProcessor.loadTagFile(TagFileProcessor.java:576)
         org.apache.jasper.compiler.TagFileProcessor.access$000(TagFileProcessor.java:50)
         org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:627)
         org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507)
         org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
         org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
         org.apache.jasper.compiler.TagFileProcessor$TagFileLoaderVisitor.visit(TagFileProcessor.java:631)
         org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507)
         org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
         org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
         org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2392)
         org.apache.jasper.compiler.Node$Root.accept(Node.java:489)
         org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
         org.apache.jasper.compiler.TagFileProcessor.loadTagFiles(TagFileProcessor.java:645)
         org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:190)
         org.apache.jasper.compiler.Compiler.compile(Compiler.java:306)
         org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
         org.apache.jasper.compiler.Compiler.compile(Compiler.java:273)
         org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
         org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:308)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
         com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:414)
         com.sun.faces.application.ViewHandlerImpl.executePageToBuildView(ViewHandlerImpl.java:455)
         com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:139)
         com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:108)
         com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:266)
         com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:159)
         javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
    note The full stack trace of the root cause is available in the Apache Tomcat/6.0.9 logs.
    if go to /WEB-INF/tags/test.tag ,delete line: <h:outputText id="test" value="hello!" />
    run http://192.168.1.1/test.jsf is OK!(no error),So I guess error for "<h:outputText id="test" value="hello!" />" line ,why in test.tag file do can't use the "http://java.sun.com/jsf/html " library,please help me.......
    Here is file WEB-INF/web.xml content:
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!--
    Licensed to the Apache Software Foundation (ASF) under one or more
    contributor license agreements. See the NOTICE file distributed with
    this work for additional information regarding copyright ownership.
    The ASF licenses this file to You under the Apache License, Version 2.0
    (the "License"); you may not use this file except in compliance with
    the License. You may obtain a copy of the License at
    http://www.apache.org/licenses/LICENSE-2.0
    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.
    -->
    <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_5.xsd"
    version="2.5">
    <display-name>Welcome to Tomcat</display-name>
    <description>
    Welcome to Tomcat
    </description>
    <!-- Faces Servlet -->
    <servlet>
         <servlet-name>Faces Servlet</servlet-name>
         <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
         <load-on-startup> 1 </load-on-startup>
    </servlet>
    <!-- Faces Servlet Mapping -->
    <servlet-mapping>
         <servlet-name>Faces Servlet</servlet-name>
         <url-pattern>*.jsf</url-pattern>
    </servlet-mapping>
    </web-app>
    Here is file /test.jsp code:
    <%@ page contentType="text/html;charset=UTF-8" %>
    <%@ taglib prefix="tags" tagdir="/WEB-INF/tags" %>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
    <%@ 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>test</title>
    </head>
    <body>
    <!-- body start -->
    <h:outputText id="myinfo" value="test success" />
    <tags:test/>
    <!-- body end -->
    </body>
    </html>
    </f:view>
    Here is file /WEB-INF/tags/test.tag code:
    <%@tag pageEncoding="UTF-8"%>
    <%@taglib prefix="f" uri="http://java.sun.com/jsf/core"%>
    <%@taglib prefix="h" uri="http://java.sun.com/jsf/html"%>
    <h:outputText id="test" value="hello!" />
    Thanks for any help.

    Don't know if it's important, but there is no schema avaiable at: http://java.sun.com/xml/ns/j2ee/web-app_2_5.xsd
    I found the right one at: http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd
    /perty
    Message was edited by:
    perajonsson

  • Urgent Solution needed--Problem in JSP compilation with JDK 1.5 and JDK 1.6

    Hi,
    I m using JDK 1.5 and Tomcat 5.0 the problem is that after starting server when I m going to access my application at that time instead of displaying HomePage it directly display the blank page on screen.
    After analyzing tomcat log I have found that there was a problem with JSP page compilation.
    The exception logged in Tomcat Log is given below
    An error occurred at line: 1 in the generated java file
    The type Collection is not generic; it cannot be parameterized with arguments <? extends E>
    Stacktrace:
    *     at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)*
    *     at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)*
    *     at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:423)*
    *     at org.apache.jasper.compiler.Compiler.compile(Compiler.java:308)*
    *     at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)*
    *     at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273)*
    *     at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)*
    *     at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)*
    *     at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)*
    *     at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)*
    *     at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)*
    *     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)*
    *     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)*
    *     at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654)*
    *     at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:447)*
    *     at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379)*
    *     at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292)*
    *     at org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:424)*
    *     at org.apache.catalina.core.StandardHostValve.status(StandardHostValve.java:343)*
    *     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:144)*
    *     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)*
    *     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)*
    *     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)*
    *     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)*
    *     at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)*
    *     at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)*
    *     at java.lang.Thread.run(Thread.java:619)*
    After getting this kind of error I have analyzed my code furhter then I came to know that there was problem with static include tag.
    In my jsp page I have used following line which is the main cause of error
    <%@ include file="top.jsp" %>If I ommit this line then it is working properly.
    Instead of static include I have used jsp:include also.
    Still I m getting same problem.
    We have to migrated from JDK 1.5 to 1.6 and Tomcat 5.0.28 to 6.0.14, still same problem is there.
    We have tried a lot but didnt get success to overcome this problem.
    If anybody having any solution then ur each reply will be appreciated.
    Thanks in advance..........!!!!!!!
    Edited by: JBOSS2000 on Jan 15, 2008 9:29 AM

    Hi "mshanu" and "amit" Thanks for ur replies Here I m posting the code of "top.jsp"........!!!!
    <%@ page errorPage="errordisplay.jsp"%>
    <table cellpadding="0"
           cellspacing="0"  height=50 width=780>
           <tbody>
             <tr class="header">
               <td class="logo"><IMG SRC="assets/Logo.gif" BORDER=0 ALIGN=top></td>
               <td align="right"><span class="applicationtitle"><%@ include file="/contents/logo.htm" %></span><br>
               <span class="companyname"><%@ include file="/contents/companyname.htm" %></span></td>
             </tr>
            </tbody>
    </table>To include top.jsp I have tried
    <jsp:include page="top.jsp" flush="true">
    </jsp:include>
             AND       
    <%@ include file="top.jsp"%>but none of this worked.
    If I remove the include then It is working properly.
    But I need inluded file too so that I am wondoring for the solution.
    This problem seems very wiered to me. I dont know why it is happening.
    This problem is started only when I used the TOMCAT 6.14.
    Is it the bug of TOMCAT 6.14 or What somebody Plz help.
    I got stuck here.........!!!!!!!!!!
    It doesn't seem any problem with top.jsp. As per my thinking the problem is there in include due to that it doesn't compile the JSP page in Tomcat 6.0.
    Earlier I am having same code running on the Tomcat 5.0.28 and JDK 1.5.0.
    But problem occured when I have used Tomcat 6.x...!!

  • Jsf newbie :: converter and navigation issues

    Hi,
    Iam facing a problem in my first jsf application.
    Iam using jsf 1.1 and tomcat 5.5.7
    I have a UserBean with a single attribute userName (which has public getter and setter methods).
    * I have an index.jsp that redirects to login.faces.
    * I have the appropriate servlet url-mapping in my web.xml that maps *.faces to the FacesServlet
    Here's the code for login.jsp
    <f:view>
       <h:form>
             <h3>Please enter your name </h3>
         <table>
          <tr>
              <td>Name:</td>
            <td><h:inputText id = "name" value="#{user.userName}"/></td>
         </tr>               
         </table>
         <p><h:commandButton value="Login" action="welcome"/>
         </p>
         </h:form>
       </body>
    </f:view>Next I have a welcome.jsp which simply outputs Hello <userName>
    <f:view>
      <h:form>
         <h:outputText value="#{user.userName}"></h:outputText>
      </h:form>
    </f:view>And this is my faces-config.xml
    <?xml version="1.0"?>
    <!DOCTYPE faces-config PUBLIC
      "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
      "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
    <faces-config>
         <managed-bean>
              <managed-bean-name>user</managed-bean-name>
              <managed-bean-class>com.myjsf.UserBean</managed-bean-class>
              <managed-bean-scope>session</managed-bean-scope>
         </managed-bean>
         <navigation-rule>
              <from-view-id>/index.jsp</from-view-id>
              <navigation-case>
                   <from-outcome>welcome</from-outcome>
                   <to-view-id>/welcome.jsp</to-view-id>
              </navigation-case>
         </navigation-rule>
    </faces-config>Now when I start my application , the index page redirects me to login.faces. I believe the FacesServlet intercepts this call, strips of .faces and forwards to login.jsp. Login.jsp is displayed correctly, so far so good. However from here on, I have all kinds of problems
    1. Should the <from-view-id> be /index.jsp (my actual url) or /login.jsp (the url to which index.jsp forwards me to). Actually both seem to work (or not work depending on how you look at it :( )
    2. Anyways whatever I set it to, the login.jsp is displayed correctly. The action attribute of the commandButton tag is set to 'welcome' which matches with the <from-outcome> value in navigation rule in faces-config.xml and I would have expected the welcome.jsp to load on form submit.
    But the form just reloads itself on clicking submit.
    I googled around and discovered that this may be due to validation errors or conversion errors and adding <h:messages/> would indicate the error source. AQccordingly I added it and got this o/p
    " "name": " Conversion Error setting value 'Duke' for 'null Converter'. To cut a long agony story short, I found that I have to define a converter for some data types for validation and/or display. But all I have is a String property. Doesnt jsf provide a default Converter ?
    3. I couldnt get my app to work when I put my jsps in a folder and access them as /<foldername>/jsp in my faces-config.xml. Isnt this possible ? Should all jsps be under the root folder ?
    Will be thankful for any help.
    cheers,
    ram.
    2. Whenever I click on

    Thanks for the reference , I shall definitely go through it.
    My immediate concern is to get the first program working.
    Here is my source code for the bean.
    package com.myjsf;
    import java.io.Serializable;
    public class UserBean implements Serializable {
        private String userName;  
        public String getUserName() {
            return userName;
        public void setName(String userName) {
            this.userName = userName;
    }Here's my login.jsp which comes up fine
    <f:view>
       <h:form>
         <h:messages/>
             <h3>Please enter your name.</h3>               
                 Name: <h:inputText id = "userName" value="#{user.userName}"/><br>
                  <h:commandButton value="Login" action="welcome"/>
         </h:form>
      </f:view>Here's my faces-config.xml
    <faces-config>
         <managed-bean>
              <managed-bean-name>user</managed-bean-name>
              <managed-bean-class>com.myjsf.UserBean</managed-bean-class>
              <managed-bean-scope>session</managed-bean-scope>
         </managed-bean>
         <navigation-rule>
              <from-view-id>/login.jsp</from-view-id>
              <navigation-case>
                   <from-outcome>welcome</from-outcome>
                   <to-view-id>/welcome.jsp</to-view-id>
              </navigation-case>
         </navigation-rule>
    </faces-config>     And this is the error that I get
    "userName": Conversion error occurred. The page gets displayed again. One thing I noticed was that in the html - view source the action attribute of the form tag is set to /myjsf/faces/login.jsp. Shouldnt it be welcome.jsp rather ?
    Iam at my wits end. I have decided to write a Converter which may solve my problem, but is it required ?
    Please help.
    Thanks,
    Ram.

  • JSF 1.2 and Tiles integration

    I have a web application using JSF 1.1 and Tiles that I am trying to upgrade to run using JSF 1.2.
    It is working as far as working out that it should use the tile, but then it all seems to fall over when trying to render.
    Does anyone know if it is possible to use Tiles with JSF 1.2?
    Steven

    Hi,
    I took the Shales TileViewHandler and replaced the renderView method with the one below. This is a copy of the method from the Sun RI except that it passes the tile (ComponentDefinition) along to the subsequent methods.
    Then when it gets down to executePageToBuildView the requestURI is obtained from the tile (tile.getPath()) rather than from the UIViewRoot (viewToExecute.getViewId()).
       public void renderView(FacesContext facesContext, UIViewRoot viewToRender)
                                            throws IOException, FacesException {
          String viewId = viewToRender.getViewId();
          String tileName = getTileName(viewId);
          ComponentDefinition tile = getTile(tileName);
          if (log.isDebugEnabled()) {
             String message = null;
             try {
                 message = bundle.getString("tiles.renderingView");
             } catch (MissingResourceException e) {
                 message = "Rendering view {0}, looking for tile {1}";
             synchronized(format) {
                format.applyPattern(message);
                message = format.format(new Object[] { viewId, tileName });
             log.debug(message);
          if (tile != null) {
             if (log.isDebugEnabled()) {
                String message = null;
                try {
                    message = bundle.getString("tiles.dispatchingToTile");
                } catch (MissingResourceException e) {
                    message = "Dispatching to tile {0}";
                synchronized(format) {
                   format.applyPattern(message);
                   message = format.format(new Object[] { tileName });
                log.debug(message);
             dispatchToTile(facesContext, viewToRender, tile);
          else {
             if (log.isDebugEnabled()) {
                String message = null;
                try {
                    message = bundle.getString("tiles.dispatchingToViewHandler");
                } catch (MissingResourceException e) {
                    message = "Dispatching {0} to the default view handler";
                synchronized(format) {
                   format.applyPattern(message);
                   message = format.format(new Object[] { viewId });
                log.debug(message);
             defaultViewHandler.renderView(facesContext, viewToRender);
       private void dispatchToTile(FacesContext facesContext, UIViewRoot viewToRender, ComponentDefinition tile) throws java.io.IOException
           ExternalContext externalContext = facesContext.getExternalContext();
           Object request = externalContext.getRequest();
          Object context = externalContext.getContext();
          TilesContext tilesContext = TilesContextFactory.getInstance(context, request);
          ComponentContext tileContext = ComponentContext.getContext(tilesContext);
          if (tileContext == null) {
             tileContext = new ComponentContext(tile.getAttributes());
             ComponentContext.setContext(tileContext, tilesContext);
          else
             tileContext.addMissing(tile.getAttributes());
          renderTile(facesContext, viewToRender, tile);
          // dispatch to the tile's layout
          //externalContext.dispatch(tile.getPath());
       private void renderTile(FacesContext context, UIViewRoot viewToRender, ComponentDefinition tile) throws IOException, FacesException
           // suppress rendering if "rendered" property on the component is
           // false
           if (!viewToRender.isRendered()) {
               return;
           ExternalContext extContext = context.getExternalContext();
           ServletRequest request = (ServletRequest) extContext.getRequest();
           ServletResponse response = (ServletResponse) extContext.getResponse();
           try {
               if (executePageToBuildView(context, viewToRender, tile)) {
                   response.flushBuffer();
                   //ApplicationAssociate.getInstance(extContext).responseRendered();
                   return;
           } catch (IOException e) {
               throw new FacesException(e);
           // set up the ResponseWriter
           RenderKitFactory renderFactory = (RenderKitFactory)
           FactoryFinder.getFactory(FactoryFinder.RENDER_KIT_FACTORY);
           RenderKit renderKit =
                   renderFactory.getRenderKit(context, viewToRender.getRenderKitId());       
           ResponseWriter oldWriter = context.getResponseWriter();
           initBuffSize(context);
           WriteBehindStringWriter strWriter =
                 new WriteBehindStringWriter(context, bufSize);
           ResponseWriter newWriter;
           if (null != oldWriter) {
               newWriter = oldWriter.cloneWithWriter(strWriter);
           } else {
               newWriter = renderKit.createResponseWriter(strWriter, null,
                       request.getCharacterEncoding());           
           context.setResponseWriter(newWriter);
           newWriter.startDocument();
           doRenderView(context, viewToRender);
           newWriter.endDocument();
           // replace markers in the body content and write it to response.
           ResponseWriter responseWriter;
           if (null != oldWriter) {
               responseWriter = oldWriter.cloneWithWriter(response.getWriter());
           } else {
               responseWriter = newWriter.cloneWithWriter(response.getWriter());
           context.setResponseWriter(responseWriter);
           strWriter.flushToWriter(responseWriter);
           if (null != oldWriter) {
               context.setResponseWriter(oldWriter);
           // write any AFTER_VIEW_CONTENT to the response
           writeAfterViewContent(extContext, response);
       private boolean executePageToBuildView(FacesContext context, UIViewRoot viewToExecute, ComponentDefinition tile)
       throws IOException {
           if (null == context) {
               String message = MessageUtils.getExceptionMessageString
                       (MessageUtils.NULL_PARAMETERS_ERROR_MESSAGE_ID, "context");
               throw new NullPointerException(message);
           if (null == viewToExecute) {
               String message = MessageUtils.getExceptionMessageString
                       (MessageUtils.NULL_PARAMETERS_ERROR_MESSAGE_ID, "viewToExecute");
               throw new NullPointerException(message);
           String mapping = Util.getFacesMapping(context);
           String requestURI =
                 updateRequestURI(viewToExecute.getViewId(), mapping);
           String requestURI =
               updateRequestURI(tile.getPath(), mapping);
           if (mapping.equals(requestURI)) {
               // The request was to the FacesServlet only - no path info
               // on some containers this causes a recursion in the
               // RequestDispatcher and the request appears to hang.
               // If this is detected, return status 404
               HttpServletResponse response = (HttpServletResponse)
                     context.getExternalContext().getResponse();
               response.sendError(HttpServletResponse.SC_NOT_FOUND);
               return true;
           ExternalContext extContext = context.getExternalContext();
           // update the JSTL locale attribute in request scope so that JSTL
           // picks up the locale from viewRoot. This attribute must be updated
           // before the JSTL setBundle tag is called because that is when the
           // new LocalizationContext object is created based on the locale.
           // PENDING: this only works for servlet based requests
           if (extContext.getRequest()
           instanceof ServletRequest) {
               Config.set((ServletRequest)
               extContext.getRequest(),
                          Config.FMT_LOCALE, context.getViewRoot().getLocale());
           // save the original response
           Object originalResponse = extContext.getResponse();
           // replace the response with our wrapper
           ViewHandlerResponseWrapper wrapped =
                 new ViewHandlerResponseWrapper(
                       (HttpServletResponse)extContext.getResponse());
           extContext.setResponse(wrapped);
           // build the view by executing the page
           extContext.dispatch(requestURI);       
           // replace the original response
           extContext.setResponse(originalResponse);
           // Follow the JSTL 1.2 spec, section 7.4, 
           // on handling status codes on a forward
           if (wrapped.getStatus() < 200 || wrapped.getStatus() > 299) { 
               // flush the contents of the wrapper to the response
               // this is necessary as the user may be using a custom
               // error page - this content should be propagated
               wrapped.flushContentToWrappedResponse();
               return true;           
           // Put the AFTER_VIEW_CONTENT into request scope
           // temporarily
           if (wrapped.isBytes()) {
               extContext.getRequestMap().put(AFTER_VIEW_CONTENT,
                                              wrapped.getBytes());
           } else if (wrapped.isChars()) {
               extContext.getRequestMap().put(AFTER_VIEW_CONTENT,
                                              wrapped.getChars());
           return false;
       }You will also find you need to copy a few other methods from the Sun RI.
    There were a couple of calls to ApplicationAssociate.responseRendered() which I just commented out as well (because they are not visible). They stop people changing the StateManager or ViewHandler after responses have been rendered. Probably not a problem since I will have replaced the ViewHandler anyway.
    Steven

  • JSF, tiles, xml and xsl

    Good days people, I am employed at an app that wants to integrate JSF, tiles, xml and xsl.
    Basically the app receives information of the user's interfaz, builds an url with the above mentioned information and invokes to a service web that a xml returns with the information. The idea is to generate the exit in format html or wml with an insole(staff) xsl and to send the result in this format to every jsp that is going to form a part of the page that it will generate tiles. at first I understand that it is feasible, i�d like to know if someone already has done it and since it has done it.
    Just now what I have is a managed bean that receives the parameters of the altar frontal and invokes a method of a service, like this:
    public String encuentra(){
    //deja los atributos privados rellenos.
    String mensaje ;
    crearYRellenarBusquedaVO();
    try {
    setResultado(this.getServicio().obtenerResultadosWML(this.getBusquedaVO()));
    mensaje="succesNoJS";
    }catch(java.lang.IllegalArgumentException e){
    mensaje="error";
    }catch(es.yell.frontlite.exceptions.SrvBusquedaNoxtrumServiceException e1){
    mensaje="error";
    }catch(Exception e2){
    mensaje="error";
    return mensaje;
    public String obtenerResultadosWML(es.yell.frontlite.service.impl.BusquedaVO busquedaVO){
    if (busquedaVO == null){
    throw new IllegalArgumentException(
    "obtenerResultadosJSdesactivado(es.yell.frontlite.service.impl.BusquedaVO busquedaVO) - 'busquedaVO' no puede ser nulo.");
    try{
    return this.manejarObtenerResultadosWML(busquedaVO);
    }catch(es.yell.frontlite.exceptions.SrvBusquedaNoxtrumServiceException e1){
    throw new es.yell.frontlite.exceptions.SrvBusquedaNoxtrumServiceException(
    "Error ejecutando el servicio String obtenerResultadosJSdesactivado(es.yell.frontlite.service.impl.BusquedaVO busquedaVO). " + e1.getCause(),e1);
    }catch(Exception e){
    throw new es.yell.frontlite.exceptions.SrvBusquedaNoxtrumServiceException(
    "Error ejecutando el servicio String obtenerResultadosJSdesactivado(es.yell.frontlite.service.impl.BusquedaVO busquedaVO). " + e.getCause(),e);
    //it returns html code!
    protected String manejarObtenerResultadosWML(es.yell.frontlite.service.impl.BusquedaVO busquedaVO)
    throws java.lang.Exception{
    try{
    // xmlOrigen has full xml response from server
    String xmlOrigen = manejarObtenerResultadosJSActivado(busquedaVO);
    Source xmlSource = new StreamSource(new StringBufferInputStream(xmlOrigen));
    Source xsltSource = new StreamSource(SrvBusquedaNoxtrumServiceImpl.class.getResourceAsStream(Constantes.XSL_FILE));
    StringWriter cadenaSalida = new StringWriter();
    Result bufferResultado = new StreamResult(cadenaSalida);
    TransformerFactory factoriaTrans = TransformerFactory.newInstance();
    Transformer transformador = factoriaTrans.newTransformer(xsltSource);
    transformador.transform(xmlSource, bufferResultado);
    System.out.println(cadenaSalida.toString());
    return cadenaSalida.toString();
    }catch(Exception e2){
    throw new es.yell.frontlite.exceptions.SrvBusquedaNoxtrumServiceException (e2.getMessage());
    With this exit in html, since(as,like) how could i forward it towards a jsp especially?
    faces-config.xml
    <navigation-rule>
    <from-view-id>/index.jsp</from-view-id>
    <navigation-case>
    <from-outcome>succesNoJS</from-outcome>
    <to-view-id>/jsDesactivado.jsp</to-view-id>
    </navigation-case>
    <navigation-case>
    <from-outcome>error</from-outcome>
    <to-view-id>/error.jsp</to-view-id>
    </navigation-case>
    </navigation-rule>
    index.jsp
    <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
    <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    <f:view>
    <f:loadBundle basename="MessageResources" var="msg"/>
    <head>
    <title>
    ${msg.titulo}
    </title>
    </head>
    <body>
    <h:form id="formulario">
    Que:
    <h:inputText id="campoQue" value="#{yellProxy.campoQue}" />
    Donde
    <h:inputText id="campoDonde" value="#{ yellProxy.campoDonde}" />
    <h:commandButton id="boton" value="Encuentra" action="#{yellProxy.encuentra}"/>
    </h:form>
    </f:view>
    </body>
    </html>
    jsDesactivado.jsp
    <%@page contentType="text/html"%>
    <%@page pageEncoding="UTF-8"%>
    <%--
    The taglib directive below imports the JSTL library. If you uncomment it,
    you must also add the JSTL library to the project. The Add Library... action
    on Libraries node in Projects view can be used to add the JSTL 1.1 library.
    --%>
    <%--
    <%@taglib uri=" http://java.sun.com/jsp/jstl/core" prefix="c"%>
    --%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    " http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>JSP Page</title>
    </head>
    <body>
    <h1>JSP Page</h1>
    jsDesactivado!!
    <%--
    This example uses JSTL, uncomment the taglib directive above.
    To test, display the page like this: index.jsp?sayHello=true&name=Murphy
    --%>
    <%--
    <c:if test="${param.sayHello}">
    <!-- Let's welcome the user ${param.name} -->
    Hello ${param.name}!
    </c:if>
    --%>
    <jsp:getProperty name="yellProxy" property="resultado"/>
    </body>
    </html>
    If you could pass me a simple example of use of an app that uses JSF, tiles, xml and xsl, i�be grateful
    regards a lot!

    We too (at Viking Freight) would also be very interested to see if anybody
    has produced such a useful series of classes...
    Frank Lees, Developer
    -----Original Message-----
    From: Amin, Kamran [mailto:kamran.aminframeworkinc.com]
    Sent: Wednesday, January 19, 2000 12:11 PM
    To: 'Forte User'
    Subject: (forte-users) XML and XSL in Forte
    Has anybody integrated an XSL parser with Forte. I know Forte provides us
    with an XML parser but that does not help with parsing XSL. There a lot of
    parsers written in JAVA but that will not integrate well with Forte. We
    need something that will be easy to integrate with Forte. This parser will
    take our XML and XSL to give us a result set. If anybody can comment on the
    subject or share some information I would appreciate it.
    thanks in advance.
    ka
    For the archives, go to: http://lists.sageit.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a new
    email the word: 'Unsubscribe' to: forte-users-requestlists.sageit.com

  • JSF 1.2  and Weblogic 10.3.6 compatibility issue

    Hi All,
    Our application have been developed in JSF 1.2 and spring DAO. We have deployed it on Weblogic 10.3.6 X86 server.
    We are facing an issue like on page load data are populated in the page. Say for example on page load company list getting populated and displayed in the drop down.
    If we do any operation like select a company code or submit the page all the data are flushed out from the pages. After that navigation of pages also doesnot work.
    We neither get any logs nor exception.
    And i am not getting this issue in my local weblogic server - 10.3.5
    We are struggling with this issue for more than 10 days now and its critical time for us to fix it ASAP.
    Thanks,
    Seetha

    Hi kalyan,
    We are not getting any logs. the control is going to javascript but the page get refreshed and all data are just vanishing.
    We have tried to add below entries in weblogic-application.xml
    <wls:prefer-application-packages>
    <wls:package-name>com.sun.facelets.*</wls:package-name>
    <wls:package-name>com.sun.faces.*</wls:package-name>
    <wls:package-name>javax.faces.*</wls:package-name>
    <wls:package-name>javax.servlet.*</wls:package-name>
    </wls:prefer-application-packages>
    No change.
    Tried this
    <wls:library-ref>
    <wls:library-name>jsf</wls:library-name>
    <wls:specification-version>1.2</wls:specification-version>
    <wls:implementation-version>1.2</wls:implementation-version>
    <wls:exact-match>false</wls:exact-match>
    </wls:library-ref>
    No Change.
    tried this
    <wls:prefer-application-resources>
    <wls:resource-name>APP-INF/lib</wls:resource-name>
    </wls:prefer-application-resources>
    No Change
    Anything we missing here. Why it is working in my local server and not in Integration server?
    Kindly help us.
    Thanks,
    Seetha

  • JSF 1.2 and SQJ injection

    Hi members;
    I am using JSF 1.2 with iBATIS as DAO layer, I wonder if the only way to avoid sql injection in my application is to write some code (either JavaScript or Java code) to reject all risky charaters before sending it to the DAO, is there another way at the JSF components .
    Regards

    Don't bother with JavaScript cause it can be override.
    If you're getting data from a backend database, you can use PreparedStatement (use with normal SQL statements) or CallableStatement (use with stored procedures) from Java's java.sql class. These methods can be easily integrated into your DAO class of your JSF project.
    And, if you're still paranoid after using the above methods, you can try to supplement the above methods with regex expressions to only accept white-list data i.e. data that can be executed in your database without causing you any harm.

  • JSF 1.2 and JSTL 1.2

    Now that JSF 1.2 and JSTL 1.2 both use the new unified EL is it possible to use them together? I know they could be used together before but it was discouraged. I'm mostly interested in the functions and the loops (although Trinidad seems to be working pretty well).

    Thanks... I have switched over to facelets but I am getting the same problem:
    <ui:composition template="./../WEB-INF/layout.xhtml">
       <ui:define name="menu">
               <ui:include src="./flightMenu.xhtml" />
       </ui:define>
       <ui:define name="content">
         <h:panelGrid border="0" columns="1" style="width:100%">
            <h:form>
              <rich:tabPanel switchType="ajax" 
                  valueChangeListener="#{flightBean.flightTabPanel.valueChanged}"
                  binding="#{flightBean.flightTabPanel.tabPanel}" id="tab_panel">
                  <f:valueChangeListener type="org.richfaces.TabChangeListener" />
                  <rich:tab name="test" label="test">
                          <h:outputText value="bla bla" />
                  </rich:tab>
                  <ui:repeat var="tabb" value="#{flightBean.flightTabs}">
                          <rich:tab name="#{tabb.fltNum}" >
                                  <h:outputText value="bla bla" />
                          </rich:tab>
                  </ui:repeat>
              </rich:tabPanel>
            </h:form>
         </h:panelGrid>
       </ui:define>
    </ui:composition>The probem is that the tabb.fltNum method is not being invoked... If anyone has been able to build dynamic tabs using RichFaces using a similar approach I will like to see how you did it...
    BRgds, Paul

  • JSF datatable - any difference with JSF 1.1 and JSF 1.2

    Hi All,
    In my project there are lot of Datatables, which retrieve data from the database and display it to the user. For each datatable, the columns are not fixed. I want to create some kind of component that can be reusable.
    It is basically a JSF portlet. Now i have to use RAD 6. RAD 6 supports only JSF1.1. I have to migrate this to RAD7 in the near future. Are there any differences between the Datatable in JSF 1.1 and JSF 1.2?
    I had this approach in mind.
    a) Create the datatable programmatically and put the contents to panelgrid. This way the jsp code will be minimized. Is it a good option.? Are the APIs same in both the versions?
    b) Is it possible to create a custom datatable which can take some key as input. Then based on the key the datatable can be populated with as many columns as desired.
    Please let me know if there are any other good options.
    ~Anitha.

    Hi guys,
    my code goes like this..
    for (int j = 0; j < size; j++) {
                   UIColumn column = new UIColumn();
                   dataTable.getChildren().add(column);
                   HtmlOutputText header = new HtmlOutputText();
                   header.setValue(periodHeader[j]);
                   column.setHeader(header);
                   HtmlOutputText output = new HtmlOutputText();
                   output.setValue(new Double(periodLiability[j]));
                   ValueBinding vb1 = FacesContext.getCurrentInstance()
                             .getApplication().createValueBinding(
                                       ("#{liability.periodLiability["+j+"]}"));
                   output.setValueBinding("value", vb1);
                   column.getChildren().add(output);
    this code gives me the number of headers i need. But, it doesnt render the columns. I have an array of Double (periodLiability) which stores few values of Double type. I want to show thesee values inthe dataTable Column.
    Please help me..

  • CF7 and JDK 1.4.2 - EV SSL Certificate Issue

    Let me start off by telling the group that we do not use CF for any of our applications.  We are a payments company that hosts a .NET API in IIS that 100's of thousands of customer use.  We have one particular customer using CF7 and JDK 1.4.2 who is currently unable to process against our API.  About a week ago we upgraded our SSL certificates to EV (Extended Validation) and since that time our once happy customer is now unhappy.  I have spent hours working with him, going through FAQs and walk throughs, knowledge bases and forums and have had no luck.  Here are the details:
    EV Certificate issued by DigiCert (4096-bit).
    Customer is on CF7 and JDK 1.4.2.
    When he attempts to process against our API with the new certificate he gets 'Connection Failure: Status code unavailable' message from his CF application.  He is using cfhttp to post his requests.  We found a work around that indicated that the only issue with JDK 1.4.2 was importing the high-bit certificates.  Our customer installed JDK 1.6, imported the certificate (and all intermediate certificates) successfully into the cacerts file, but when attempting to list using JDK 1.4.2 is returns an invalid certificate error and still will not work.
    Please help as we are currently in a work around state for this customer (not long term) and we have exhausted the resources we have access to for solving this issue.
    Thanks in advance to those gurus that reply.  I have attached a sample post from our customers logs with non-essential data removed.
    I can be reached by phone at 801-341-5620 if anyone feels like reaching out to talk.
    - Dave

    Dave,
    I am having a similar issue with CF7 and PayPal's Reporting API which also uses EV SSL.
    I can offer that in my testing, both CF 8 and CF 9 do seem to be able to work when using CFHTTP and EV SSL,
    so the only solution I can offer at this time is to make the suggestion to your customer that they need to upgrade
    to either CF 8 or CF 9 to get the issue quickly resolved.
    I'm still working to see if I can find a solution for CF7 and I've been asking around in the CF community for help, so
    if I do find a solution, I'll definitely post it there for you.
    Cheers

  • Difference between SUN JDK V1.4.2_05 and JDK V1.4.2_07

    difference between SUN JDK V1.4.2_05 and JDK V1.4.2_07 and I want to the link in SUN for that. I want to know the bug fixes between them.

    Perhaps you should look at the documentation which comes with JDK 1.4.2_08.
    It has the bugs fixed listed.

Maybe you are looking for

  • Touch screen on treo pro unresposive. i have done soft reset, but no change.

    I have Palm Treo Pro The phone is not locked up, but the screen will not respond to touch. I can only use buttons. Any suggestions Thanks Randy Post relates to: Treo Pro T850U (Unlocked)

  • Updated to 10.8.5 and now app store won't work?

    I have just updated my Mac 10 version 10.8.5 and now it is saying that the App Store won't work with this version. Itunes also won't open as this obviously hasn't updated properly either. Has anyone else had this problem? I don't seem to be able to r

  • Migration Assistant Trouble

    Hello all, I have a very sticky problem. I recently upgraded the hard drive in my Macbook Pro, before I did this I used 'Carbon Copy Cloner' to make a copy of my drive, I didn't make a disk image, I just copied the entire drive over to my external dr

  • JScrollPane - SCROLL BAR width?

    I currently have a JEditorPane inside a JScrollPane Whenever I have content that exceeds the height of the JScrollPane, I get a scroll bar on the right. Unfortunately, I think this scroll bar is a bit TOO THICK and is unsightly. Is there anway I can

  • How To: Fix Permissions When "Everyone" Is Set To "No Access" On HD

    I was messing around with the Permissions of the Macintosh HD. I set the "Everyone" option to "No Access," by right clicking on the Hard Drive and choosing "Get Info." Of course, when I reset the computer it would not boot up. I read numerous posts o