Я загружаю файл в наш сервис загрузки, используя soapUI. Файл будет загружен правильно при использовании графического интерфейса инструмента. Однако мы вызываем версию командной строки из нашего фреймворка.
Похоже, что вызов командной строки soapUI не может правильно построить Content-Disposition в http-запросе, и при попытке добавить параметр «filename» выдается исключение, так как это неожиданно. Вот трассировка стека:
14:33:51,358 ERROR [SoapUI] An error occured [Expected ';', got "filename"], see error log for details
javax.mail.internet.ParseException: Expected ';', got "filename"
at javax.mail.internet.ParameterList.<init>(ParameterList.java:280)
at javax.mail.internet.ContentDisposition.<init>(ContentDisposition.java:96)
at javax.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:1338)
at javax.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:1008)
at javax.mail.internet.PreencodedMimeBodyPart.updateHeaders(PreencodedMimeBodyPart.java:117)
at javax.mail.internet.MimeMultipart.updateHeaders(MimeMultipart.java:414)
at javax.mail.internet.MimeBodyPart.updateHeaders(MimeBodyPart.java:1285)
at javax.mail.internet.MimeMessage.updateHeaders(MimeMessage.java:2071)
at javax.mail.internet.MimeMessage.saveChanges(MimeMessage.java:2039)
at com.eviware.soapui.impl.wsdl.submit.filters.HttpRequestFilter.filterHttpRequest(HttpRequestFilter.java:240)
at com.eviware.soapui.impl.wsdl.submit.filters.AbstractRequestFilter.filterAbstractHttpRequest(AbstractRequestFilter.java:41)
at com.eviware.soapui.impl.wsdl.submit.filters.AbstractRequestFilter.filterRequest(AbstractRequestFilter.java:31)
at com.eviware.soapui.impl.wsdl.submit.transports.http.HttpClientRequestTransport.sendRequest(HttpClientRequestTransport.java:130)
at com.eviware.soapui.impl.wsdl.WsdlSubmit.run(WsdlSubmit.java:122)
at com.eviware.soapui.impl.wsdl.WsdlSubmit.submitRequest(WsdlSubmit.java:75)
at com.eviware.soapui.impl.support.http.HttpRequest.submit(HttpRequest.java:258)
at com.eviware.soapui.impl.wsdl.teststeps.HttpTestRequestStep.run(HttpTestRequestStep.java:253)
at com.eviware.soapui.impl.wsdl.testcase.WsdlTestCaseRunner.runTestStep(WsdlTestCaseRunner.java:193)
at com.eviware.soapui.impl.wsdl.testcase.WsdlTestCaseRunner.internalRun(WsdlTestCaseRunner.java:124)
at com.eviware.soapui.impl.wsdl.testcase.WsdlTestCaseRunner.internalRun(WsdlTestCaseRunner.java:39)
at com.eviware.soapui.impl.wsdl.support.AbstractTestRunner.run(AbstractTestRunner.java:137)
at com.eviware.soapui.impl.wsdl.support.AbstractTestRunner.start(AbstractTestRunner.java:80)
at com.eviware.soapui.impl.wsdl.testcase.WsdlTestCase.run(WsdlTestCase.java:578)
at awris.product.testengine.commands.service.SoapUICommand$BetterSoapUITestCaseRunner.runTestCase(SoapUICommand.java:303)
at com.eviware.soapui.tools.SoapUITestCaseRunner.runRunner(SoapUITestCaseRunner.java:318)
at com.eviware.soapui.tools.AbstractSoapUIRunner.run(AbstractSoapUIRunner.java:133)
at awris.product.testengine.commands.service.SoapUICommand.execute(SoapUICommand.java:76)
at awris.product.testengine.TestRunner.executeCommands(TestRunner.java:123)
at awris.product.testengine.TestRunner.doTest(TestRunner.java:87)
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.testng.internal.MethodHelper.invokeMethod(MethodHelper.java:609)
at org.testng.internal.MethodHelper$1.runTestMethod(MethodHelper.java:727)
......
Когда тестовый прогон не загружается, файл не загружается, потому что вложение заголовка отсутствует. Почему это происходит из-за вызова командной строки, а не из графического интерфейса, и как мне это исправить?