Forum Discussion

alibaba82's avatar
alibaba82
Super Contributor
15 years ago

soapUI trying to save project while running via hudson

I am noticing some thing quite weird while running soapUI via hudson. It seems like soapUI is trying to save the project while the tests are still running. Since we have the project under source control this operation fails and I see a lot of errors like

java.io.FileNotFoundException: F:\hudson_workspace\jobs\Phase9-Elgato-Production\workspace\.\Integration_Environment\Elgato\Elgato-soapui-project\GetEPGValid\element.order (Access is denied)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.(FileOutputStream.java:179)
at java.io.FileOutputStream.(FileOutputStream.java:131)
at java.io.FileWriter.(FileWriter.java:73)
at com.eviware.soapui.impl.support.loadsave.SplitProject.a(SourceFile:1163)
at com.eviware.soapui.impl.support.loadsave.SplitProject.saveSplitProject(SourceFile:301)
at com.eviware.soapui.model.PropertyNameChangeListener.a(SourceFile:183)
at com.eviware.soapui.model.PropertyNameChangeListener.propertyChange(SourceFile:48)
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:339)
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:276)
at com.eviware.soapui.model.support.AbstractModelItem.notifyPropertyChanged(AbstractModelItem.java:97)
at com.eviware.soapui.impl.wsdl.AbstractWsdlModelItem.setName(AbstractWsdlModelItem.java:102)
at com.eviware.soapui.impl.wsdl.WsdlTestSuite.setName(WsdlTestSuite.java:523)
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:597)
at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:88)
at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
at groovy.lang.MetaClassImpl.setProperty(MetaClassImpl.java:2386)
at groovy.lang.MetaClassImpl.setProperty(MetaClassImpl.java:3306)
at org.codehaus.groovy.runtime.InvokerHelper.setProperty(InvokerHelper.java:183)
at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.setProperty(ScriptBytecodeAdapter.java:483)
at ConfigureGlobalVariable.ProductionSetup(ConfigureGlobalVariable.groovy:485)
at ConfigureGlobalVariable$ProductionSetup.callCurrent(Unknown Source)
at ConfigureGlobalVariable.ProductionTeardown(ConfigureGlobalVariable.groovy:516)
at ConfigureGlobalVariable$ProductionTeardown.call(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:40)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:117)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:129)
at Script1.run(Script1.groovy:2)
at com.eviware.soapui.support.scripting.groovy.SoapUIGroovyScriptEngine.run(SoapUIGroovyScriptEngine.java:93)
at com.eviware.soapui.support.scripting.groovy.SoapUIProGroovyScriptEngineFactory$SoapUIProGroovyScriptEngine.run(SourceFile:51)
at com.eviware.soapui.impl.wsdl.WsdlTestSuite.runTearDownScript(WsdlTestSuite.java:515)
at com.eviware.soapui.impl.wsdl.testcase.WsdlTestSuiteRunner.internalFinally(WsdlTestSuiteRunner.java:184)
at com.eviware.soapui.impl.wsdl.testcase.WsdlTestSuiteRunner.internalFinally(WsdlTestSuiteRunner.java:42)
at com.eviware.soapui.impl.wsdl.support.AbstractTestRunner.run(AbstractTestRunner.java:167)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
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:619)
12:44:29,264 INFO  [SplitProject] Can not write file [ write protected ] F:\hudson_workspace\jobs\Phase9-Elgato-Production\workspace\.\Integration_Environment\Elgato\Elgato-soapui-project\GetEPGValid\settings.xml

Is this by design ?

Ali
  • Hi,

    Please try changing Preferences/UI Settings/Auto saving interval (0 == saving is off).

    Regards,
    /Dragica
    eviware.com
  • alibaba82's avatar
    alibaba82
    Super Contributor
    where does this value get written. I checked soapui-settings.xml and could not find the value I have configured in soapui preferences.
  • Hello,

    file element.order keeps oder of elements ( test suites, test cases, etc. ). When saving a project it will be updated. In upcoming nightly build it will be logged in log if not writable, error will not be thrown so you'll not see that stack trace.

    robert
  • alibaba82's avatar
    alibaba82
    Super Contributor
    I dont have that property set in my settings file.

    Hudson command
    cd "F:\soapUI-Pro\bin"
    F:
    cmd.exe /C testrunner.bat "%TFS_WORKFOLDER%\Integration_Environment\Elgato\Elgato-soapui-project" -t"%TFS_WORKFOLDER%\Integration_Environment\soapui-settings.xml" -f"F:\HudsonResults\%JOB_NAME%\%BUILD_NUMBER%\Elgato-soapui-project" -j -g

    See attachment for soapui-settings.xml