package net.lr.tutorial.karaf.cxf.personservice.impl; import net.lr.tutorial.karaf.cxf.personservice.model.Person; import net.lr.tutorial.karaf.cxf.personservice.model.PersonService; import org.apache.cxf.endpoint.Server; import org.apache.cxf.jaxws.JaxWsProxyFactoryBean; import org.apache.cxf.jaxws.JaxWsServerFactoryBean; import org.junit.AfterClass; import org.junit.Assert; import org.junit.BeforeClass; import org.junit.Test; public class PersonServiceSOAPTest { private static final String PERSONSERVICE_TESTURL = "http://localhost:8282/personService"; private static Server server; @BeforeClass public static void startServer() { PersonService personService = new PersonServiceImpl(); JaxWsServerFactoryBean factory = new JaxWsServerFactoryBean(); factory.setAddress(PERSONSERVICE_TESTURL); factory.setServiceBean(personService); server = factory.create(); server.start(); } @Test public void testPutPerson() { PersonService personService = getService(); personService.addPerson(createPerson()); Person person2 = personService.getPerson("1001"); assertCorrectPerson(person2); } @AfterClass public static void stopServer() { server.stop(); } private PersonService getService() { JaxWsProxyFactoryBean proxy = new JaxWsProxyFactoryBean(); proxy.setServiceClass(PersonService.class); proxy.setAddress(PERSONSERVICE_TESTURL); PersonService personService = (PersonService)proxy.create(); return personService; } private Person createPerson() { Person person = new Person(); person.setId("1001"); person.setName("Christian Schneider"); return person; } private void assertCorrectPerson(Person person) { Assert.assertNotNull(person); Assert.assertEquals("Christian Schneider", person.getName()); } }