BAEL-150 Introduction to DeltaSpike
This commit is contained in:
@@ -0,0 +1,84 @@
|
||||
/*
|
||||
* JBoss, Home of Professional Open Source
|
||||
* Copyright 2013, Red Hat, Inc. and/or its affiliates, and individual
|
||||
* contributors by the @authors tag. See the copyright.txt in the
|
||||
* distribution for a full listing of individual contributors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package baeldung.test;
|
||||
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import javax.inject.Inject;
|
||||
|
||||
import baeldung.data.*;
|
||||
import org.jboss.arquillian.container.test.api.Deployment;
|
||||
import org.jboss.arquillian.junit.Arquillian;
|
||||
import baeldung.model.Member;
|
||||
import baeldung.service.MemberRegistration;
|
||||
import baeldung.util.Resources;
|
||||
import org.jboss.shrinkwrap.api.Archive;
|
||||
import org.jboss.shrinkwrap.api.ShrinkWrap;
|
||||
import org.jboss.shrinkwrap.api.asset.EmptyAsset;
|
||||
import org.jboss.shrinkwrap.api.spec.WebArchive;
|
||||
import org.jboss.shrinkwrap.resolver.api.maven.Maven;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
|
||||
@RunWith(Arquillian.class)
|
||||
public class MemberRegistrationTest {
|
||||
@Deployment
|
||||
public static Archive<?> createTestArchive() {
|
||||
File[] files = Maven.resolver().loadPomFromFile("pom.xml")
|
||||
.importRuntimeDependencies().resolve().withTransitivity().asFile();
|
||||
|
||||
return ShrinkWrap.create(WebArchive.class, "test.war")
|
||||
.addClasses(
|
||||
EntityManagerProducer.class,
|
||||
Member.class,
|
||||
MemberRegistration.class,
|
||||
MemberRepository.class,
|
||||
Resources.class,
|
||||
QueryDslRepositoryExtension.class,
|
||||
QueryDslSupport.class,
|
||||
SecondaryPersistenceUnit.class,
|
||||
SecondaryEntityManagerProducer.class,
|
||||
SecondaryEntityManagerResolver.class)
|
||||
.addAsResource("META-INF/test-persistence.xml", "META-INF/persistence.xml")
|
||||
.addAsResource("META-INF/apache-deltaspike.properties")
|
||||
.addAsWebInfResource(EmptyAsset.INSTANCE, "beans.xml")
|
||||
.addAsWebInfResource("test-ds.xml")
|
||||
.addAsWebInfResource("test-secondary-ds.xml")
|
||||
.addAsLibraries(files);
|
||||
}
|
||||
|
||||
@Inject
|
||||
MemberRegistration memberRegistration;
|
||||
|
||||
@Inject
|
||||
Logger log;
|
||||
|
||||
@Test
|
||||
public void testRegister() throws Exception {
|
||||
Member newMember = new Member();
|
||||
newMember.setName("Jane Doe");
|
||||
newMember.setEmail("jane@mailinator.com");
|
||||
newMember.setPhoneNumber("2125551234");
|
||||
memberRegistration.register(newMember);
|
||||
assertNotNull(newMember.getId());
|
||||
log.info(newMember.getName() + " was persisted with id " + newMember.getId());
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
globalAlternatives.org.apache.deltaspike.jpa.spi.transaction.TransactionStrategy=org.apache.deltaspike.jpa.impl.transaction.BeanManagedUserTransactionStrategy
|
||||
@@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<persistence version="2.1"
|
||||
xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="
|
||||
http://xmlns.jcp.org/xml/ns/persistence
|
||||
http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
|
||||
<persistence-unit name="primary">
|
||||
<jta-data-source>java:jboss/datasources/baeldung-jee7-seedTestDS</jta-data-source>
|
||||
<properties>
|
||||
<property name="hibernate.hbm2ddl.auto" value="create-drop" />
|
||||
<property name="hibernate.show_sql" value="false" />
|
||||
</properties>
|
||||
</persistence-unit>
|
||||
<persistence-unit name="secondary">
|
||||
<jta-data-source>java:jboss/datasources/baeldung-jee7-seedTestSecondaryDS</jta-data-source>
|
||||
<properties>
|
||||
<property name="hibernate.hbm2ddl.auto" value="create-drop" />
|
||||
<property name="hibernate.show_sql" value="false" />
|
||||
</properties>
|
||||
</persistence-unit>
|
||||
</persistence>
|
||||
@@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
JBoss, Home of Professional Open Source
|
||||
Copyright 2013, Red Hat, Inc. and/or its affiliates, and individual
|
||||
contributors by the @authors tag. See the copyright.txt in the
|
||||
distribution for a full listing of individual contributors.
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
<arquillian xmlns="http://jboss.org/schema/arquillian"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://jboss.org/schema/arquillian
|
||||
http://jboss.org/schema/arquillian/arquillian_1_0.xsd">
|
||||
|
||||
<!-- Uncomment to have test archives exported to the file system for inspection -->
|
||||
<!-- <engine> -->
|
||||
<!-- <property name="deploymentExportPath">target/</property> -->
|
||||
<!-- </engine> -->
|
||||
|
||||
<!-- Force the use of the Servlet 3.0 protocol with all containers, as it is the most mature -->
|
||||
<defaultProtocol type="Servlet 3.0" />
|
||||
|
||||
<!-- Example configuration for a remote WildFly instance -->
|
||||
<container qualifier="jboss" default="true">
|
||||
<!-- By default, arquillian will use the JBOSS_HOME environment variable. Alternatively, the configuration below can be uncommented. -->
|
||||
<!--<configuration> -->
|
||||
<!--<property name="jbossHome">/path/to/wildfly</property> -->
|
||||
<!--</configuration> -->
|
||||
</container>
|
||||
|
||||
</arquillian>
|
||||
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<datasources xmlns="http://www.jboss.org/ironjacamar/schema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.jboss.org/ironjacamar/schema http://docs.jboss.org/ironjacamar/schema/datasources_1_0.xsd">
|
||||
<datasource jndi-name="java:jboss/datasources/baeldung-jee7-seedTestDS"
|
||||
pool-name="baeldung-jee7-seed-test" enabled="true"
|
||||
use-java-context="true">
|
||||
<connection-url>jdbc:h2:mem:baeldung-jee7-seed-test;DB_CLOSE_DELAY=-1</connection-url>
|
||||
<driver>h2</driver>
|
||||
<security>
|
||||
<user-name>sa</user-name>
|
||||
<password>sa</password>
|
||||
</security>
|
||||
</datasource>
|
||||
</datasources>
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<datasources xmlns="http://www.jboss.org/ironjacamar/schema"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.jboss.org/ironjacamar/schema http://docs.jboss.org/ironjacamar/schema/datasources_1_0.xsd">
|
||||
<datasource jndi-name="java:jboss/datasources/baeldung-jee7-seedTestSecondaryDS"
|
||||
pool-name="baeldung-jee7-seed-test" enabled="true"
|
||||
use-java-context="true">
|
||||
<connection-url>jdbc:h2:mem:baeldung-jee7-seed-test;DB_CLOSE_DELAY=-1</connection-url>
|
||||
<driver>h2</driver>
|
||||
<security>
|
||||
<user-name>sa</user-name>
|
||||
<password>sa</password>
|
||||
</security>
|
||||
</datasource>
|
||||
</datasources>
|
||||
|
||||
Reference in New Issue
Block a user