<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-124  評論-194  文章-0  trackbacks-0

    之前文章提到過用MAVEN2啟動JETTY,這里介紹一種直接從ECLIPSE中啟動的辦法。
     
    適用于6.1.3以上,包括6.1.5的JETTY。

    它主要是利用了JDK的代碼自動更換性能(code hot replace),可以不用重啟JETTY就調試、更換資源文件。注意:一定是DEBUG方式運行才有這項功能。

    所以應該說這篇文章的方法更好:

    在Run->Debug中,New一個Java Application的配置,填入:

    org.mortbay.xml.XmlConfiguration

    參數填入一個自己的JETTY配置文件:




    完成的myjetty.xml配置文件,請將其中的相應目錄修改成自己項目的目錄:

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

    <!-- =============================================================== -->
    <!-- Configure the Jetty Server                                      -->
    <!--                                                                 -->
    <!-- Documentation of this file format can be found at:              -->
    <!-- http://docs.codehaus.org/display/JETTY/jetty.xml                -->
    <!--                                                                 -->
    <!-- =============================================================== -->


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

        
    <!-- =========================================================== -->
        
    <!-- Server Thread Pool                                          -->
        
    <!-- =========================================================== -->
        
    <Set name="ThreadPool">
          
    <!-- Default bounded blocking threadpool 
          
    -->
          
    <New class="org.mortbay.thread.BoundedThreadPool">
            
    <Set name="minThreads">10</Set>
            
    <Set name="maxThreads">250</Set>
            
    <Set name="lowThreads">25</Set>
          
    </New>

          
    <!-- Optional Java 5 bounded threadpool with job queue 
          <New class="org.mortbay.thread.concurrent.ThreadPool">
            <Set name="corePoolSize">250</Set>
            <Set name="maximumPoolSize">250</Set>
          </New>
          
    -->
        
    </Set>



        
    <!-- =========================================================== -->
        
    <!-- Set connectors                                              -->
        
    <!-- =========================================================== -->
        
    <!-- One of each type!                                           -->
        
    <!-- =========================================================== -->

        
    <!-- Use this connector for many frequently idle connections
             and for threadless continuations.
        
    -->    
        
    <Call name="addConnector">
          
    <Arg>
              
    <New class="org.mortbay.jetty.nio.SelectChannelConnector">
                
    <Set name="port"><SystemProperty name="jetty.port" default="8080"/></Set>
                
    <Set name="maxIdleTime">30000</Set>
                
    <Set name="Acceptors">2</Set>
                
    <Set name="statsOn">false</Set>
                
    <Set name="confidentialPort">8443</Set>
            
    <Set name="lowResourcesConnections">5000</Set>
            
    <Set name="lowResourcesMaxIdleTime">5000</Set>
              
    </New>
          
    </Arg>
        
    </Call>

        
    <!-- Use this connector if NIO is not available.
        <Call name="addConnector">
          <Arg>
              <New class="org.mortbay.jetty.bio.SocketConnector">
                <Set name="port">8081</Set>
                <Set name="maxIdleTime">50000</Set>
                <Set name="lowResourceMaxIdleTime">1500</Set>
              </New>
          </Arg>
        </Call>
        
    -->

        
    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
        
    <!-- To add a HTTPS SSL listener                                     -->
        
    <!-- see jetty-ssl.xml to add an ssl connector. use                  -->
        
    <!-- java -jar start.jar etc/jetty.xml etc/jetty-ssl.xml             -->
        
    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
        
        
    <!-- =========================================================== -->
        
    <!-- Set up global session ID manager                            -->
        
    <!-- =========================================================== -->
        
    <!--
        <Set name="sessionIdManager">
          <New class="org.mortbay.jetty.servlet.HashSessionIdManager">
            <Set name="workerName">node1</Set>
          </New>
        </Set>
        
    -->

        
    <!-- =========================================================== -->
        
    <!-- Set handler Collection Structure                            --> 
        
    <!-- =========================================================== -->
        
    <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>
        
    <Set name="handler">   
      
    <New id="Handlers" class="org.mortbay.jetty.handler.HandlerCollection">   
        
    <Set name="handlers">   
          
    <Array type="org.mortbay.jetty.Handler">   
            
    <!--Item>   
              <New id="RequestLog" class="org.mortbay.jetty.handler.RequestLogHandler"/>   
            </Item
    -->   
            
    <Item>   
              
    <New class="org.mortbay.jetty.webapp.WebAppContext">   
                
    <Set name="contextPath">/ebnms</Set>   
                
    <Set name="resourceBase">E:/Prj2/ForMe/Src/flower/src/main/webapp</Set>   
                
    <Call name="addServlet">   
                  
    <Arg>org.mortbay.jetty.servlet.DefaultServlet</Arg>   
                  
    <Arg>/</Arg>   
                
    </Call>   
              
    </New>   
        
    </Item>   
          
    </Array>   
        
    </Set>   
      
    </New>   
    </Set>   


        
    <!-- =========================================================== -->
        
    <!-- Configure Authentication Realms                             -->
        
    <!-- Realms may be configured for the entire server here, or     -->
        
    <!-- they can be configured for a specific web app in a context  -->
        
    <!-- configuration (see $(jetty.home)/contexts/test.xml for an   -->
        
    <!-- example).                                                   -->
        
    <!-- =========================================================== -->
        
    <Set name="UserRealms">
          
    <Array type="org.mortbay.jetty.security.UserRealm">
            
    <!--
            <Item>
              <New class="org.mortbay.jetty.security.HashUserRealm">
                <Set name="name">Test Realm</Set>
                <Set name="config"><SystemProperty name="jetty.home" default="."/>/etc/realm.properties</Set>
              </New>
            </Item>
        
    -->
          
    </Array>
        
    </Set>

        
    <!-- =========================================================== -->
        
    <!-- Configure Request Log                                       -->
        
    <!-- Request logs  may be configured for the entire server here, -->
        
    <!-- or they can be configured for a specific web app in a       -->
        
    <!-- contexts configuration (see $(jetty.home)/contexts/test.xml -->
        
    <!-- for an example).                                            -->
        
    <!-- =========================================================== -->
        
    <!--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">true</Set>
              <Set name="logCookies">false</Set>
              <Set name="LogTimeZone">GMT</Set>
            </New>
          </Set>
        </Ref
    -->

        
    <!-- =========================================================== -->
        
    <!-- extra options                                               -->
        
    <!-- =========================================================== -->
        
    <Set name="stopAtShutdown">true</Set>
        
    <Set name="sendServerVersion">true</Set>
        
    <!--Set name="sendDateHeader">true</Set-->
        
    <!--Set name="gracefulShutdown">1000</Set-->
    </Configure>

    posted on 2007-09-13 21:04 我愛佳娃 閱讀(19656) 評論(8)  編輯  收藏 所屬分類: 服務配置

    評論:
    # re: 目前發現的最好最快的直接在ECLIPSE中JETTY調試方式 2007-09-16 13:56 | shiqiang124@gmail.com
    可以再詳細點嗎?
    是不是在多個

    <modules>
    <module>core</module>
    <module>web</module>
    </modules>
    也可以這種方式?  回復  更多評論
      
    # re: 目前發現的最好最快的直接在ECLIPSE中JETTY調試方式[未登錄] 2007-09-16 14:21 | 我愛佳娃
    沒明白你的意思呀?我就是這樣在ECLIPSE中配置的,調試和動態代碼替換都沒問題。沒有多加什么配置。好像這也不是JETTY的配置指令呀?  回復  更多評論
      
    # re: 目前發現的最好最快的直接在ECLIPSE中JETTY調試方式 2007-09-30 11:27 | 草鞋超人
    Jetty的XML configuration 實在是太暈了,官網的文檔里也說得語焉不詳。難道真的要讓人去看code嗎?還是逼人買他的Consultant 服務啊……

    這里想提一個問題,在myjetty.xml配置文件中,如果想加入jndi的data source的話,應該設置在什么地方???放在WEB-INF\jetty-env.xml中的時候總是讀不出來。而如果用jetty-maven-plugin的話都是沒問題的,而且jetty-env.xml也不一定要放在WEB-INF下面??梢栽趐om.xml中這樣指定:

    <configuration>
    <scanIntervalSeconds>10</scanIntervalSeconds>
    <jettyEnvXml>${basedir}/src/test/jetty/jetty-env.xml</jettyEnvXml>
    <connectors>
    <connector implementation="org.mortbay.jetty.bio.SocketConnector">
    <port>${localPort}</port>
    <maxIdleTime>60000</maxIdleTime>
    </connector>
    </connectors>
    </configuration>

    而且運行也很正常,可是用樓主的方法的話,就怎么都不行了,真是痛苦死了,好想用這種方式在eclipse里debug啊……  回復  更多評論
      
    # re: 目前發現的最好最快的直接在ECLIPSE中JETTY調試方式 2008-04-30 14:55 | ll
    very good!
    但是,修改jsp文件報文件鎖定,不能修改啊  回復  更多評論
      
    # re: 目前發現的最好最快的直接在ECLIPSE中JETTY調試方式 2008-04-30 20:55 | 我愛佳娃
    不會呀,我用了很久了,修改JSP和JS文件都不用重啟服務器,修改函數內的代碼也不需要重啟,只有你加新的方法時才會提示重啟。  回復  更多評論
      
    # re: 目前發現的最好最快的直接在ECLIPSE中JETTY調試方式[未登錄] 2008-06-04 14:36 | alfred
    jettyluncher  回復  更多評論
      
    # re: 目前發現的最好最快的直接在ECLIPSE中JETTY調試方式 2008-06-04 20:39 | 我愛佳娃
    我現在每天都在用此博文所指的工具,非常舒服。

    樓上指的是這個嗎:http://jettylauncher.sourceforge.net/

    我不想再試,有興趣可以嘗試下,好像已經停止開發了。
    Development on this project ended
    The plugin supports only Eclipse 2.x versions and older versions of Jetty (5.x and downwards) and the JVM (1.4/ 1.5)  回復  更多評論
      
    # re: 目前發現的最好最快的直接在ECLIPSE中JETTY調試方式[未登錄] 2010-01-15 20:11 | Caesar
    @ll
    @ll

    詳見Eclipse Jetty官方文檔
    http://wiki.eclipse.org/Jetty/Troubleshooting

    運行Jetty無法保存文件是因為Windows的文件處理機制的限制,原文內容如下:
    This is a limitation of Windows -- having a file open in one process means that you can't write to that same file with another process. Since Jetty has mapped the file to its cache, which prevents the file from being edited, you'll need to turn off caching to work around the problem. You can turn off caching in the default servlet by setting <useFileMappedBuffer> to false in webdefault.xml.

    只要修改Jetty安裝目錄下的 /etc/webdefault.xml 中的屬性useFileMappedBuffer 為false即可  回復  更多評論
      
    主站蜘蛛池模板: 国产精品亚洲自在线播放页码 | 国产成人A在线观看视频免费 | 伊在人亚洲香蕉精品区麻豆| 亚洲妇熟XXXX妇色黄| 亚洲kkk4444在线观看| 免费无码又爽又刺激网站| 成人男女网18免费视频| 亚洲精品国产成人片| 亚洲欧美日韩中文无线码| 永久免费av无码网站yy| 国产高清免费观看| 老司机亚洲精品影院| 四虎影视永久在线精品免费| 国产成人免费在线| 中文字幕在亚洲第一在线| 波多野结衣亚洲一级| 国产猛男猛女超爽免费视频| 国产在线a不卡免费视频| 亚洲理论片在线观看| 成在线人视频免费视频| 日本成人免费在线| 亚洲最大黄色网址| a毛片全部播放免费视频完整18| 日本午夜免费福利视频| 亚洲国产成a人v在线| APP在线免费观看视频| 免费a级毛片大学生免费观看| 亚洲制服在线观看| 久久狠狠躁免费观看2020| 亚洲人成网站在线观看青青| 亚洲午夜无码久久| 国产在线观看麻豆91精品免费| 亚洲人成色77777| 免费人成大片在线观看播放| 无码国产精品久久一区免费| 亚洲电影一区二区三区| 久久国产精品免费一区| 日韩亚洲国产二区| 亚洲人成欧美中文字幕| 美女被免费喷白浆视频| 亚洲精品无码久久久久久久|