On Wed, Aug 14, 2013 at 8:50 AM, Nalin Chandraratne <[email protected]> wrote:
> Hi, > > As the security tests tend to fail when running integration tests, I ran > the security scenarios manually. Below shows the observations I got. The > exceptions thrown in each failed test is given at the latter part. > > Test class : SecurityTransformationProxyForPolicy8BackEndTestCase > > Security Scenario Status. > > 1 Passed > 2 Failed (The exception occurs in the > response path. ) > 3 Passed > 4 Passed > 5 Failed (The exception occurs in the > response path. ) > 6 Passed > 7 Passed > 8 Passed > 9 Passed > 10 Passed > 11 Passed > 12 Passed > 13 Passed > 14 Passed > 15 Passed > > Note that all the security policies were applied to a single proxy > service. The policies successfully get applied and removed when changing. > However when running integration tests, sometimes it doesn't remove the > previous policies and hence some tests failed (They pass when run in > isolation or a separate proxy service is created for each security policy). > > Whn debugging the failed tests it showed that in response path, when > trying to retrieve the cacheManager, an NPE is thrown. These tests get > passed successfully in ESB 4.7.0. The exception thrown at the failed tests: > This seems the cause of recent caching changes not being applied properly. Check the flow and set the tenant domain properly where appropriate. Regards, Vijitha. > > > [2013-08-14 07:31:36,366] ERROR - ServicePasswordCallbackHandler Tenant > domain has not been set in CarbonContext > java.lang.NullPointerException: Tenant domain has not been set in > CarbonContext > at > org.wso2.carbon.caching.impl.CacheManagerFactoryImpl.getCacheManager(CacheManagerFactoryImpl.java:79) > at > org.wso2.carbon.registry.core.utils.RegistryUtils.getCacheManager(RegistryUtils.java:289) > at > org.wso2.carbon.registry.core.utils.RegistryUtils.getResourceCache(RegistryUtils.java:272) > at > org.wso2.carbon.registry.core.caching.CacheBackedRegistry.getCache(CacheBackedRegistry.java:62) > at > org.wso2.carbon.registry.core.caching.CacheBackedRegistry.resourceExists(CacheBackedRegistry.java:246) > at > org.wso2.carbon.registry.core.session.UserRegistry.resourceExists(UserRegistry.java:629) > at > org.wso2.carbon.security.util.ServicePasswordCallbackHandler.getPrivateKeyPassword(ServicePasswordCallbackHandler.java:247) > at > org.wso2.carbon.security.util.ServicePasswordCallbackHandler.handle(ServicePasswordCallbackHandler.java:93) > at > org.apache.rampart.builder.BindingBuilder.getSignatureBuilder(BindingBuilder.java:316) > at > org.apache.rampart.builder.BindingBuilder.getSignatureBuilder(BindingBuilder.java:263) > at > org.apache.rampart.builder.AsymmetricBindingBuilder.doSignature(AsymmetricBindingBuilder.java:717) > at > org.apache.rampart.builder.AsymmetricBindingBuilder.doSignBeforeEncrypt(AsymmetricBindingBuilder.java:414) > at > org.apache.rampart.builder.AsymmetricBindingBuilder.build(AsymmetricBindingBuilder.java:90) > at org.apache.rampart.MessageBuilder.build(MessageBuilder.java:147) > at org.apache.rampart.handler.RampartSender.invoke(RampartSender.java:65) > at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340) > at org.apache.axis2.engine.Phase.invoke(Phase.java:313) > at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:261) > at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:426) > at org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:161) > at > org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:308) > at > org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:92) > at > org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:71) > at > org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:114) > at > org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:239) > at > org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:443) > at > org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:166) > at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180) > at > org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:222) > at > org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) > at java.lang.Thread.run(Thread.java:662) > [2013-08-14 07:31:36,521] ERROR - ServicePasswordCallbackHandler Tenant > domain has not been set in CarbonContext > java.lang.NullPointerException: Tenant domain has not been set in > CarbonContext > at > org.wso2.carbon.caching.impl.CacheManagerFactoryImpl.getCacheManager(CacheManagerFactoryImpl.java:79) > at > org.wso2.carbon.registry.core.utils.RegistryUtils.getCacheManager(RegistryUtils.java:289) > at > org.wso2.carbon.registry.core.utils.RegistryUtils.getResourceCache(RegistryUtils.java:272) > at > org.wso2.carbon.registry.core.caching.CachbeieBackedRegistry.getCache(CacheBackedRegistry.java:62) > at > org.wso2.carbon.registry.core.caching.CacheBackedRegistry.resourceExists(CacheBackedRegistry.java:246) > at > org.wso2.carbon.registry.core.session.UserRegistry.resourceExists(UserRegistry.java:629) > at > org.wso2.carbon.security.util.ServicePasswordCallbackHandler.getPrivateKeyPassword(ServicePasswordCallbackHandler.java:247) > at > org.wso2.carbon.security.util.ServicePasswordCallbackHandler.handle(ServicePasswordCallbackHandler.java:93) > at > org.apache.rampart.builder.BindingBuilder.getSignatureBuilder(BindingBuilder.java:316) > at > org.apache.rampart.builder.BindingBuilder.getSignatureBuilder(BindingBuilder.java:263) > at > org.apache.rampart.builder.AsymmetricBindingBuilder.doSignature(AsymmetricBindingBuilder.java:717) > at > org.apache.rampart.builder.AsymmetricBindingBuilder.doSignBeforeEncrypt(AsymmetricBindingBuilder.java:414) > at > org.apache.rampart.builder.AsymmetricBindingBuilder.build(AsymmetricBindingBuilder.java:90) > at org.apache.rampart.MessageBuilder.build(MessageBuilder.java:147) > at org.apache.rampart.handler.RampartSender.invoke(RampartSender.java:65) > at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340) > at org.apache.axis2.engine.Phase.invoke(Phase.java:313) > at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:261) > at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:426) > at > org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:161) > at > org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:308) > at > org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:92) > at > org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:71) > at > org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:114) > at > org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:239) > at > org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:443) > at > org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:166) > at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180) > at > org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:222) > at > org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) > at java.lang.Thread.run(Thread.java:662) > [2013-08-14 07:31:36,523] ERROR - Axis2Sender Unexpected error sending > message back > org.apache.axis2.AxisFault: Error in getting password for user : > "wso2carbon" > at org.apache.rampart.handler.RampartSender.invoke(RampartSender.java:76) > at org.apache.axis2.engine.Phase.invokeHandler(Phase.java:340) > at org.apache.axis2.engine.Phase.invoke(Phase.java:313) > at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:261) > at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:426) > at > org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:161) > at > org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:308) > at > org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:92) > at > org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:71) > at > org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:114) > at > org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:239) > at > org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:443) > at > org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:166) > at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180) > at > org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:222) > at > org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) > at java.lang.Thread.run(Thread.java:662) > Caused by: org.apache.rampart.RampartException: Error in getting password > for user : "wso2carbon" > at > org.apache.rampart.builder.BindingBuilder.getSignatureBuilder(BindingBuilder.java:330) > at > org.apache.rampart.builder.BindingBuilder.getSignatureBuilder(BindingBuilder.java:263) > at > org.apache.rampart.builder.AsymmetricBindingBuilder.doSignature(AsymmetricBindingBuilder.java:717) > at > org.apache.rampart.builder.AsymmetricBindingBuilder.doSignBeforeEncrypt(AsymmetricBindingBuilder.java:414) > at > org.apache.rampart.builder.AsymmetricBindingBuilder.build(AsymmetricBindingBuilder.java:90) > at org.apache.rampart.MessageBuilder.build(MessageBuilder.java:147) > at org.apache.rampart.handler.RampartSender.invoke(RampartSender.java:65) > ... 18 more > Caused by: javax.security.auth.callback.UnsupportedCallbackException: > Tenant domain has not been set in CarbonContext > at > org.wso2.carbon.security.util.ServicePasswordCallbackHandler.handle(ServicePasswordCallbackHandler.java:152) > at > org.apache.rampart.builder.BindingBuilder.getSignatureBuilder(BindingBuilder.java:316) > ... 24 more > > > Thanks, > Nalin. > > > > _______________________________________________ > Dev mailing list > [email protected] > http://wso2.org/cgi-bin/mailman/listinfo/dev > > -- Vijitha Kumara Senior Software Engineer; WSO2, Inc.; http://wso2.com/ email: [email protected] Lean . Enterprise . Middleware
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
