我再本地能够启动,但是在万网服务器启动就报错,不知道为什么,几个月前在万网服务器也能正常启动,高人帮我看一下bean.xml里面代码:
  <bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
......(省略)
</bean>
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
     <property name="dataSource" ref="dataSource"/>
 <property name="mappingResources">
    <list>
      <value>com/guikai/chenli/Admin.hbm.xml</value>
      <value>com/guikai/chenli/News.hbm.xml</value>
      <value>com/guikai/chenli/Toppic.hbm.xml</value>
      <!--<value>com/guikai/chenli/Liuyan.hbm.xml</value>-->
      <value>com/guikai/chenli/Huiyuan.hbm.xml</value>
      <value>com/guikai/chenli/Pagepic.hbm.xml</value>
      <value>com/guikai/chenli/Pubadviserbook.hbm.xml</value>
      <value>com/guikai/chenli/Cdgoods.hbm.xml</value>
      <value>com/guikai/chenli/Planetable.hbm.xml</value>
      <value>com/guikai/chenli/Phototable.hbm.xml</value>
      <value>com/guikai/chenli/Liuyan.hbm.xml</value>
      <value>com/guikai/chenli/Upfile.hbm.xml</value>
      <value>com/guikai/chenli/Dingdan.hbm.xml</value>
      <value>com/guikai/chenli/News1.hbm.xml</value>
      <value>com/guikai/chenli/News2.hbm.xml</value>
    </list>
 </property>
     <property name="hibernateProperties">
    <value>
       hibernate.show_sql=true
     </value>
     </property>
</bean>启动后报错是:2009-12-1 13:48:46 org.springframework.web.context.ContextLoader initWebApplicationContext
严重: Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in class path resource [bean.xml]: Invocation of init method failed; nested exception is java.lang.UnsupportedClassVersionError: Bad version number in .class file
Caused by: java.lang.UnsupportedClassVersionError: Bad version number in .class file
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1853)
at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:875)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1330)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1209)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:164)
at org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:123)
at org.hibernate.util.ReflectHelper.reflectedPropertyClass(ReflectHelper.java:93)
at org.hibernate.mapping.SimpleValue.setTypeUsingReflection(SimpleValue.java:302)
at org.hibernate.cfg.HbmBinder.bindSimpleId(HbmBinder.java:423)
at org.hibernate.cfg.HbmBinder.bindRootPersistentClassCommonValues(HbmBinder.java:356)
at org.hibernate.cfg.HbmBinder.bindRootClass(HbmBinder.java:295)
at org.hibernate.cfg.HbmBinder.bindRoot(HbmBinder.java:166)
at org.hibernate.cfg.Configuration.add(Configuration.java:702)
at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:537)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactoryweb.xml里面有:
<listener>
      <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

解决方案 »

  1.   

    估计把jdk升1.6就解决了Caused by: java.lang.UnsupportedClassVersionError: Bad version number in .class file报的是版本问题
      

  2.   

    很明显 是jdk版本问题,你可以把代码在本地重新编译一下,然后重新发布就可以了
      

  3.   

    我只能有ftp软件把.class文件传到服务器上,我应该怎么办呢
      

  4.   

    就是说我没有太多的服务器权限,我重新编译过传过.class文件了
      

  5.   

    你让重新编译代码是我写的那些.java文件编译成.class文件然后传到站点的classes目录下,是这个意思吗?
      

  6.   

    我这样做了不行,.jsp文件生成的.class文件听说要把work下目录删除才可以,我没有work目录的权限,这个有影响吗
      

  7.   

    你只有两个选择,
    1、把jdk修改成跟编译java文件时同样的版本,或者更高
    1、就是根据你重新编译好的class文件(前提是版本不能高于万网服务器上的版本),然后发布上去
      

  8.   

    其实jsp文件你发布上去 的时候并没有编译,看你的服务器应该是tomcat,jsp文件是通过web服务器解析的,但编译这个工作是由jdk处理的,所以work下编译好的jsp文件不存在版本问题,但执行class文件的时候是由jvm加载,如果版本不支持就会报错了
      

  9.   

    建议以兼容jdk1.5的方式编译,因为多数appliaction server用的是j2ee(java ee) 1.5