ContributionsMost RecentMost LikesSolutionsRe: Reparsing an xml string with groovyThat worked! Thanks!Re: Reparsing an xml string with groovyLet's tr another approach. I originally wanted to just use a property transfer, but the response is escaped: <activation id="a724-af8a-d172-4720-8605" returnCode="success" description="" name="Avocent Management Platform Server" version="4.0"/><activation id="5607-390a-7b73-42ff-ace2" returnCode="success" description="" name="Avocent Management Platform Console - 500 pack" version="4.0"/><activation id="2626-c91a-22a4-4cf5-bd38" returnCode="errcode.licensing.error.activate.invalid.activationid" description="Flexera Error: major.minor.sys (50040.41147.14) License generator error: No component(s): file C:\WINDOWS\TEMP\vcg36457.prd line 12 [Incident# 0050-82906] operationName=sHandleActivation. flxActSvrActivationSend failed. activationID=2626-c91a-22a4-4cf5-bd38 CommServer=https://fno-test.avocent.com:8888/flexnet/services/ActivationService?wsdl" name="Avocent Management Platform Reporting" version="4.0"/> I'm doing a multistep proeprty transfer. 1st step: Source: activateLicenses Property: response declare namespace ns2='http://ws.licensing.amp.avocent.com'; //ns2:activateLicensesResponse/out Target: Properties property responseXML produces: [ ] I then create a second transfer: source: Properties Property: responseXML I want to get the ID attribute from each activation tag, however /activation[1]/@id results in: [error: Unexepected element: EMPTY_TAG] I also tried: /activation[0]/@id just to make sure this wasn't indexed from 0, no difference. I know the response out tag is escaped. Is there a way to grab the id attribute from each activation tag even though this appears to be text now? Would appreciate any help you can offer.Re: Reparsing an xml string with groovyAlas, no, but thanks for the suggestions. Both: def outCount = activationOut.getDomNodes("//activation").size() and def ids = groovyUtils.getXmlHolder(" " + activationOut + " ") result in the NullPointerException.Re: Reparsing an xml string with groovyThanks for the feedback. The string I am getting back is the content of the out tag. As a test of the recommendation I received, I tried: log.info(activationNode = groovyUtils.getXmlHolder(' ')) I get the same java.lang.NullPointerException. I've also tried: log.info(activationOut = holder.getNodeValue( "//out//activation[1]/@id" )) but it returns null I'm just don't know how to extract this information. Reparsing an xml string with groovyI have the following a WSDL operation response: <activation id="c5fb-7bfc-a755-4f07-9967" returnCode="success" description="" name="Avocent Management Platform Server" version="4.0"/><activation id="67b9-8372-eb53-4f8c-a863" returnCode="success" description="" name="Avocent Management Platform Console - 500 pack" version="4.0"/><activation id="5204-4734-c59e-4444-b734" returnCode="success" description="" name="Avocent Management Platform Reporting" version="4.0"/> I am trying to verify that each of the three activation tags contains returnCode="success". Because I have to reparse the string content of the out tag, I have been trying to use the following groovy script: groovyUtils = new com.eviware.soapui.support.GroovyUtils( context ) holder = groovyUtils.getXmlHolder("activateLicenses#Response") log.info(activationOut = holder.getNodeValue( "//out" )) This produces the response: Thu Apr 29 16:24:14 MDT 2010:INFO: I beleive my next step is to reparse using: log.info(activationNode = groovyUtils.getXmlHolder(activationOut)) However, this give me an Error dialog: java.lang.NullPointerException What call do I need to use to view this returned string as a node and what would be the code line to obtain the value of one of the attributes returnCode for an activation tag?Changes recorded to soap projects without savingIf I right-click a project, I can save that project. It would be my expectation that without specifically saving all projects or a specific project, no changes would be made to any project. That does not appear to be the case. What I am finding is that if I change the contents of a soap project for a one off test, that change is still present after I close and reopen SoapUI Pro. I have looked for an autosave feature and cannot find it. I have a great number of property transfers and expansions. This behavior is wreaking havok with my testing. Is if possible to alter soapUI Pro so that when I make changes and close a project without saving, it will load the project next time without those changes present? The response to this request will pretty much determine whether I continue to use SoapUI Pro.Re: Global ENDPOINT for manual testingYes, that works. However, I don't understand why I would use: ${#TestSuite#SessionID} instead of: ${#licensingTestSuite#SessionID} when the test suite is actually named licensingTestSuite. Can you explain?Re: Global ENDPOINT for manual testingI have sent a subset of what I am testing with a single value that I am trying to transfer and then retrieve from a TestSuite Property. I have sent this in an email message to your email account. If I execute authenticate TestCase, then copy the sessionID to activateLicense and execute with the code: 05a73758-389a-4834-aaa6-969aa4ac7f66 A201_5 lab 0 It works properly. If I then replace the hardcoded sessionID with: ${#licenseTestSuite#SessionID} and execute the two testcases again, I get the error: soapenv:Server java.lang.SecurityException: Malformed Identifier element - level 1 Security errors are only returned if there is a problem with the SessionID. If I replace the Property Expansion with a reference to a local Property such as: ${Property#SessionID}, it works fine. Why can't I get Property Expansions to TestSuite Properties to permit transfer of data between testCases?Re: Global ENDPOINT for manual testingNo, unfortunately, this does not seem to help at all. I find this very frustrating. I am sure I am not coying the information incorrectly because I an selecting the Project name and the property, renaming, (then just copying the text instead of renaming) and creating the property transfer.Re: Global ENDPOINT for manual testingThank you. Sounds like a great idea! Unfortunately, it is not working. I created property SESSIONID in the project "LicensingService with SessionID". I then modified my Property transfer to transfer the Session id to the target "LicensingService with property SESSIONID. I then modified one of my TestCases in the project, set ProxyInfo, to use the property expansion: "${#LicensingService with SessionID#SESSIONID}" (without the quotes). It fails with a security exception. As a test, I created a Property Transfer and a property and placed these in setProxyInfo, even though the oepration is failing, my test property value SESSIONIDTEST is receiving the session id placed in the project property SESSIONID. This leads me to believe there is something wrong with the property expansion: ${#LicensingService with SessionID#SESSIONID} I also tried: ${LicensingService with SessionID#SESSIONID} What am I doing wrong? Thanks, Bryan