[jboss-jira] [JBoss JIRA] (WFLY-8653) Server reload missing in tearDown method of EjbElytronDomainSetup

Michal Jurc (JIRA) issues at jboss.org
Tue May 23 04:51:00 EDT 2017


     [ https://issues.jboss.org/browse/WFLY-8653?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Michal Jurc updated WFLY-8653:
------------------------------
    Git Pull Request: https://github.com/wildfly-security-incubator/wildfly/pull/196, https://github.com/wildfly/wildfly/pull/10040  (was: https://github.com/wildfly-security-incubator/wildfly/pull/196)


> Server reload missing in tearDown method of EjbElytronDomainSetup
> -----------------------------------------------------------------
>
>                 Key: WFLY-8653
>                 URL: https://issues.jboss.org/browse/WFLY-8653
>             Project: WildFly
>          Issue Type: Bug
>          Components: Test Suite
>            Reporter: Michal Jurc
>            Assignee: Michal Jurc
>             Fix For: 11.0.0.Beta1
>
>
> Clean up method in {{EjbElytronDomainSetup}} server setup class currently calls management operations on server that require a reload, but the method implicitly states not to reload the server, leaving the server in improperly cleaned up state after test case run, causing multiple tests that use incorrectly cleaned up services to fail with error: 
> {code:java|title=EjbElytronDomainSetup.java}@Override
>     public void tearDown(final ManagementClient managementClient, final String containerId) {
>         System.out.println("tearing down...");
>         List<ModelNode> updates = new LinkedList<>();
>         updates.add(createRemoveIgnoring(undertowDomainAddress));
>         updates.add(createRemoveIgnoring(httpAuthenticationAddress));
>         updates.add(Util.getWriteAttributeOperation(ejbRemoteAddress, "connector-ref", "http-remoting-connector"));
>         updates.add(createRemoveIgnoring(ejbDomainAddress));
>         updates.add(createRemoveIgnoring(remotingConnectorAddress));
>         updates.add(createRemoveIgnoring(saslAuthenticationAddress));
>         updates.add(createRemoveIgnoring(domainAddress));
>         updates.add(createRemoveIgnoring(realmAddress));
>         try {
>             applyUpdates(managementClient.getControllerClient(), updates, true);
>         } catch (Exception e) {
>             throw new RuntimeException(e);
>         }
>     }
>     private static ModelNode createRemoveIgnoring(PathAddress address) {
>         ModelNode remove = Util.createRemoveOperation(address);
>         // Don't rollback when the AS detects the war needs the module
>         remove.get(OPERATION_HEADERS, ROLLBACK_ON_RUNTIME_FAILURE).set(false);
>         remove.get(OPERATION_HEADERS, ALLOW_RESOURCE_SERVICE_RESTART).set(false);
>         return remove;
>     }
>     protected static void applyUpdates(final ModelControllerClient client, final List<ModelNode> updates, boolean allowFailure) {
>         for (ModelNode update : updates) {
>             try {
>                 applyUpdate(client, update, allowFailure);
>             } catch (Exception e) {
>                 throw new RuntimeException(e);
>             }
>         }
>     }{code}
> {code:title=mvn clean test -Dtest=org.jboss.as.test.integration.ejb.security.**.* -Delytron -Dwildfly.tmp.enable.elytron.profile.tests}Running org.jboss.as.test.integration.ejb.security.EJBInWarDefaultSecurityDomainTestCase
> Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.274 sec - in org.jboss.as.test.integration.ejb.security.EJBInWarDefaultSecurityDomainTestCase
> Running org.jboss.as.test.integration.ejb.security.EJBSecurityTestCase
> Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.374 sec - in org.jboss.as.test.integration.ejb.security.EJBSecurityTestCase
> Running org.jboss.as.test.integration.ejb.security.InherritanceAnnSFSBTestCase
> Tests run: 3, Failures: 0, Errors: 3, Skipped: 0, Time elapsed: 0.396 sec <<< FAILURE! - in org.jboss.as.test.integration.ejb.security.InherritanceAnnSFSBTestCase
> testSingleMethodAnnotationsUser1(org.jboss.as.test.integration.ejb.security.InherritanceAnnSFSBTestCase)  Time elapsed: 0.166 sec  <<< ERROR!
> javax.naming.CommunicationException: EJBCLIENT000062: Failed to look up "/inherritanceAnnOnlySFSB//InherritanceAnnOnlyCheckSFSB!org.jboss.as.test.integration.ejb.security.authorization.SimpleAuthorizationRemote?stateful" [Root exception is java.lang.IllegalStateException: EJBCLIENT000024: Not able to find EJB matching "StatelessEJBLocator for "/inherritanceAnnOnlySFSB/InherritanceAnnOnlyCheckSFSB", view is interface org.jboss.as.test.integration.ejb.security.authorization.SimpleAuthorizationRemote, affinity is None"]
> 	at org.jboss.ejb.client.EJBRootContext.lookupNative(EJBRootContext.java:144)
> 	at org.wildfly.naming.client.AbstractContext.lookup(AbstractContext.java:88)
> 	at org.wildfly.naming.client.WildFlyRootContext.lookup(WildFlyRootContext.java:149)
> 	at javax.naming.InitialContext.lookup(InitialContext.java:417)
> 	at org.jboss.as.test.integration.ejb.security.AnnSBTest.getBean(AnnSBTest.java:94)
> 	at org.jboss.as.test.integration.ejb.security.AnnSBTest.lambda$testSingleMethodAnnotationsUser1Template$1(AnnSBTest.java:165)
> 	at org.wildfly.common.context.Contextual.runCallable(Contextual.java:127)
> 	at org.jboss.as.test.integration.ejb.security.AnnSBTest.testSingleMethodAnnotationsUser1Template(AnnSBTest.java:163)
> 	at org.jboss.as.test.integration.ejb.security.InherritanceAnnSFSBTestCase.testSingleMethodAnnotationsUser1(InherritanceAnnSFSBTestCase.java:71)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:498)
> 	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
> 	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> 	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
> 	at org.jboss.arquillian.junit.Arquillian$8$1.invoke(Arquillian.java:374)
> 	at org.jboss.arquillian.container.test.impl.execution.LocalTestExecuter.execute(LocalTestExecuter.java:60)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:498)
> 	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:99)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:81)
> 	at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:145)
> 	at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:116)
> 	at org.jboss.arquillian.core.impl.EventImpl.fire(EventImpl.java:67)
> 	at org.jboss.arquillian.container.test.impl.execution.ClientTestExecuter.execute(ClientTestExecuter.java:53)
> 	at sun.reflect.GeneratedMethodAccessor14.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:498)
> 	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:99)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:81)
> 	at org.jboss.arquillian.container.test.impl.client.ContainerEventController.createContext(ContainerEventController.java:142)
> 	at org.jboss.arquillian.container.test.impl.client.ContainerEventController.createTestContext(ContainerEventController.java:129)
> 	at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:498)
> 	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
> 	at org.jboss.arquillian.test.impl.TestContextHandler.createTestContext(TestContextHandler.java:130)
> 	at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:498)
> 	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
> 	at org.jboss.arquillian.test.impl.TestContextHandler.createClassContext(TestContextHandler.java:92)
> 	at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:498)
> 	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
> 	at org.jboss.arquillian.test.impl.TestContextHandler.createSuiteContext(TestContextHandler.java:73)
> 	at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:498)
> 	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
> 	at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:145)
> 	at org.jboss.arquillian.test.impl.EventTestRunnerAdaptor.test(EventTestRunnerAdaptor.java:136)
> 	at org.jboss.arquillian.junit.Arquillian$8.evaluate(Arquillian.java:367)
> 	at org.jboss.arquillian.junit.Arquillian$4.evaluate(Arquillian.java:245)
> 	at org.jboss.arquillian.junit.Arquillian.multiExecute(Arquillian.java:426)
> 	at org.jboss.arquillian.junit.Arquillian.access$200(Arquillian.java:54)
> 	at org.jboss.arquillian.junit.Arquillian$5.evaluate(Arquillian.java:259)
> 	at org.jboss.arquillian.junit.Arquillian$7$1.invoke(Arquillian.java:319)
> 	at org.jboss.arquillian.container.test.impl.execution.ClientBeforeAfterLifecycleEventExecuter.execute(ClientBeforeAfterLifecycleEventExecuter.java:99)
> 	at org.jboss.arquillian.container.test.impl.execution.ClientBeforeAfterLifecycleEventExecuter.on(ClientBeforeAfterLifecycleEventExecuter.java:72)
> 	at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:498)
> 	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:99)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:81)
> 	at org.jboss.arquillian.container.test.impl.client.ContainerEventController.createContext(ContainerEventController.java:142)
> 	at org.jboss.arquillian.container.test.impl.client.ContainerEventController.createBeforeContext(ContainerEventController.java:124)
> 	at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:498)
> 	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
> 	at org.jboss.arquillian.test.impl.TestContextHandler.createTestContext(TestContextHandler.java:130)
> 	at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:498)
> 	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
> 	at org.jboss.arquillian.test.impl.TestContextHandler.createClassContext(TestContextHandler.java:92)
> 	at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:498)
> 	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
> 	at org.jboss.arquillian.test.impl.TestContextHandler.createSuiteContext(TestContextHandler.java:73)
> 	at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:498)
> 	at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94)
> 	at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88)
> 	at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:145)
> 	at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:116)
> 	at org.jboss.arquillian.test.impl.EventTestRunnerAdaptor.fireCustomLifecycle(EventTestRunnerAdaptor.java:159)
> 	at org.jboss.arquillian.junit.Arquillian$7.evaluate(Arquillian.java:312)
> 	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
> 	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
> 	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
> 	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
> 	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
> 	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
> 	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
> 	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
> 	at org.jboss.arquillian.junit.Arquillian$2.evaluate(Arquillian.java:204)
> 	at org.jboss.arquillian.junit.Arquillian.multiExecute(Arquillian.java:426)
> 	at org.jboss.arquillian.junit.Arquillian.access$200(Arquillian.java:54)
> 	at org.jboss.arquillian.junit.Arquillian$3.evaluate(Arquillian.java:218)
> 	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
> 	at org.jboss.arquillian.junit.Arquillian.run(Arquillian.java:166)
> 	at org.junit.runners.Suite.runChild(Suite.java:128)
> 	at org.junit.runners.Suite.runChild(Suite.java:27)
> 	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
> 	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
> 	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
> 	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
> 	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
> 	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
> 	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
> 	at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
> 	at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.createRequestAndRun(JUnitCoreWrapper.java:108)
> 	at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.executeEager(JUnitCoreWrapper.java:78)
> 	at org.apache.maven.surefire.junitcore.JUnitCoreWrapper.execute(JUnitCoreWrapper.java:54)
> 	at org.apache.maven.surefire.junitcore.JUnitCoreProvider.invoke(JUnitCoreProvider.java:144)
> 	at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:203)
> 	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:155)
> 	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)
> Caused by: java.lang.IllegalStateException: EJBCLIENT000024: Not able to find EJB matching "StatelessEJBLocator for "/inherritanceAnnOnlySFSB/InherritanceAnnOnlyCheckSFSB", view is interface org.jboss.as.test.integration.ejb.security.authorization.SimpleAuthorizationRemote, affinity is None"
> 	at org.jboss.ejb.client.EJBClientContext.discoverAffinityNone(EJBClientContext.java:719)
> 	at org.jboss.ejb.client.EJBClientContext.performLocatedAction(EJBClientContext.java:701)
> 	at org.jboss.ejb.client.EJBClientContext.createSession(EJBClientContext.java:681)
> 	at org.jboss.ejb.client.EJBClient.createSession(EJBClient.java:288)
> 	at org.jboss.ejb.client.EJBRootContext.lookupNative(EJBRootContext.java:142)
> 	... 135 more
> 	Suppressed: org.xnio.http.UpgradeFailedException: Invalid response code 200
> 		at org.xnio.http.HttpUpgrade$HttpUpgradeState$UpgradeResultListener.handleEvent(HttpUpgrade.java:471)
> 		at org.xnio.http.HttpUpgrade$HttpUpgradeState$UpgradeResultListener.handleEvent(HttpUpgrade.java:400)
> 		at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
> 		at org.xnio.conduits.ReadReadyHandler$ChannelListenerHandler.readReady(ReadReadyHandler.java:66)
> 		at org.xnio.nio.NioSocketConduit.handleReady(NioSocketConduit.java:89)
> 		at org.xnio.nio.WorkerThread.run(WorkerThread.java:567)
> 		at ...asynchronous invocation...(Unknown Source)
> 		at org.jboss.remoting3.EndpointImpl.connect(EndpointImpl.java:537)
> 		at org.jboss.remoting3.EndpointImpl.connect(EndpointImpl.java:503)
> 		at org.jboss.remoting3.ConnectionInfo$None.getConnection(ConnectionInfo.java:84)
> 		at org.jboss.remoting3.ConnectionInfo.getConnection(ConnectionInfo.java:57)
> 		at org.jboss.remoting3.EndpointImpl.doGetConnection(EndpointImpl.java:458)
> 		at org.jboss.remoting3.EndpointImpl.getConnectedIdentity(EndpointImpl.java:403)
> 		at org.jboss.remoting3.UncloseableEndpoint.getConnectedIdentity(UncloseableEndpoint.java:55)
> 		at org.jboss.remoting3.Endpoint.getConnectedIdentity(Endpoint.java:126)
> 		at org.jboss.remoting3.Endpoint.getConnectedIdentity(Endpoint.java:139)
> 		at org.jboss.remoting3.Endpoint.getConnection(Endpoint.java:216)
> 		at org.jboss.ejb.protocol.remote.RemotingEJBDiscoveryProvider.lambda$discover$0(RemotingEJBDiscoveryProvider.java:103)
> 		at java.security.AccessController.doPrivileged(Native Method)
> 		at org.jboss.ejb.protocol.remote.RemotingEJBDiscoveryProvider.discover(RemotingEJBDiscoveryProvider.java:103)
> 		at org.wildfly.discovery.impl.AggregateDiscoveryProvider.discover(AggregateDiscoveryProvider.java:58)
> 		at org.wildfly.discovery.ConfiguredProvider.discover(ConfiguredProvider.java:45)
> 		at org.wildfly.discovery.Discovery.discover(Discovery.java:94)
> 		at org.jboss.ejb.client.EJBClientContext.discover(EJBClientContext.java:442)
> 		at org.jboss.ejb.client.EJBClientContext.discoverAffinityNone(EJBClientContext.java:714)
> 		... 139 more
> {code}
> If no test with {{EjbElytronDomainSetup}} is ran before these failing tests, they will be successful.



--
This message was sent by Atlassian JIRA
(v7.2.3#72005)


More information about the jboss-jira mailing list