[jboss-user] [JBoss Seam] - Tests on EJB3 that uses JAAS
endremr
do-not-reply at jboss.com
Thu Nov 2 07:13:54 EST 2006
Hello!
I'm trying to write tests for my EJB3's that uses Java security roles and JAAS. When I run my tests, I get exceptions with "jaas not bound" since the embedded-ejb hasn't set up the JAAS stuff.
I found this wiki page:
http://wiki.jboss.org/wiki/Wiki.jsp?page=EmbeddedJaasSecurityManagerService
...that describes how to set up JAAS in embedded JBoss EJB3. I have added the jar into my classpath, but I don't know where to add the needed Java code.
I have tried to override "SeamTest.init" like this:
public void init() throws Exception {
logger.debug("### MY INIT ###");
EJB3StandaloneBootstrap.deployXmlResource("security-deployment.xml");
super.init();
}
...but this gives me the following stack trace:
java.lang.NullPointerException
at org.jboss.seam.contexts.WebApplicationContext.get(WebApplicationContext.java:47)
at org.jboss.seam.contexts.WebApplicationContext.get(WebApplicationContext.java:80)
at org.jboss.seam.core.Init.instance(Init.java:50)
at org.jboss.seam.Component.getInstanceFromFactory(Component.java:1283)
at org.jboss.seam.Component.getInstance(Component.java:1260)
at org.jboss.seam.Component.getInstance(Component.java:1253)
at org.jboss.seam.Component.getInstance(Component.java:1235)
at org.jboss.seam.core.Manager.instance(Manager.java:303)
at org.jboss.seam.contexts.Lifecycle.endSession(Lifecycle.java:187)
at org.jboss.seam.mock.SeamTest.end(SeamTest.java:297)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.testng.internal.MethodHelper.invokeMethod(MethodHelper.java:552)
at org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:318)
at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:152)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:483)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:778)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:105)
at org.testng.TestRunner.privateRun(TestRunner.java:682)
at org.testng.TestRunner.run(TestRunner.java:566)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:220)
at org.testng.SuiteRunner.run(SuiteRunner.java:146)
at org.testng.TestNG.createAndRunSuiteRunners(TestNG.java:713)
at org.testng.TestNG.runSuitesLocally(TestNG.java:676)
at org.apache.maven.surefire.testng.TestNGExecutor.executeTestNG(TestNGExecutor.java:64)
at org.apache.maven.surefire.testng.TestNGXmlTestSuite.execute(TestNGXmlTestSuite.java:75)
at org.apache.maven.surefire.Surefire.run(Surefire.java:129)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:225)
at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:747)
myFirstTest Time elapsed: 0.182 sec <<< FAILURE!
java.lang.RuntimeException: java.lang.IllegalArgumentException: Null kernel
at org.jboss.ejb3.embedded.EJB3StandaloneBootstrap.deployXmlResource(EJB3StandaloneBootstrap.java:95)
at no.schibstedsok.wp.ejb3.entity.PersonCorrectionTest.init(PersonCorrectionTest.java:25)
at no.schibstedsok.wp.ejb3.entity.PersonCorrectionTest.myFirstTest(PersonCorrectionTest.java:33)
What are the status on JAAS in SeamTests? Has anybody got it working or isn't SeamTest ready for it yet?
Thanks for advice :)
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3982636#3982636
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3982636
More information about the jboss-user
mailing list