spring+hibernate+struts整合开发一个guestbook(留言板)运行时遇到如下问题!搞了两天了.哭无泪啊! 求助!

FreedomLeo 2008-04-14 06:22:54
Servlet /guestbook3 threw load() exception
javax.servlet.UnavailableException: class "org.apache.commons.collections.ArrayStack"'s signer information does not match signer information of other classes in the same package
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:402)
at javax.servlet.GenericServlet.init(GenericServlet.java:212)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1161)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:981)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4058)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4364)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:924)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:887)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1147)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:516)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)


我的applicationContext.xml如下:
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">


<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName"
value="com.microsoft.jdbc.sqlserver.SQLServerDriver">
</property>
<property name="url"
value="jdbc:microsoft:sqlserver://localhost:1433;databasename=mis">
</property>
<property name="username" value="sa"></property>
<property name="password" value="sa"></property>
</bean>

<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref bean="dataSource"/>
</property>
<property name="mappingResources">
<list>
<value>com/leossh/model/Guestbook.hbm.xml</value>
<value>com/leossh/model/User.hbm.xml</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</prop>
</props>
</property>
</bean>

<bean id="guestbookDao" class="com.leossh.dao.hibernate.GuestbookDaoHibernate"
abstract="false" lazy-init="default" autowire="default" dependency-check="default">
<property name="sessionFactory">
<ref bean="sessionFactory"/>
</property>
</bean>

<bean id="guestbookManager"
class="com.leossh.service.impl.GuestbookManagerImpl" abstract="false"
lazy-init="default" autowire="default" dependency-check="default">
<property name="guestbookDao">
<ref bean="guestbookDao" />
</property>
</bean>
<bean id="userDao" class="com.leossh.dao.hibernate.UserDaoHibernate"
abstract="false" lazy-init="default" autowire="default"
dependency-check="default">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean>
<bean id="userManager"
class="com.leossh.service.impl.UserManagerImpl" abstract="false"
lazy-init="default" autowire="default" dependency-check="default">
<property name="userDao">
<ref bean="userDao" />
</property>
</bean></beans>

我的web.xml配置如下
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>

<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>3</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>input.jsp</welcome-file>
</welcome-file-list>
</web-app>

用得action-servlet.xml如下:
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">

<bean name="/guestbook" class="com.leossh.web.action.GuestbookAction"
abstract="false" lazy-init="default" autowire="default"
dependency-check="default">
<property name="guestbookManager">
<ref bean="guestbookManager" />
</property>
</bean>

<bean name="/login" class="com.leossh.web.action.LoginAction"
abstract="false" lazy-init="default" autowire="default"
dependency-check="default">
<property name="userManager">
<ref bean="userManager" />
</property>
</bean>
</beans>
...全文
487 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
kittaaron 2008-07-25
  • 打赏
  • 举报
回复
是挺PL的.
youjianbo_han_87 2008-07-25
  • 打赏
  • 举报
回复
来接分
phon_oy 2008-07-23
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 jingshuai1029 的回复:]
这么漂亮还做程序,难能可贵,呵呵,
[/Quote]
不一定是本人嘿嘿!
yangguoyk 2008-07-22
  • 打赏
  • 举报
回复
同样的问题,为什么不同的解法?
jiangyong123 2008-06-03
  • 打赏
  • 举报
回复
我的lib下面没有多个commons-collection的jar包啊,怎么也出现这个问题?
FreedomLeo 2008-05-20
  • 打赏
  • 举报
回复
搞ssh真的是比较痛苦,以后小妹要多仰仗各位前辈指导帮忙了!!!
FreedomLeo 2008-05-20
  • 打赏
  • 举报
回复
这个问题已经解决了,果然是 commons-collection的问题
呵呵,谢谢各位了!!!
chg2008 2008-05-15
  • 打赏
  • 举报
回复
一般情况是lib目录下多了commons-collection的jar包
建议只保留一个
jingshuai1029 2008-05-15
  • 打赏
  • 举报
回复
这么漂亮还做程序,难能可贵,呵呵,
ayangtutu 2008-05-09
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 java2000_net 的回复:]
org.apache.commons.collections.ArrayStack

1 删掉你的 WEB-INF/lib 目录下面的 commons-collection的jar
2 清理你的 tomcat/shared/lib 目录下面的jar, 只保留最新的,删掉老的
[/Quote]
lyboyc 2008-05-09
  • 打赏
  • 举报
回复
我现在用maven2自己搭环境,所有依赖自己加。
laitaogood 2008-05-09
  • 打赏
  • 举报
回复
一个留言板,用SSH,至于吗,呵呵
Danny.SHI 2008-05-08
  • 打赏
  • 举报
回复
找本《struts开发入门与项目实践》看看,网上可以下到这本书的源码
里面有关于留言板的例子。。。
祝好运!
zhlsyc 2008-05-08
  • 打赏
  • 举报
回复
服务器启动出错了,你的类包commons-collection可能有几个版本
gongyali2005 2008-04-15
  • 打赏
  • 举报
回复
ssh真是相当的麻烦,同情中.......
老紫竹 2008-04-14
  • 打赏
  • 举报
回复
org.apache.commons.collections.ArrayStack

1 删掉你的 WEB-INF/lib 目录下面的 commons-collection的jar
2 清理你的 tomcat/shared/lib 目录下面的jar, 只保留最新的,删掉老的
miaoliujun 2008-04-14
  • 打赏
  • 举报
回复
或者你引用了多个commons-collection-XXX.jar
miaoliujun 2008-04-14
  • 打赏
  • 举报
回复
从你的异常来看,可能是commons-collection的版本不对
FreedomLeo 2008-04-14
  • 打赏
  • 举报
回复
哪位朋友帮帮忙!小妹这厢有礼了!!

67,538

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧