`
ijavagos
  • 浏览: 1188777 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

WebLogic部署SSH2项目的小结

阅读更多

前不久用Struts2+Spring3+Hibernate3做了一个简单的B2C的小项目,那是为了方便使用的Tomcat6作为服务器,但最近工作不是很忙,就尝试着把前面做的B2C部署到WebLogic10上,本以为不会有什么问题,但实际中却遇到了几个问题,总结如下:

WebLogic10Hibernate3的冲突问题

在网上找了很久,方案在日志{weblogic10hibernate3 冲突解决方案() }中已经说明了,这里就不再说明。

web.xml中配置的spring自动管理session用的是监听器形式的,在启动时会报错

解决方案:将原来监听器形式

<listener>

<listener-class>

org.springframework.orm.hibernate3.support.OpenSessionInViewInterceptor

</listener-class>

</listener>

更改成过滤器形式,如下

<filter>

<filter-name>autoSession</filter-name>

<filter-class>

org.springframework.orm.hibernate3.support.OpenSessionInViewFilter

</filter-class>

</filter>

<filter-mapping>

<filter-name>autoSession</filter-name>

<url-pattern>/*</url-pattern>

</filter-mapping>

web.xml配置的struts2的核心过滤器中的struts.xml文件不能加载,以及在log4j.properties文件配置的日志文件路径问题:

说明:我有这样一个习惯,尽可能的将项目的配置文件放置在WEB-INF/config/文件夹下,相信大家也知道,如果将struts.xml文件配置到非CLASSPATH下,则需要在web.xml配置strut2核心过滤器时,初始化struts.xml文件路径。如我将struts.xml文放置在WEB-INF/config/struts/路径下。如果是在Tomcat6服务器下,我是在web.xml中这样配置的,如下:

<filter>

<filter-name>struts2</filter-name>

<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>

<init-param>

<param-name>config</param-name>

<param-value>

struts-default.xml,struts-plugin.xml,../config/struts/struts.xml

</param-value>

</init-param>

</filter>

<filter-mapping>

<filter-name>struts2</filter-name>

<url-pattern>/*</url-pattern>

</filter-mapping>

但是在WebLogic10服务器下,这种形式不能加载struts.xml文件,原因是它找不到../config/struts/struts.xml文件,于是通过在WebLogic10服务器下查找B2C的目录结构,发现B2C项目在$WEBLOGIC_HOME/user_projects/domains/milodomain/autodeploy/(说明:$WEBLOGIC_HOME表示安装的WebLogic10所在目录,milodomain表示本人自己建立的domain然后再log4j.properties配置日志文件为log4j.appender.file.File=../webapps/${工程名称}/logs/debug.log发现在启动WebLogic10服务器,在$WEBLOGIC_HOME/user_projects/domains目录下生成一个webapps文件夹,里面有日志文件,并且日志打出,于是推断“../”表示$WEBLOGIC_HOME/user_projects/domains,最后也就得到不能加载struts.xml文件的解决方案如下:{修改web.xmlstruts2核心过滤器配置文件的路径}

<filter>

<filter-name>struts2</filter-name>

<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>

<init-param>

<param-name>config</param-name>

<param-value>

struts-default.xml,

struts-plugin.xml,

../milodomain/autodeploy/${工程名称}/WEB-INF/config/struts/struts.xml

</param-value>

</init-param>

</filter>

<filter-mapping>

<filter-name>struts2</filter-name>

<url-pattern>/*</url-pattern>

</filter-mapping>

同理我们修改log4j.properties中日志文件的路径也可以将日志文件放置在我们想要的位置。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics