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,
resin
2.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 的持久化