You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by ow...@apache.org on 2014/01/26 14:59:22 UTC
svn commit: r1561489 - in /cxf/fediz/trunk/services/idp/src:
main/java/org/apache/cxf/fediz/service/idp/service/jpa/ main/resources/
test/java/org/apache/cxf/fediz/service/idp/service/jpa/ test/resources/
Author: owulff
Date: Sun Jan 26 13:59:22 2014
New Revision: 1561489
URL: http://svn.apache.org/r1561489
Log:
Use Spring DAO exceptions to encapsulate DAO layer
Modified:
cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/ApplicationDAOJPAImpl.java
cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/ClaimDAOJPAImpl.java
cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/IdpDAOJPAImpl.java
cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/TrustedIdpDAOJPAImpl.java
cxf/fediz/trunk/services/idp/src/main/resources/persistenceContext.xml
cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/ApplicationDAOJPATest.java
cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/ClaimDAOJPATest.java
cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/IdpDAOJPATest.java
cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/TrustedIdpDAOJPATest.java
cxf/fediz/trunk/services/idp/src/test/resources/persistence.properties
Modified: cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/ApplicationDAOJPAImpl.java
URL: http://svn.apache.org/viewvc/cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/ApplicationDAOJPAImpl.java?rev=1561489&r1=1561488&r2=1561489&view=diff
==============================================================================
--- cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/ApplicationDAOJPAImpl.java (original)
+++ cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/ApplicationDAOJPAImpl.java Sun Jan 26 13:59:22 2014
@@ -36,10 +36,10 @@ import org.apache.cxf.fediz.service.idp.
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
-@Component
+@Repository
@Transactional
public class ApplicationDAOJPAImpl implements ApplicationDAO {
Modified: cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/ClaimDAOJPAImpl.java
URL: http://svn.apache.org/viewvc/cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/ClaimDAOJPAImpl.java?rev=1561489&r1=1561488&r2=1561489&view=diff
==============================================================================
--- cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/ClaimDAOJPAImpl.java (original)
+++ cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/ClaimDAOJPAImpl.java Sun Jan 26 13:59:22 2014
@@ -32,11 +32,11 @@ import org.apache.cxf.fediz.service.idp.
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import org.springframework.stereotype.Component;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
-@Component
+@Repository
@Transactional
public class ClaimDAOJPAImpl implements ClaimDAO {
Modified: cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/IdpDAOJPAImpl.java
URL: http://svn.apache.org/viewvc/cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/IdpDAOJPAImpl.java?rev=1561489&r1=1561488&r2=1561489&view=diff
==============================================================================
--- cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/IdpDAOJPAImpl.java (original)
+++ cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/IdpDAOJPAImpl.java Sun Jan 26 13:59:22 2014
@@ -36,10 +36,10 @@ import org.apache.cxf.fediz.service.idp.
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import org.springframework.stereotype.Component;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
-@Component
+@Repository
@Transactional
public class IdpDAOJPAImpl implements IdpDAO {
Modified: cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/TrustedIdpDAOJPAImpl.java
URL: http://svn.apache.org/viewvc/cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/TrustedIdpDAOJPAImpl.java?rev=1561489&r1=1561488&r2=1561489&view=diff
==============================================================================
--- cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/TrustedIdpDAOJPAImpl.java (original)
+++ cxf/fediz/trunk/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/service/jpa/TrustedIdpDAOJPAImpl.java Sun Jan 26 13:59:22 2014
@@ -30,12 +30,12 @@ import org.apache.cxf.fediz.service.idp.
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import org.springframework.stereotype.Component;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
@Transactional
-@Component
+@Repository
public class TrustedIdpDAOJPAImpl implements TrustedIdpDAO {
private static final Logger LOG = LoggerFactory.getLogger(TrustedIdpDAOJPAImpl.class);
Modified: cxf/fediz/trunk/services/idp/src/main/resources/persistenceContext.xml
URL: http://svn.apache.org/viewvc/cxf/fediz/trunk/services/idp/src/main/resources/persistenceContext.xml?rev=1561489&r1=1561488&r2=1561489&view=diff
==============================================================================
--- cxf/fediz/trunk/services/idp/src/main/resources/persistenceContext.xml (original)
+++ cxf/fediz/trunk/services/idp/src/main/resources/persistenceContext.xml Sun Jan 26 13:59:22 2014
@@ -47,7 +47,7 @@
<property name="dataSource" ref="dataSource"/>
<property name="jpaVendorAdapter">
<bean class="org.springframework.orm.jpa.vendor.OpenJpaVendorAdapter">
- <property name="showSql" value="true"/>
+ <property name="showSql" value="false"/>
<property name="generateDdl" value="true"/>
<property name="databasePlatform" value="org.apache.openjpa.jdbc.sql.${jpa.platform}"/>
</bean>
@@ -119,6 +119,9 @@
http://docs.spring.io/spring/docs/3.1.4.RELEASE/spring-framework-reference/htmlsingle/#orm-jpa-straight
-->
<bean class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor"/>
+
+ <!-- Requires updates to unit testing as no JPA exceptions are returned -->
+ <bean class="org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor" />
<bean id="config" class="org.apache.cxf.fediz.service.idp.service.jpa.ConfigServiceJPA" >
<property name="idpService" ref="idpServiceImpl" />
Modified: cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/ApplicationDAOJPATest.java
URL: http://svn.apache.org/viewvc/cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/ApplicationDAOJPATest.java?rev=1561489&r1=1561488&r2=1561489&view=diff
==============================================================================
--- cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/ApplicationDAOJPATest.java (original)
+++ cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/ApplicationDAOJPATest.java Sun Jan 26 13:59:22 2014
@@ -22,9 +22,6 @@ import java.net.URI;
import java.util.Arrays;
import java.util.List;
-import javax.persistence.EntityNotFoundException;
-import javax.persistence.NoResultException;
-
import org.apache.cxf.fediz.service.idp.domain.Application;
import org.apache.cxf.fediz.service.idp.domain.RequestClaim;
@@ -36,6 +33,8 @@ import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.dao.DataIntegrityViolationException;
+import org.springframework.dao.EmptyResultDataAccessException;
+import org.springframework.orm.jpa.JpaObjectRetrievalFailureException;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.util.Assert;
@@ -114,7 +113,7 @@ public class ApplicationDAOJPATest {
}
- @Test(expected = NoResultException.class)
+ @Test(expected = EmptyResultDataAccessException.class)
public void testTryReadNonexistingApplication() {
applicationDAO.getApplication("urn:org:apache:cxf:fediz:fedizhelloworld:NOTEXIST", null);
}
@@ -206,13 +205,13 @@ public class ApplicationDAOJPATest {
}
- @Test(expected = NoResultException.class)
+ @Test(expected = EmptyResultDataAccessException.class)
public void testTryRemoveUnknownApplication() {
applicationDAO.deleteApplication("urn:org:apache:cxf:fediz:fedizhelloworld:NOTEXIST");
}
- @Test(expected = NoResultException.class)
+ @Test(expected = EmptyResultDataAccessException.class)
public void testRemoveExistingApplication() {
String realm = "urn:org:apache:cxf:fediz:app:testdelete";
Application application = new Application();
@@ -264,7 +263,7 @@ public class ApplicationDAOJPATest {
applicationDAO.addClaimToApplication(application, requestClaim);
}
- @Test(expected = NoResultException.class)
+ @Test(expected = EmptyResultDataAccessException.class)
public void testTryAddUnknownClaimToApplication() {
Application application = new Application();
application.setRealm("urn:org:apache:cxf:fediz:fedizhelloworld");
@@ -309,7 +308,7 @@ public class ApplicationDAOJPATest {
Assert.isTrue(0 == application.getRequestedClaims().size(), "requestedClaims size doesn't match");
}
- @Test(expected = EntityNotFoundException.class)
+ @Test(expected = JpaObjectRetrievalFailureException.class)
public void testTryRemoveNotAssignedClaimFromApplication() {
Application application = new Application();
application.setRealm("urn:org:apache:cxf:fediz:fedizhelloworld");
@@ -321,7 +320,7 @@ public class ApplicationDAOJPATest {
applicationDAO.removeClaimFromApplication(application, requestClaim);
}
- @Test(expected = EntityNotFoundException.class)
+ @Test(expected = JpaObjectRetrievalFailureException.class)
public void testTryRemoveUnknownClaimFromApplication() {
Application application = new Application();
application.setRealm("urn:org:apache:cxf:fediz:fedizhelloworld");
Modified: cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/ClaimDAOJPATest.java
URL: http://svn.apache.org/viewvc/cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/ClaimDAOJPATest.java?rev=1561489&r1=1561488&r2=1561489&view=diff
==============================================================================
--- cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/ClaimDAOJPATest.java (original)
+++ cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/ClaimDAOJPATest.java Sun Jan 26 13:59:22 2014
@@ -21,8 +21,6 @@ package org.apache.cxf.fediz.service.idp
import java.net.URI;
import java.util.List;
-import javax.persistence.NoResultException;
-
import org.apache.cxf.fediz.service.idp.domain.Claim;
import org.apache.cxf.fediz.service.idp.service.ClaimDAO;
@@ -32,6 +30,7 @@ import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.dao.DataIntegrityViolationException;
+import org.springframework.dao.EmptyResultDataAccessException;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.util.Assert;
@@ -76,7 +75,7 @@ public class ClaimDAOJPATest {
}
- @Test(expected = NoResultException.class)
+ @Test(expected = EmptyResultDataAccessException.class)
public void testTryReadNonexistingClaim() {
claimDAO.getClaim("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givennamenotexist");
}
@@ -175,13 +174,13 @@ public class ClaimDAOJPATest {
*/
- @Test(expected = NoResultException.class)
+ @Test(expected = EmptyResultDataAccessException.class)
public void testTryRemoveUnknownClaim() {
claimDAO.deleteClaim("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/town/WRONG");
}
- @Test(expected = NoResultException.class)
+ @Test(expected = EmptyResultDataAccessException.class)
public void testRemoveExistingClaim() {
claimDAO.deleteClaim("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/email");
Modified: cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/IdpDAOJPATest.java
URL: http://svn.apache.org/viewvc/cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/IdpDAOJPATest.java?rev=1561489&r1=1561488&r2=1561489&view=diff
==============================================================================
--- cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/IdpDAOJPATest.java (original)
+++ cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/IdpDAOJPATest.java Sun Jan 26 13:59:22 2014
@@ -25,9 +25,6 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import javax.persistence.EntityNotFoundException;
-import javax.persistence.NoResultException;
-
import org.apache.cxf.fediz.service.idp.domain.Application;
import org.apache.cxf.fediz.service.idp.domain.Claim;
import org.apache.cxf.fediz.service.idp.domain.Idp;
@@ -41,6 +38,8 @@ import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.dao.DataIntegrityViolationException;
+import org.springframework.dao.EmptyResultDataAccessException;
+import org.springframework.orm.jpa.JpaObjectRetrievalFailureException;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.util.Assert;
@@ -149,7 +148,7 @@ public class IdpDAOJPATest {
}
- @Test(expected = NoResultException.class)
+ @Test(expected = EmptyResultDataAccessException.class)
public void testTryReadNonexistingIdp() {
idpDAO.getIdp("urn:org:apache:cxf:fediz:idp:NOTEXIST", null);
}
@@ -229,13 +228,13 @@ public class IdpDAOJPATest {
}
- @Test(expected = NoResultException.class)
+ @Test(expected = EmptyResultDataAccessException.class)
public void testTryRemoveUnknownIdp() {
idpDAO.deleteIdp("urn:org:apache:cxf:fediz:idp:NOTEXIST");
}
- @Test(expected = NoResultException.class)
+ @Test(expected = EmptyResultDataAccessException.class)
public void testRemoveExistingIdp() {
Idp idp = new Idp();
idp.setRealm("urn:org:apache:cxf:fediz:idp:testdelete");
@@ -314,7 +313,7 @@ public class IdpDAOJPATest {
}
- @Test(expected = NoResultException.class)
+ @Test(expected = EmptyResultDataAccessException.class)
public void testUpdateUnknownIdp() {
String realm = "urn:org:apache:cxf:fediz:idp:testupdate2";
@@ -376,7 +375,7 @@ public class IdpDAOJPATest {
idpDAO.addClaimToIdp(idp, claim);
}
- @Test(expected = NoResultException.class)
+ @Test(expected = EmptyResultDataAccessException.class)
public void testTryAddUnknownClaimToIdp() {
Idp idp = new Idp();
idp.setRealm("urn:org:apache:cxf:fediz:idp:realm-A");
@@ -410,7 +409,7 @@ public class IdpDAOJPATest {
"claimTypesOffered size doesn't match [" + idp.getClaimTypesOffered().size() + "]");
}
- @Test(expected = EntityNotFoundException.class)
+ @Test(expected = JpaObjectRetrievalFailureException.class)
public void testTryRemoveNotAssignedClaimFromIdp() {
Idp idp = new Idp();
idp.setRealm("urn:org:apache:cxf:fediz:idp:realm-A");
@@ -421,7 +420,7 @@ public class IdpDAOJPATest {
idpDAO.removeClaimFromIdp(idp, claim);
}
- @Test(expected = NoResultException.class)
+ @Test(expected = EmptyResultDataAccessException.class)
public void testTryRemoveUnknownClaimFromIdp() {
Idp idp = new Idp();
idp.setRealm("urn:org:apache:cxf:fediz:idp:realm-A");
@@ -463,7 +462,7 @@ public class IdpDAOJPATest {
idpDAO.addApplicationToIdp(idp, app);
}
- @Test(expected = NoResultException.class)
+ @Test(expected = EmptyResultDataAccessException.class)
public void testTryAddUnknownApplicationToIdp() {
Idp idp = new Idp();
idp.setRealm("urn:org:apache:cxf:fediz:idp:realm-A");
@@ -498,7 +497,7 @@ public class IdpDAOJPATest {
}
- @Test(expected = EntityNotFoundException.class)
+ @Test(expected = JpaObjectRetrievalFailureException.class)
public void testTryRemoveNotAssignedApplicationFromIdp() {
Idp idp = new Idp();
idp.setRealm("urn:org:apache:cxf:fediz:idp:realm-A");
@@ -510,7 +509,7 @@ public class IdpDAOJPATest {
}
- @Test(expected = NoResultException.class)
+ @Test(expected = EmptyResultDataAccessException.class)
public void testTryRemoveUnknownApplicationFromIdp() {
Idp idp = new Idp();
idp.setRealm("urn:org:apache:cxf:fediz:idp:realm-A");
Modified: cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/TrustedIdpDAOJPATest.java
URL: http://svn.apache.org/viewvc/cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/TrustedIdpDAOJPATest.java?rev=1561489&r1=1561488&r2=1561489&view=diff
==============================================================================
--- cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/TrustedIdpDAOJPATest.java (original)
+++ cxf/fediz/trunk/services/idp/src/test/java/org/apache/cxf/fediz/service/idp/service/jpa/TrustedIdpDAOJPATest.java Sun Jan 26 13:59:22 2014
@@ -20,8 +20,6 @@ package org.apache.cxf.fediz.service.idp
import java.util.List;
-import javax.persistence.NoResultException;
-
import org.apache.cxf.fediz.service.idp.domain.TrustedIdp;
import org.apache.cxf.fediz.service.idp.service.TrustedIdpDAO;
@@ -31,6 +29,7 @@ import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.dao.DataIntegrityViolationException;
+import org.springframework.dao.EmptyResultDataAccessException;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.util.Assert;
@@ -79,7 +78,7 @@ public class TrustedIdpDAOJPATest {
}
- @Test(expected = NoResultException.class)
+ @Test(expected = EmptyResultDataAccessException.class)
public void testTryReadNonexistingTrustedIdp() {
trustedIdpDAO.getTrustedIDP("urn:org:apache:cxf:fediz:idp:NOTEXIST");
}
@@ -165,13 +164,13 @@ public class TrustedIdpDAOJPATest {
}
- @Test(expected = NoResultException.class)
+ @Test(expected = EmptyResultDataAccessException.class)
public void testTryRemoveUnknownTrustedIdp() {
trustedIdpDAO.deleteTrustedIDP("urn:org:apache:cxf:fediz:trusted-idp:NOTEXIST");
}
- @Test(expected = NoResultException.class)
+ @Test(expected = EmptyResultDataAccessException.class)
public void testRemoveExistingTrustedIdp() {
String realm = "urn:org:apache:cxf:fediz:trusted-idp:testdelete";
TrustedIdp trustedIdp = new TrustedIdp();
Modified: cxf/fediz/trunk/services/idp/src/test/resources/persistence.properties
URL: http://svn.apache.org/viewvc/cxf/fediz/trunk/services/idp/src/test/resources/persistence.properties?rev=1561489&r1=1561488&r2=1561489&view=diff
==============================================================================
--- cxf/fediz/trunk/services/idp/src/test/resources/persistence.properties (original)
+++ cxf/fediz/trunk/services/idp/src/test/resources/persistence.properties Sun Jan 26 13:59:22 2014
@@ -7,7 +7,7 @@
jpa.driverClassName=org.hsqldb.jdbcDriver
-jpa.url=jdbc:hsqldb:target/fediz/db/myDB;shutdown=true
+jpa.url=jdbc:hsqldb:target/unit/fediz/db/myDB;shutdown=true
jpa.username=sa
jpa.password=
jpa.defaultData=true