我的项目开发实在windows2003上面开发的,但是发布到我们的服务器上是linux的。
连接数据库是成功的,
用的是
conn hr/"wn80421"@orcl
连接成功了
还能看到数据库里面的信息。
但是访问项目的时候,该改的配置信息我都该了还是报错误
org。hibernate.exception.GenericJDBCException: Cannot open connection
 不知道怎么办了。
在线急等。

解决方案 »

  1.   

    建议楼主在Linux的系统上用SQLDeveloper登录下,用配置文件的用户名和密码连接数据库,看看是否能正常连接
      

  2.   

    把你连接oracle的连接字符串贴出来看
    我想orcl应该是你在server 2003上配置的一个TNS,在Liunx没有这个TNS,就不行。
    你换个台不是开发机的电脑,这个电脑装windows也可以,如果同样出现这样的问题,说明真是TNS的问题。
      

  3.   

    建议楼主在Linux的系统上用SQLDeveloper登录下,用配置文件的用户名和密码连接数据库,看看是否能正常连接
    登陆是正常的
      

  4.   

    我想orcl应该是你在server 2003上配置的一个TNS,在Liunx没有这个TNS,就不行。
    有呢,我配置了能够登陆的。还能看到导入的数据
      

  5.   

    建议把你连接oracle的连接字符串贴出来看
      

  6.   

    那只能看数据库连接失败Java报错的堆栈具体信息了,楼主贴出来看看
      

  7.   

    <bean id="datasource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
      <property name="driverClass" value="oracle.jdbc.driver.OracleDriver"/>          
          <property name="jdbcUrl" value="jdbc:oracle:thin:@localhost:1521:orcl"/>          
          <property name="user" value="hr"/>          
          <property name="password" value="wn80421"/>     
          <!-- 连接关闭时默认将所有未提交的操作回滚。默认为false -->  
          <property name="autoCommitOnClose" value="true"/>      
           <!-- 连接池中保留的最小连接数-->  
           <property name="minPoolSize" value="2"/>      
           <!-- 连接池中保留的最大连接数。默认为15 -->         
           <property name="maxPoolSize" value="15"/>       
      

  8.   

    linux是区分大小写的,看又没有大小写拼错的
      

  9.   

    是不是项目找不到oracle?需要配置oracle在linux中的path或者classpath什么的,或者可以重装下oracle
    瞎猜的,呵呵。
      

  10.   

    hibernate只关心ip,端口和数据库名,应该不会有问题啊
      

  11.   


    value="jdbc:oracle:thin:@localhost:1521:orcl"/> 这句,把localhost改为数据库的IP试试,也不要用127.0.0.1,用配置给网卡的IP,比如192.168.1.99
      

  12.   

    再看看你的hibernate的类映射文件中的数据库名是否正确