谈笑有鸿儒,往来无白丁

在恰当的时间、地点以恰当的方式表达给恰当的人...  阅读的时候请注意分类,佛曰我日里面是谈笑文章,其他是各个分类的文章,积极的热情投入到写博的队伍中来,支持blogjava做大做强!向dudu站长致敬>> > 我的微博敬请收听
 先介绍如何让Spring2.0在Resin下正常运行。
参考:http://www.caucho.com/resin-3.0/xml/jaxp.xtp#xerces
因为Resin缺省没有用xerces解析xml,所以resin无法解析Spring2.0的配置文件。
具体做法:1. 拷贝xercesImpl.jar,xml-apis.jar,如果用到xslt,还需要拷贝xalan.jar;
2. 将下面几行加入到resin.conf中:
<system-property javax.xml.parsers.DocumentBuilderFactory='org.apache.xerces.jaxp.DocumentBuilderFactoryImpl'/>
<system-property javax.xml.parsers.SAXParserFactory='org.apache.xerces.jaxp.SAXParserFactoryImpl'/>
如果用到xslt,还要加入一行:<system-property javax.xml.transform.TransformerFactory='org.apache.xalan.processor.TransformerFactoryImpl>
 
因为struts2的服务方式为filter方式,而Resin的mod_caucho插件正常情况下仅会对Servlet,Jsp服务,不会对Filter过滤的网址服务,这给struts2在Resin上使用带来一些问题。这可使用"Special servlet-mappings",详细情况可以参考http://www.caucho.com/resin-3.0/install/plugin-dispatch.xtp
也就是说,对于一些特殊的url,可以使用plugin_match来让resin来服务,而plugin_ignore的作用正好相反。
在这里,我们需要plugin_match,为了避免打乱正常的配置,我们使用和web.xml文件相同作用的resin-web.xml来设置相应的url,这样设置仅对resin有效,不影响其他server,还是不错的。
最后的resin-web.xml是这样的:
<web-app xmlns="http://caucho.com/ns/resin">
 <servlet-mapping url-pattern='/struts/*' servlet-name='plugin_match'/>
 <servlet-mapping url-pattern='/other/*' servlet-name='plugin_match'/>
 <servlet-mapping url-pattern='*.action' servlet-name='plugin_match'/>
 <servlet-mapping url-pattern='*.html' servlet-name='plugin_match'/>
 <servlet-mapping url-pattern='*.do' servlet-name='plugin_match'/>
 <servlet-mapping url-pattern='/dwr/*' servlet-name='plugin_match'/>             
</web-app>
这样struts2的action就可以正常工作了。
 
另外,如果url后面自动跟上jsessionid的话,resin会反应404找不到网页的错误。在host里配置里加上<session-config enable-cookies='true' enable-url-rewriting='false'/>可避免些问题。
摘自:
http://mtiger2k.blog.51cto.com
posted on 2006-12-27 08:19 坏男孩 阅读(1701) 评论(2)  编辑  收藏 所属分类: 侠客岛

FeedBack:
# re: 让Struts2 + Spring2在Resin3.0.x下正常运行
2006-12-27 10:19 | 杨杰荣
终于找到解决的方法了, 有空试一下!
不过我这里(广西南宁)怎么访问不了http://www.caucho.com呢, 估计有一年了  回复  更多评论
  
# re: 让Struts2 + Spring2在Resin3.0.x下正常运行[未登录]
2007-08-17 16:12 |
我正打算做,正好试试,最近怎么也访问不了 http://www.sousw.com   回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航: