5 Replies Latest reply on Nov 19, 2009 2:22 PM by walterjwhite

    Jetty 6.1.21 page not found

    walterjwhite

      I am using Jetty to test my web application inside of maven and it works well there; When I try to deploy the same web application to a stand-alone instance of Jetty (same version), I only get the page not found page.  For some odd reason, it renders properly minus any richfaces resources.


      No matter what request I make, they all are redirected to the page not found page.



      Any ideas of where to start and what information you would like me to post?


      I am using jetty 6.1.21.



      Walter

        • 1. Re: Jetty 6.1.21 page not found
          kragoth

          Check your server log files. It maybe something simple like 2 of the same libraries on the classpath or something like that. Generally speaking there will be something in your log files to indicate where to start your investigation.

          • 2. Re: Jetty 6.1.21 page not found
            lvdberg

            walter,


            check if all the libs are present. Thre is a difference between Jetty-testing and the Jetty deploy. Just use an unzipper to see if all jars are in the WEBINF/lib dir and check if the JSF and Facelets jasr are present.


            Leo

            • 3. Re: Jetty 6.1.21 page not found
              walterjwhite

              Thanks for your replies.  I am looking now and not seeing any duplicate libraries.  In both cases, I am building a war file, the dependencies don't change as I'm using the same profile.


              I will try to see what libraries are loaded when I run Jetty locally and try to see if anything clashes with what is installed in my standalone instance.



              Thanks,
              Walter

              • 4. Re: Jetty 6.1.21 page not found
                walterjwhite
                Hi,

                I don't know if this is the right place to post about jetty + seam issues, but here is my main configuration file:




                <?xml version="1.0"?>

                <!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">

                <!-- http://docs.codehaus.org/display/JETTY/jetty.xml                -->

                <Configure id="Server" class="org.mortbay.jetty.Server">

                     <Array id="plusConfig" type="java.lang.String">

                          <Item>org.mortbay.jetty.webapp.WebInfConfiguration</Item>

                          <Item>org.mortbay.jetty.plus.webapp.EnvConfiguration</Item>

                          <Item>org.mortbay.jetty.plus.webapp.Configuration</Item>

                          <Item>org.mortbay.jetty.webapp.JettyWebXmlConfiguration</Item>

                          <Item>org.mortbay.jetty.webapp.TagLibConfiguration</Item>

                     </Array>

                     

                     <Set name="sessionIdManager">

                          <New class="org.mortbay.jetty.servlet.HashSessionIdManager">

                               <Set name="workerName">node1</Set>

                          </New>

                     </Set>

                 

                     <Set name="ThreadPool">

                          <New class="org.mortbay.thread.QueuedThreadPool">

                               <Set name="minThreads">10</Set>

                               <Set name="maxThreads">200</Set>

                               <Set name="lowThreads">20</Set>

                               <Set name="SpawnOrShrinkAt">2</Set>

                          </New>



                          <!-- Optional Java 5 bounded threadpool with job queue

                          <New class="org.mortbay.thread.concurrent.ThreadPool">

                               <Set name="corePoolSize">50</Set>

                               <Set name="maximumPoolSize">50</Set>

                          </New>

                      -->

                     </Set>



                     <Call name="addConnector">

                          <Arg>

                               <New class="org.mortbay.jetty.nio.SelectChannelConnector">

                                    <Set name="host"><SystemProperty name="jetty.host" /></Set>

                                    <Set name="port"><SystemProperty name="jetty.port" default="80"/></Set>

                                    <Set name="maxIdleTime">30000</Set>

                                    <Set name="Acceptors">2</Set>

                                    <Set name="statsOn">false</Set>

                                    <Set name="confidentialPort">443</Set>

                                    <Set name="lowResourcesConnections">5000</Set>

                                    <Set name="lowResourcesMaxIdleTime">5000</Set>

                               </New>

                          </Arg>

                     </Call>

                     <Set name="handler">

                          <New id="Handlers" class="org.mortbay.jetty.handler.HandlerCollection">

                               <Set name="handlers">

                                    <Array type="org.mortbay.jetty.Handler">

                                         <Item>

                                              <New id="Contexts" class="org.mortbay.jetty.handler.ContextHandlerCollection"/>

                                         </Item>

                                         <Item>

                                              <New id="DefaultHandler" class="org.mortbay.jetty.handler.DefaultHandler"/>

                                         </Item>

                                         <Item>

                                              <New id="RequestLog" class="org.mortbay.jetty.handler.RequestLogHandler"/>

                                         </Item>

                                    </Array>

                               </Set>

                          </New>

                     </Set>



                <!--   

                     <Call name="addLifeCycle">

                          <Arg>

                               <New class="org.mortbay.jetty.deployer.ContextDeployer">

                                    <Set name="contexts"><Ref id="Contexts"/></Set>

                                    <Set name="configurationDir"><SystemProperty name="jetty.home" default="."/>/contexts</Set>

                                    <Set name="scanInterval">5</Set>

                               </New>

                          </Arg>

                     </Call>

                -->

                     

                     <Call name="addLifeCycle">

                          <Arg>

                               <New class="org.mortbay.jetty.deployer.WebAppDeployer">

                                    <Set name="contexts"><Ref id="Contexts"/></Set>

                                    <Set name="webAppDir"><SystemProperty name="jetty.home" default="."/>/webapps</Set>

                                    <Set name="parentLoaderPriority">false</Set>

                                    <Set name="extract">true</Set>

                                    <Set name="allowDuplicates">false</Set>

                                    <Set name="defaultsDescriptor"><SystemProperty name="jetty.home" default="."/>/etc/walterjwhite.com.web.defaults.xml</Set>

                                    

                                    <Set name="configurationClasses"><Ref id="plusConfig"/></Set>

                               </New>

                          </Arg>

                     </Call>

                     

                     <!--     Logging     -->

                     <!--     Request Log     -->

                     <Ref id="RequestLog">

                          <Set name="requestLog">

                               <New id="RequestLogImpl" class="org.mortbay.jetty.NCSARequestLog">

                                    <Set name="filename"><SystemProperty name="jetty.logs" default="./logs"/>/yyyy_mm_dd.request.log</Set>

                                    <Set name="filenameDateFormat">yyyy_MM_dd</Set>

                                    <Set name="retainDays">90</Set>

                                    <Set name="append">true</Set>

                                    <Set name="extended">false</Set>

                                    <Set name="logCookies">false</Set>

                                    <Set name="LogTimeZone">GMT</Set>

                               </New>

                          </Set>

                     </Ref>

                     

                     <!--     Server Log     -->

                     <New id="ServerLog" class="java.io.PrintStream">

                          <Arg>

                               <New class="org.mortbay.util.RolloverFileOutputStream">

                                    <Arg><SystemProperty name="jetty.home" default="."/>/logs/yyyy_mm_dd.stderrout.log</Arg>

                                    <Arg type="boolean">false</Arg>

                                    <Arg type="int">90</Arg>

                                    <Arg><Call class="java.util.TimeZone" name="getTimeZone"><Arg>GMT</Arg></Call></Arg>

                                    <Get id="ServerLogName" name="datedFilename"/>

                               </New>

                          </Arg>

                     </New>



                     <Call class="org.mortbay.log.Log" name="info"><Arg>Redirecting stderr/stdout to <Ref id="ServerLogName"/></Arg></Call>

                     <Call class="java.lang.System" name="setErr"><Arg><Ref id="ServerLog"/></Arg></Call>

                     <Call class="java.lang.System" name="setOut"><Arg><Ref id="ServerLog"/></Arg></Call>

                     

                    <Set name="stopAtShutdown">true</Set>

                    <Set name="sendServerVersion">false</Set>

                    <Set name="sendDateHeader">true</Set>

                    <Set name="gracefulShutdown">1000</Set>

                </Configure>


                If I remove the web defaults, I don't see any change in behaviour, so that is irrelevant.  I am using the web app deployer to deploy the web application located at /webapps/ROOT.  It is already exploded.

                Inside my jetty-env.xml, I set the context path, but I don't believe it actually does anything:

                <?xml version="1.0"?>

                <!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">

                <Configure id="WalterJWhite" class="org.mortbay.jetty.webapp.WebAppContext">

                     <Set name="contextPath">/</Set>
                </Configure>




                Any ideas?


                Walter
                • 5. Re: Jetty 6.1.21 page not found
                  walterjwhite

                  Hi all,


                  I think I may have located the issue.


                  I am now using the Jetty 7 Maven Plugin and have configured the plugin to use a set of defaults such as the QoSFilter and GZIPFilter.  When I configure this as the default descriptor (webdefaults.xml),  I get the exact same issue I get with Jetty 7 standalone.


                  I haven't had a chance yet to disable the web defaults in the standalone instance to test this.


                  So, to me, it appears that for some odd reason the web defaults configuration is breaking my server configuration.  I really want to use the QoSFilter as well as GZIPFilter.


                  I'll post what I find later today.




                  Walter