1,在resin3.0中,deploy是默認的發布目錄,在MyEclipse中直接發布到resin的deploy目錄中,起動服務器就會運行發布的項目,而在resin-3.1.1中發布到deploy目錄下的項目不會運行,需要修改conf目錄下的resin.conf文件,里面有一行 <web-app-deploy path="webapps"/>是設置發布目錄路徑的,我們在后邊加上一行 <web-app-deploy path="deploy"/>,這樣在deploy目錄下的項目就能正常運行了。
?? 還有一個辦法,我沒試過:在<host id="" root-directory=".">標記中找到</web-app>在這個標記后面手動添加一行配置 <web-app id="/項目名稱" root-directory="deploy/項目名稱"/>
2,resin2.1.17 官方下載地址
官網上已經沒有相關下載鏈接,但是文件還在,趁早下吧,用3以上版本就得付費買證書了
Linux:http://caucho.com/download/resin-2.1.17.tar.gz
win:http://caucho.com/download/resin-2.1.17.zip
好像resin2的最后一個版本是2.1.18
3,
resin2.x支持JSP 1.2/Servlet 2.3
3.X支持JSP 2.0/Servlet 2.4
3.03不需要許可證
3.04開始需要許可證
4,仔細翻看了Resin2和Resin3的resin.conf文件例子發現Resin2系列采用了資源定義的方式統一化的定義各種雷動的配置,而Resin3則把它省略成直接用res-ref-name作為限定標識的形式,這樣的利弊很容易看出:
利:調用配置方便程序可以更簡潔的讀取配置,同時使配置更為簡潔。
弊:這樣的形式雖然使程序簡潔,配置方便但同時帶來了程序上管理更為復雜每個資源定義名的判斷都需單獨判斷而不能在程序內統一判斷
5,
要想讓resin能夠動態加載class,要三個條件,1.高版本的resin? 2.與之相匹配的jdk 3.以-Xdebug方式啟動。來源
6,
resin.conf里面有一段內容如下所示:
? <!--
???? - Ping to test if the web server is still up.? You can uncomment this
???? - and point it to pages on the webserver that exercise your main
???? - logic (like database access).? If the GET fails, it will restart
???? - the server.? This will catch deadlocks, but not JDK freezes.
???? - <ping sleep-time=’1m’ retry-count=’3’ retry-time=’1s’>
???? -?? <url>http://localhost:8080/ping/ping.jsp</url>
???? - </ping>
?? -->
這段內容默認情況下是被注釋的。它的功能是讓Resin每隔一分鐘就測試一下能否訪問/ping/ping.jsp文件,測試時間是1s,如果不成功,就重試三次。如果三次都不成功,Resin就自動重啟。
7,
報錯:sun.tools.javac.Main 已過時
把配置文件中的
<java compiler=”internal" compiler-args="" />
改為:
<java compiler="javac" compiler-args="" />
8,resin2和resin3配置的部分區別
1)使用datasource時,resin3好像需要把mysql驅動放到resin3\lib下,而resin2只需要放到web應用的lib下?
2)
resin2:<web-app id='/' app-dir='C:/resin2/webapps/blog'>
resin3:<web-app id='/' document-directory='C:/resin3/deploy/blog'>
3)數據源
resin2:
<resource-ref><res-ref-name>jdbc/blog</res-ref-name><res-type>javax.sql.DataSource</res-
type><init-param driver-name="com.mysql.jdbc.Driver"/><init-param
url="jdbc:mysql://127.0.0.1:3306/blog?useUnicode=true&characterEncoding=UTF-8"/><init-
param user="blog"/><init-param password="blog" /><init-param max-connections="50"/><init-
param max-idle-time="50"/></resource-ref>
resin3:
? <database><jndi-name>jdbc/blog</jndi-name><driver type="com.mysql.jdbc.Driver">?????
<url>jdbc:mysql://127.0.0.1:3306/blog?useUnicode=true&characterEncoding=UTF-8</url><user>blog</user><password>blog</password></driver></database>
9,myeclipse下使用resin調試jsp
修改resin.conf:
<javac compiler="internal" args="-g -source 1.5"/>
加上-g就行了。
好像resin2不行
18,
TOMCAT與Resin之比較
Apache+resin系統按路徑分發的實現及其負載均衡中的session機制
Resin與apache整合實現負載均衡
關于resin的 session 的持久化
?? 還有一個辦法,我沒試過:在<host id="" root-directory=".">標記中找到</web-app>在這個標記后面手動添加一行配置 <web-app id="/項目名稱" root-directory="deploy/項目名稱"/>
2,resin2.1.17 官方下載地址
官網上已經沒有相關下載鏈接,但是文件還在,趁早下吧,用3以上版本就得付費買證書了
Linux:http://caucho.com/download/resin-2.1.17.tar.gz
win:http://caucho.com/download/resin-2.1.17.zip
好像resin2的最后一個版本是2.1.18
3,
resin2.x支持JSP 1.2/Servlet 2.3
3.X支持JSP 2.0/Servlet 2.4
3.03不需要許可證
3.04開始需要許可證
4,仔細翻看了Resin2和Resin3的resin.conf文件例子發現Resin2系列采用了資源定義的方式統一化的定義各種雷動的配置,而Resin3則把它省略成直接用res-ref-name作為限定標識的形式,這樣的利弊很容易看出:
利:調用配置方便程序可以更簡潔的讀取配置,同時使配置更為簡潔。
弊:這樣的形式雖然使程序簡潔,配置方便但同時帶來了程序上管理更為復雜每個資源定義名的判斷都需單獨判斷而不能在程序內統一判斷
5,
要想讓resin能夠動態加載class,要三個條件,1.高版本的resin? 2.與之相匹配的jdk 3.以-Xdebug方式啟動。來源
6,
resin.conf里面有一段內容如下所示:
? <!--
???? - Ping to test if the web server is still up.? You can uncomment this
???? - and point it to pages on the webserver that exercise your main
???? - logic (like database access).? If the GET fails, it will restart
???? - the server.? This will catch deadlocks, but not JDK freezes.
???? - <ping sleep-time=’1m’ retry-count=’3’ retry-time=’1s’>
???? -?? <url>http://localhost:8080/ping/ping.jsp</url>
???? - </ping>
?? -->
這段內容默認情況下是被注釋的。它的功能是讓Resin每隔一分鐘就測試一下能否訪問/ping/ping.jsp文件,測試時間是1s,如果不成功,就重試三次。如果三次都不成功,Resin就自動重啟。
7,
報錯:sun.tools.javac.Main 已過時
把配置文件中的
<java compiler=”internal" compiler-args="" />
改為:
<java compiler="javac" compiler-args="" />
8,resin2和resin3配置的部分區別
1)使用datasource時,resin3好像需要把mysql驅動放到resin3\lib下,而resin2只需要放到web應用的lib下?
2)
resin2:<web-app id='/' app-dir='C:/resin2/webapps/blog'>
resin3:<web-app id='/' document-directory='C:/resin3/deploy/blog'>
3)數據源
resin2:
<resource-ref><res-ref-name>jdbc/blog</res-ref-name><res-type>javax.sql.DataSource</res-
type><init-param driver-name="com.mysql.jdbc.Driver"/><init-param
url="jdbc:mysql://127.0.0.1:3306/blog?useUnicode=true&characterEncoding=UTF-8"/><init-
param user="blog"/><init-param password="blog" /><init-param max-connections="50"/><init-
param max-idle-time="50"/></resource-ref>
resin3:
? <database><jndi-name>jdbc/blog</jndi-name><driver type="com.mysql.jdbc.Driver">?????
<url>jdbc:mysql://127.0.0.1:3306/blog?useUnicode=true&characterEncoding=UTF-8</url><user>blog</user><password>blog</password></driver></database>
9,myeclipse下使用resin調試jsp
修改resin.conf:
<javac compiler="internal" args="-g -source 1.5"/>
加上-g就行了。
好像resin2不行
18,
TOMCAT與Resin之比較
Apache+resin系統按路徑分發的實現及其負載均衡中的session機制
Resin與apache整合實現負載均衡
關于resin的 session 的持久化