Java CURL中出现意外的文件结尾异常,但POSTMAN和SOAP UI工作正常
我正在尝试通过PHP应用程序中的代理服务器与SOAP服务器通信。 在PHP应用程序中,所有请求似乎都很好。其中一个请求返回以下异常。如果我在soapui和postman中测试相同的请求,则似乎可以 我使用POSTMAN的“Generate Code Snippets”函数在PHP中创建CURL请求Java CURL中出现意外的文件结尾异常,但POSTMAN和SOAP UI工作正常,java,php,curl,soap,postman,Java,Php,Curl,Soap,Postman,我正在尝试通过PHP应用程序中的代理服务器与SOAP服务器通信。 在PHP应用程序中,所有请求似乎都很好。其中一个请求返回以下异常。如果我在soapui和postman中测试相同的请求,则似乎可以 我使用POSTMAN的“Generate Code Snippets”函数在PHP中创建CURL请求 $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => "********",
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "********",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:ws=\"http://ws.s5.mediasat.de/\"> "
. "<soapenv:Header> <wsse:Security xmlns:wsse=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd\" xmlns:wsu=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd\" soapenv:mustUnderstand=\"1\"> "
. "<wsse:UsernameToken> <wsse:Username>******</wsse:Username> <wsse:Password Type=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText\">********</wsse:Password> </wsse:UsernameToken> </wsse:Security> </soapenv:Header> "
. "<soapenv:Body> <ws:putCall> <transaction>createIncident</transaction> <transactionID /> "
. "<transactionSender>Submit Request</transactionSender> <caseDataModel> <senderId>19</senderId> "
. "<ticketNumberSender>1234</ticketNumberSender> <ticketNumber /> <ticketTypeId>106</ticketTypeId> "
. "<createTypeId>701</createTypeId> <title>Issue with priority (B001APP05M)</title> <description /> "
. "<serviceId>I002S5001P</serviceId> <categoryId>128</categoryId> <serviceRecipientId>18176</serviceRecipientId> "
. "<serviceLocationSAPCode>V135</serviceLocationSAPCode> <priorityId>102</priorityId> <assignmentUserId>458</assignmentUserId> "
. "<CIName /> <timestampStart /> <timestampEnd /> <informationText /> <solutionText /> <solutionCode /> <closureText /> "
. "<closureCode /> <cancellationText /> <cancellationCode /> <errorText /> <errorCode /> <nameSenderText /> <statusSenderText /> "
. "<timestampSender /> <attachmentFilename /> <attachmentData /> </caseDataModel> </ws:putCall> </soapenv:Body> </soapenv:Envelope> ",
CURLOPT_HTTPHEADER => array(
"accept-charset: utf-8",
"accept-encoding: utf-8",
"cache-control: no-cache",
"connection: Keep-Alive",
"content-type: text/xml",
"soapaction: \"/IntS5/S5WS\""
),
));
$result = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
return $result;
你知道为什么服务器不喜欢我的请求正文吗?这里需要Java标记吗?如果没有,您可以删除它吗?因为我得到了一个JAVA异常,所以它是必要的,以便一些JAVA开发人员可以帮助我?我不知道java服务器在什么情况下会返回此错误。
来自服务器的意外文件结尾
意味着远程服务器在不发送响应的情况下接受并关闭了连接。可能与代理服务器有关。不过,我对这些都不是专家。是的,代理服务器不喜欢我的请求,并在不向我发送响应的情况下关闭连接。这可能与请求正文有关。这里是否需要Java标记?如果没有,您可以删除它吗?因为我得到了一个JAVA异常,所以它是必要的,以便一些JAVA开发人员可以帮助我?我不知道java服务器在什么情况下会返回此错误。来自服务器的意外文件结尾
意味着远程服务器在不发送响应的情况下接受并关闭了连接。可能与代理服务器有关。不过,我对这些都不是专家。是的,代理服务器不喜欢我的请求,并在不向我发送响应的情况下关闭连接。这可能与请求正文有关。
Error sending request to server ******* from interface null Error=java.net.SocketException: Unexpected end of file from server
at sun.net.www.http.HttpClient.parseHTTPHeader(Unknown Source)
at sun.net.www.http.HttpClient.parseHTTP(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.expect100Continue(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(Unknown Source)
at com.tibco.cep.httpclient.standard.HttpClient.doRequest(HttpClient.java:339)
at com.tibco.cep.httpclient.kernel.BaseHttpClient.process(BaseHttpClient.java:188)
at com.tibco.cep.httpclient.kernel.HttpWorker.run(HttpWorker.java:62)
at java.lang.Thread.run(Unknown Source)