I am using the following script to handle a file upload request for my application. I am using this script inside a JSR223 Sampler and the code block
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.ContentType;
import org.apache.http.entity.mime.HttpMultipartMode;
import org.apache.http.entity.mime.MultipartEntityBuilder;
import org.apache.http.impl.client.HttpClientBuilder;
def imageFileName = "C:\\Users\\IMAGES\\IMG00001.dcm"
def urlRequest='https://<app-server>/api/v3/storage/namespace/7c762733-009f-4527-81ea-571d1cf6e9d2/image?sid=${SIDVALUE}&study_uid=1.2.300.0.7230010.3.1.2.2595064201.8112.1216202112026121&image_uid=1.2.840.113704.7.1.0.1356918323635126.1521373008.110'
def postRequest = new HttpPost(urlRequest);
def file = new File(imageFileName);
def builder = MultipartEntityBuilder.create();
builder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);
builder.addBinaryBody("file", file, ContentType.DEFAULT_BINARY, imageFileName);
def entity = builder.build();
post.setEntity(entity);
def response = HttpClientBuilder.create().build().execute(postRequestt);
ERROR I am getting: When I am removing the file
declaration code execute with error.
2022-09-01 13:44:03,501 ERROR o.a.j.p.j.s.JSR223Sampler: Problem in JSR223 script JSR223 Sampler, message: javax.script.ScriptException: org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
Script44.groovy: 8: Unexpected input: '"' @ line 8, column 21.
def imageFileName = "C:\Users\IMAGES\IMG00001.dcm"
^
1 error
javax.script.ScriptException: org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
Script44.groovy: 8: Unexpected input: '"' @ line 8, column 21.
def imageFileName = "C:\Users\IMAGES\IMG00001.dcm"
^
1 error
at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.compile(GroovyScriptEngineImpl.java:183) ~[groovy-jsr223-3.0.3.jar:3.0.3]
at org.apache.jmeter.util.JSR223TestElement.processFileOrScript(JSR223TestElement.java:216) ~[ApacheJMeter_core.jar:5.3]
at org.apache.jmeter.protocol.java.sampler.JSR223Sampler.sample(JSR223Sampler.java:72) [ApacheJMeter_java.jar:5.3]
at org.apache.jmeter.threads.JMeterThread.doSampling(JMeterThread.java:630) [ApacheJMeter_core.jar:5.3]
at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:558) [ApacheJMeter_core.jar:5.3]
at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:489) [ApacheJMeter_core.jar:5.3]
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:256) [ApacheJMeter_core.jar:5.3]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_191]
Caused by: org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
Script44.groovy: 8: Unexpected input: '"' @ line 8, column 21.
def imageFileName = "C:\Users\IMAGES\IMG00001.dcm"
^
1 error
at org.codehaus.groovy.control.ErrorCollector.failIfErrors(ErrorCollector.java:287) ~[groovy-3.0.3.jar:3.0.3]
at org.codehaus.groovy.control.ErrorCollector.addFatalError(ErrorCollector.java:143) ~[groovy-3.0.3.jar:3.0.3]
at org.apache.groovy.parser.antlr4.AstBuilder.collectSyntaxError(AstBuilder.java:4544) ~[groovy-3.0.3.jar:3.0.3]
at org.apache.groovy.parser.antlr4.AstBuilder.access$000(AstBuilder.java:341) ~[groovy-3.0.3.jar:3.0.3]
at org.apache.groovy.parser.antlr4.AstBuilder$1.syntaxError(AstBuilder.java:4559) ~[groovy-3.0.3.jar:3.0.3]
I tried with C:\Users\IMAGES\IMG00001.dcm
instead of C:\\Users\\IMAGES\\IMG00001.dcm
, but no luck