프로젝트를 상속 받았으며 jetty를 통해 실행되도록하려고 시도했지만 실행은했지만 아무 소용이 없습니다. 런 - 워 또는 런 - 폭발을 사용하여 잘 작동하지만, 평범한 구식 런으로 문제를 해결할 수없는 것 같습니다.Spring, Hibernate, C3P0 and Jetty
2012-06-28 15:02:32.247:INFO:/:Initializing Spring root WebApplicationContext
WARN [main] JDBCExceptionReporter.logExceptions(233) | SQL Error: 0, SQLState: null
ERROR [main] JDBCExceptionReporter.logExceptions(234) | Cannot create PoolableConnectionFactory (Access denied for user 'root'@'localhost' (using password: NO))
WARN [main] SettingsFactory.buildSettings(147) | Could not obtain connection to query metadata
org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Access denied for user 'root'@'localhost' (using password: NO))
at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:855)
at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:540)
at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider.getConnection(LocalDataSourceConnectionProvider.java:82)
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:114)
at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2833)
at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2829)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1840)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.newSessionFactory(LocalSessionFactoryBean.java:814)
/src/main/resources/applicationContext-resources.xml
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath:jdbc.properties</value>
<value>classpath:mail.properties</value>
</list>
</property>
</bean>
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" >
<property name="driverClass" value="${jdbc.driverClassName}"/>
<property name="jdbcUrl" value="${jdbc.url}"/>
<property name="user" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
<property name="initialPoolSize" value="8"/>
<property name="minPoolSize" value="8"/>
<property name="maxPoolSize" value="32"/>
<property name="idleConnectionTestPeriod" value="600"/>
<property name="maxIdleTime" value="0"/>
<property name="maxStatements" value="0"/>
<property name="maxStatementsPerConnection" value="0"/>
<property name="acquireIncrement" value="3"/>
<property name="acquireRetryAttempts" value="3"/>
<property name="acquireRetryDelay" value="1000"/>
<property name="autoCommitOnClose" value="false"/>
<property name="maxConnectionAge" value="14400"/>
<property name="forceIgnoreUnresolvedTransactions" value="false"/>
<property name="numHelperThreads" value="20"/>
<property name="testConnectionOnCheckin" value="false"/>
<property name="testConnectionOnCheckout" value="false"/>
<property name="preferredTestQuery" value="select id from xtcirc101themes where rownum = 1"/>
<property name="maxAdministrativeTaskTime" value="0"/>
<property name="debugUnreturnedConnectionStackTraces" value="false"/>
<property name="maxIdleTimeExcessConnections" value="0"/>
<property name="breakAfterAcquireFailure" value="false"/>
<property name="checkoutTimeout" value="0"/>
<property name="unreturnedConnectionTimeout" value="0"/>
<property name="usesTraditionalReflectiveProxies" value="false"/>
</bean>
/src/main/resources/applicationContext.xml
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="annotatedClasses">
<list>
.
.
.
</list>
</property>
</bean>
: 그 나에게 다음과 같은 스택을 제공 /WEB-INF/web.xml의 컨텍스트 구성
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:/applicationContext-resources.xml
classpath:/applicationContext-dao.xml
classpath:/applicationContext-service.xml
classpath*:/applicationContext.xml
/WEB-INF/applicationContext*.xml
/WEB-INF/classes/applicationContext*.xml
/WEB-INF/classes/tbmJobs*.xml
/WEB-INF/xfire-servlet.xml
/WEB-INF/security.xml
</param-value>
</context-param>
범인처럼
/src/main/resources/jdbc.properties
jdbc.driverClassName=${jdbc.driverClassName}
jdbc.url=${jdbc.url}
jdbc.username=${jdbc.username}
jdbc.password=${jdbc.password}
hibernate.dialect=${hibernate.dialect}
# Needed by Hibernate3 Maven Plugin defined in pom.xml
hibernate.connection.username=${jdbc.username}
hibernate.connection.password=${jdbc.password}
hibernate.connection.url=${jdbc.url}
hibernate.connection.driver_class=${jdbc.driverClassName}
특성
<properties>
<dbunit.dataTypeFactoryName>org.dbunit.ext.oracle.OracleDataTypeFactory</dbunit.dataTypeFactoryName>
<dbunit.schema>SYSTEM</dbunit.schema>
<hibernate.dialect>org.hibernate.dialect.Oracle10gDialect</hibernate.dialect>
<jdbc.groupId>com.oracle</jdbc.groupId>
<jdbc.artifactId>ojdbc14</jdbc.artifactId>
<jdbc.version>10.2.0.3.0</jdbc.version>
<jdbc.driverClassName>oracle.jdbc.OracleDriver</jdbc.driverClassName>
<jdbc.url>jdbc:oracle:thin:@${oracle.host}:1521:${oracle.sid}</jdbc.url>
<jdbc.username>*******</jdbc.username>
<jdbc.password>*******</jdbc.password>
</properties>
'root'@ 'localhost'에 대해 _Access가 거부되었습니다 (암호 : NO 사용) _ –
'jdbc.password'가 어떻게 그리고 어디에서 정의 되었습니까? 거기에 'PropertyPlaceholderResolver' 또는 비슷한 것이 있습니까? –
암호는 Pom에 정의되어 있으며 applicationContext.xml 및 jdbc.properties에 설정되어 있습니다. – James