Forum Discussion

shantha_mh's avatar
shantha_mh
Occasional Contributor
6 years ago

WssCrypto

Do any one have any idea how to change the groovy script to use WssCrypto as the parameter type for setSslKeystore? Attached the script for my custom environments.

  • nmrao's avatar
    nmrao
    6 years ago

    Thank you for the log.

     

    Could not see any issue with the script and don't think any respective API(in latest version) is changed which you are using. Request you to followup with support only.

     

    By the way, your script can be avoided so many if..else constructs with use of simple map as shown below:

    import com.eviware.soapui.impl.wsdl.teststeps.WsdlTestRequestStep
    def projectProperty = context.expand('${#Project#MyProp}')
    
    def map = [IMP1A_Secured : [IMP1A: 'hixdshtesters.jks'], 
    	IMP1B_Secured: [IMP1B: 'hixdshtesters.jks'],
    	IMP2_Secured: [IMP2: 'hixdshtesters.jks'],
    	AWS_Secured: ['AWS-IMP1A': 'hixdshtesters.jks'],
    	DEV2_Secured: [DEV2: 'hixdshtesters.jks'],
    	TEST2_Secured: [TEST2: 'hixdshtesters.jks'],
    	TEST0_Secured: [TEST0: 'hixdshtesters.jks'],
    	IMP0_Secured: [IMP0: 'hixdshtesters.jks'],
    	HPProd_Secured: [HPProd: 'hixdshtesters.jks'],
    	ProdPrime_Secured: [ProdPrime: 'prodkeystore.jks']
    ]
    
    testSuite.testCaseList.each { kase ->
    	kase.testStepList.findAll {it instanceof WsdlTestRequestStep}. each { 
    		def tempMap = map[projectProperty]
    		tempMap.each { wss, store ->
    			it.httpRequest.with {
    				outgoingWss = wss
    				sslKeystore = store
    			}
    		}
    	}
    }

     

  • groovyguy's avatar
    groovyguy
    Community Hero

    I need more details, please. What are you actually trying to accomplish? Do you wish to use WssCrypto to automate setting up Outgoing WSS instead of setSSLKeystore? I am trying to understand what your end-goal is. 

    • shantha_mh's avatar
      shantha_mh
      Occasional Contributor

      Yes, as in the attahcement, I run this script in the Suite Setup Script to update WS-Security credentials and Keystore. This script perfectly works in Ready! API v2.5.0 but fails in ReadyAPI v2.6.0. The SmartBear Support team member recommends that I am  using a groovy script in the Setup Script for the TestSuites which is setting the keystore and causing this error because I need to change the script to use WssCrypto as the parameter type for setSslKeystore. However, I got the Java Class location for this but I am not sure where to update these.

      • groovyguy's avatar
        groovyguy
        Community Hero

        Ah, I don't currently have 2.6.0 installed so I wasn't seeing an issue. I'll see if I can snag a copy to help.