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

Reply via email to