我在tomcat运行正常的项目,现在放到websphere上,可是在启动的时候老是报一错:
[12-8-23 9:28:21:812 CST] 00000017 SystemOut     O [MCP]-[ERROR] 2012-08-23 09:28:21,796 [initWebApplicationContext]-Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in URL [file:/D:/Program Files/Apache Software Foundation/websphere/profiles/MyEclipse8.0/installedApps/PC-201108021023Node02Cell/tsm_agent_cu_v1_0_0_war.ear/tsm_agent_cu_v1.0.0.war/WEB-INF/classes/applicationContext-common.xml]: Invocation of init method failed; nested exception is java.lang.ArrayStoreException
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1362)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:540)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:485)
at java.security.AccessController.doPrivileged(AccessController.java:192)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:455)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:251)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:169)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:248)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:170)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:407)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:735)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:369)
at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:251)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:190)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45)
at com.ibm.ws.wswebcontainer.webapp.WebApp.notifyServletContextCreated(WebApp.java:605)
at com.ibm.ws.webcontainer.webapp.WebApp.commonInitializationFinish(WebApp.java:265)
at com.ibm.ws.wswebcontainer.webapp.WebApp.initialize(WebApp.java:271)
at com.ibm.ws.wswebcontainer.webapp.WebGroup.addWebApplication(WebGroup.java:88)
at com.ibm.ws.wswebcontainer.VirtualHost.addWebApplication(VirtualHost.java:157)
at com.ibm.ws.wswebcontainer.WebContainer.addWebApp(WebContainer.java:653)
at com.ibm.ws.wswebcontainer.WebContainer.addWebApplication(WebContainer.java:606)
at com.ibm.ws.webcontainer.component.WebContainerImpl.install(WebContainerImpl.java:333)
at com.ibm.ws.webcontainer.component.WebContainerImpl.start(WebContainerImpl.java:549)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1295)
at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1129)
at com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:567)
at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:814)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:948)
at com.ibm.ws.runtime.component.ApplicationMgrImpl$AppInitializer.run(ApplicationMgrImpl.java:2114)
at com.ibm.wsspi.runtime.component.WsComponentImpl$_AsynchInitializer.run(WsComponentImpl.java:340)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1498)
Caused by: 
java.lang.ArrayStoreException
at com.ibm.oti.reflect.AnnotationHelper.getReturnValueFromEntry(Native Method)
at com.ibm.oti.reflect.AnnotationHelper.access$000(AnnotationHelper.java:14)
at com.ibm.oti.reflect.AnnotationHelper$AnnotationInvocationHandler.invoke(AnnotationHelper.java:104)
at $Proxy13.value(Unknown Source)
at org.hibernate.cfg.AbstractPropertyHolder.buildColumnOverride(AbstractPropertyHolder.java:139)
at org.hibernate.cfg.AbstractPropertyHolder.setCurrentProperty(AbstractPropertyHolder.java:56)
at org.hibernate.cfg.ComponentPropertyHolder.<init>(ComponentPropertyHolder.java:62)
at org.hibernate.cfg.PropertyHolderBuilder.buildPropertyHolder(PropertyHolderBuilder.java:45)
at org.hibernate.cfg.AnnotationBinder.fillComponent(AnnotationBinder.java:1809)
at org.hibernate.cfg.AnnotationBinder.bindId(AnnotationBinder.java:1871)
at org.hibernate.cfg.AnnotationBinder.processElementAnnotations(AnnotationBinder.java:1279)
at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:754)
at org.hibernate.cfg.AnnotationConfiguration.processArtifactsOfType(AnnotationConfiguration.java:546)
at org.hibernate.cfg.AnnotationConfiguration.secondPassCompile(AnnotationConfiguration.java:291)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1319)
at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.newSessionFactory(LocalSessionFactoryBean.java:753)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:691)
at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:211)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1390)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1359)
... 31 more访问页面时,页面出现了:Error 500: Filter [Struts2]: could not be initialized 
哪位能帮忙看一下啊,网上说的有个包叫asm.jar,我的项目里就没有这个包。不知道是为什么。疯了

解决方案 »

  1.   

    我们这里最近反回来,把Websphere移到Tomcat下面的不知道有没有用。。
    http://www.webspherechina.net/club/thread-14745-1-1.html
      

  2.   

    这个是配置文件
    [code=Java]
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
    xmlns:context="http://www.springframework.org/schema/tx"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
     http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
         http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
    <bean id="placeholderConfig"
    class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
    <property name="location">
    <value>classpath:init_db2.properties</value>
    </property>
    </bean>
    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
    destroy-method="close" dependency-check="none">
    <property name="driverClass">
    <value>${datasource.driverClassName}</value>
    </property>
    <property name="jdbcUrl">
    <value>${datasource.url}</value>
    </property>
    <property name="user">
    <value>${datasource.username}</value>
    </property>
    <property name="password">
    <value>${datasource.password}</value>
    </property>
    <property name="acquireIncrement">
    <value>${c3p0.acquireIncrement}</value>
    </property>
    <property name="initialPoolSize">
    <value>${c3p0.initialPoolSize}</value>
    </property>
    <property name="minPoolSize">
    <value>${c3p0.minPoolSize}</value>
    </property>
    <property name="maxPoolSize">
    <value>${c3p0.maxPoolSize}</value>
    </property>
    <property name="maxIdleTime">
    <value>${c3p0.maxIdleTime}</value>
    </property>
    <property name="idleConnectionTestPeriod">
    <value>${c3p0.idleConnectionTestPeriod}</value>
    </property>
    <property name="maxStatements">
    <value>${c3p0.maxStatements}</value>
    </property>
    <property name="numHelperThreads">
    <value>${c3p0.numHelperThreads}</value>
    </property>
    <property name="testConnectionOnCheckout">
    <value>${c3p0.testConnectionOnCheckout}</value>
    </property>
    <property name="testConnectionOnCheckin">
    <value>${c3p0.testConnectionOnCheckin}</value>
    </property>
    </bean>
    <!--
    org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean
    org.springframework.orm.hibernate3.LocalSessionFactoryBean
    -->
    <bean id="abstractSessionFactory"
    class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
    <property name="dataSource">
    <ref local="dataSource" />
    </property>
    <property name="hibernateProperties">
    <props>
    <prop key="hibernate.dialect">
    ${hibernate.dialect}
    </prop>
    <prop key="hibernate.show_sql">
    ${hibernate.show_sql}
    </prop>
    <prop key="hibernate.hbm2ddl.auto">
    ${hibernate.hbm2ddl.auto}
    </prop>
    <prop key="hibernate.jdbc.fetch_size">
    ${hibernate.jdbc.fetch_size}
    </prop>
    <prop key="hibernate.jdbc.batch_size">
    ${hibernate.jdbc.batch_size}
    </prop>
    <prop key="hibernate.search.default.directory_provider">
    org.hibernate.search.store.FSDirectoryProvider
    </prop>
    <prop key="hibernate.search.default.indexBase">
    E:/Work/indextest
    </prop> <prop key="hibernate.cache.provider_class">
    ${hibernate.cache.provider_class}
    </prop>
    <prop key="hibernate.cache.use_second_level_cache">
    ${hibernate.cache.use_second_level_cache}
    </prop> <prop key="hibernate.cache.use_query_cache">
    ${hibernate.cache.use_query_cache}
    </prop>
    </props>
    </property>
    </bean> <bean id="sessionFactory"
    class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"
    parent="abstractSessionFactory">
    <property name="annotatedClasses">
    <list>
    <!-- 系统管理bean配置-->
    <value>com.chinarainbow.sysmanager.bean.Admin</value>
    <value>com.chinarainbow.sysmanager.bean.AdminFunc</value>
    <value>com.chinarainbow.sysmanager.bean.AdminFuncSet</value>
    <value>com.chinarainbow.sysmanager.bean.AdminLevel</value>
    <value>com.chinarainbow.sysmanager.bean.AdminLog</value>
    <!-- 系统管理bean配置 ,以上配置不能修改和删除--> <!-- 在此处新增自己的bean,要添加注释说明,包括添加人,时间,所属功能模块-->
    <!--开发完成功能模块后,只提交自己新增的bean配置和注释即可 -->
    <!--参数配置模块  -->
    <!--添加人:leo;时间:2012.8.10 -->
    <value>com.chinarainbow.config.bean.Config</value>
    <value>com.chinarainbow.monitor.bean.Monitor</value>
    <value>com.chinarainbow.monitor.bean.SysmonitorInfo</value>
    <value>com.chinarainbow.monitor.bean.ExcLog</value>
    <value>com.chinarainbow.blacklist.bean.BlackList</value>

    <!-- 密钥管理bean配置-->
    <!-- 在此处新增自己的bean,要添加注释说明,包括添加人,时间,所属功能模块-->
    <!--  add by hanzhenguo 2012-08-08 11:47 -->
    <value>com.chinarainbow.statistics.bean.Mo</value>
    <value>com.chinarainbow.statistics.bean.Mt</value>
    <value>com.chinarainbow.statistics.bean.TradeLog</value>
    <value>com.chinarainbow.statistics.bean.TradeLog</value>
    <!--开发完成功能模块后,只提交自己新增的bean配置和注释即可 --> <!-- 在此处新增自己的bean,要添加注释说明,包括添加人,时间,所属功能模块-->
    <!--开发完成功能模块后,只提交自己新增的bean配置和注释即可 -->
    <!--  add by wangshengjun 2012-08-08 -->
    <value>com.chinarainbow.appmanager.bean.Application</value>
    <value>com.chinarainbow.appmanager.bean.AppVersion</value>
    <value>com.chinarainbow.appmanager.bean.CardVendor</value>
    <!--  add by wangshengjun 2012-08-15 -->
    <value>com.chinarainbow.userinfo.bean.UserInfo</value>
    <value>com.chinarainbow.userinfo.bean.UserAppInfo</value>
    <value>com.chinarainbow.userinfo.bean.UserAppInfoId</value>
    <!--  add by wangshengjun 2012-08-20 -->
    <value>com.chinarainbow.appmanager.bean.Device</value>
    </list>
    </property>
    </bean>
    <!-- 在spring里配置cache就和在spring配置数据库一样, -->
    <!--
    <bean id="cacheManager"
    class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">
    <property name="configLocation"> <value>classpath:ehcache.xml</value>
    </property> </bean> <bean id="ehCache"
    class="org.springframework.cache.ehcache.EhCacheFactoryBean">
    <property name="cacheManager"> <ref local="cacheManager" />
    </property> <property name="cacheName"> <value>mcpCache</value>
    </property> </bean>
    -->
    <!-- Quartz Scheduler  Spring 定时器  查询系统信息 --> <bean id="sysMonitor" class="com.chinarainbow.quartz.task.SysMonitor">
    <property name="configService" ref="configService" />
    <property name="sysmonitorInfoService" ref="sysmonitorInfoService" />
    </bean>
    <bean id="serviceMonitor" class="com.chinarainbow.quartz.task.ServiceMonitor">
    <property name="configService" ref="configService" />
    </bean>
    <bean id="scheduleInfoAction" class="com.chinarainbow.quartz.ScheduleInfoAction">
    <property name="scheduler" ref="schedulerFactory" />
    <property name="sysInfoTrigger">
    <value>querySysInfoTrigger</value>
    </property>
    <property name="serviceMonitorTrigger">
    <value>serviceMonitorTrigger</value>
    </property>
    <property name="sysMonitor" ref="sysMonitor" />
    <property name="serviceMonitor" ref="serviceMonitor" /> </bean>
    <bean id="querySysInfoJobDetail"
    class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    <property name="targetObject" ref="scheduleInfoAction" />
    <property name="targetMethod" value="querySysInfo" />
    <!--
    对于相同的JobDetail,当指定多个Trigger时, 很可能第一个job完成之前,
    第二个job就开始了。指定concurrent设为false,多个job不会并发运行, 第二个job将不会在第一个job完成之前开始
    -->
    <property name="concurrent" value="false" />
    </bean> <bean id="serviceMonitorJobDetail"
    class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    <property name="targetObject" ref="scheduleInfoAction" />
    <property name="targetMethod" value="serviceMonitor" />
    <!--
    对于相同的JobDetail,当指定多个Trigger时, 很可能第一个job完成之前,
    第二个job就开始了。指定concurrent设为false,多个job不会并发运行, 第二个job将不会在第一个job完成之前开始
    -->
    <property name="concurrent" value="false" />
    </bean> <bean id="querySysInfoTrigger" class="com.chinarainbow.quartz.InitializingCronTrigger">
    <property name="jobDetail" ref="querySysInfoJobDetail" />
    <property name="scheduleInfoAction" ref="scheduleInfoAction" />
    </bean>
    <bean id="serviceMonitorTrigger" class="com.chinarainbow.quartz.InitializingCronTrigger">
    <property name="jobDetail" ref="serviceMonitorJobDetail" />
    <property name="scheduleInfoAction" ref="scheduleInfoAction" />
    </bean> <bean id="schedulerFactory"
    class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="triggers">
    <list>
    <ref local="serviceMonitorTrigger" />
    <ref local="querySysInfoTrigger" /> </list>
    </property>
    </bean>
    <!--参数配置模块  -->
    <!--添加人:leo;时间:2012.8.14 -->
    <bean id="sysConfig" class="com.chinarainbow.config.bean.SysConfig">
    <constructor-arg>
    <ref bean="configService" />
    </constructor-arg>
    <property name="isLoad">
    <value>${gp.isloadconfig}</value>
    </property>
    </bean>
    <bean id="messageSource"
    class="org.springframework.context.support.ResourceBundleMessageSource">
    <property name="basenames">
    <list>
    <value>com.chinarainbow.base.action.BaseAction</value>
    </list>
    </property>
    </bean> <bean id="internationalUtil" class="com.chinarainbow.util.InternationalUtil">
    </bean>
      

  3.   

    <!-- 配置事务管理器 -->
    <bean id="transactionManager"
    class="org.springframework.orm.hibernate3.HibernateTransactionManager">
    <property name="sessionFactory">
    <ref bean="sessionFactory" />
    </property>
    </bean> <!-- 配置事务的传播特性 -->
    <context:advice id="txAdvice" transaction-manager="transactionManager">
    <context:attributes>
    <context:method name="save*" propagation="REQUIRED" />
    <context:method name="add*" propagation="REQUIRED" />
    <context:method name="del*" propagation="REQUIRED" />
    <context:method name="update*" propagation="REQUIRED" />
    <context:method name="batch*" propagation="REQUIRED" />
    <context:method name="*" read-only="false" />
    </context:attributes>
    </context:advice> <!-- 那些类的哪些方法参与事务 -->
    <aop:config>
    <aop:pointcut id="allManagerMethod"
    expression="(execution(* com.chinarainbow.sysmanager.service.impl.*.*(..)))or(execution(* com.chinarainbow.base.service.impl.*.*(..)))" />
    <aop:advisor pointcut-ref="allManagerMethod" advice-ref="txAdvice" />
    </aop:config>
    </beans>[/code]