主要问题是在创建实例的时候采用的是默认的Listener设置和实例设置,IP都采用的是localhost,本地访问正常,而局域网内其他机器访问则不能顺利访问。错误代码如下:
org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (The Network Adapter could not establish the connection)
at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1549)
at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1388)
at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044)
at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider.getConnection(LocalDataSourceConnectionProvider.java:81)
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:114)
at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2163)
at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2159)
解决此问题需操作Net Manger修改Host为局域网IP,操作图例如下:
第一步:修改监听HOST

第二步:修改数据库实例HOST

第三步:修改程序数据库配置HOST

注意:不要忘记添加端口1521.否则报错:Cannot create PoolableConnectionFactory (Invalid number format for port number)
第四步:关闭系统防火墙
我的系统是win7 64bit,怎么关闭看下面截图:
关闭后界面如下:
经过以上设置程序正常启动。