I am sending request through soap using php curl getting java Exception. When I request for response I am getting error. I tried a lot at my end but problem is not solve.
$soap_request = "<?xml version=\"1.0\"?>";
$soap_request .= "<soap:Envelope xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\">\n";
$soap_request .= " <soap:Body>\n";
$soap_request .= " <RevodocLead xmlns='http://localhost/'>\n";
$soap_request .= " <inode>\n";
$soap_request .= " <version>1.0</version>\n";
$soap_request .= " <sourceuserid>[email protected]</sourceuserid>\n";
$soap_request .= " <sourceid>18641254455</sourceid>\n";
$soap_request .= " <dealercode>1458445284</dealercode>\n";
$soap_request .= " <created>18-12-2015 13:45EST</created>\n";
$soap_request .= " <browser>Android Browser</browser>\n";
$soap_request .= " <os>Macintosh</os>\n";
$soap_request .= " <agent>[email protected]</agent>\n";
$soap_request .= " <product>mortgage-renewal</product>\n";
$soap_request .= " <name>success</name>\n";
$soap_request .= " <address>success</address>\n";
$soap_request .= " <email>success</email>\n";
$soap_request .= " <phone>success</phone>\n";
$soap_request .= " <propertyvalue>325000</propertyvalue>\n";
$soap_request .= " <mortgage>300000</mortgage>\n";
$soap_request .= " <referralcode>F3S2A2</referralcode>\n";
$soap_request .= " <note>value</note>\n";
$soap_request .= " <futurecontact>yes</futurecontact>\n";
$soap_request .= " </inode>\n";
$soap_request .= " </RevodocLead>\n";
$soap_request .= " </soap:Body>\n";
$soap_request .= "</soap:Envelope>";
$header = array(
"Content-type: text/xml;charset=\"utf-8\"",
"Accept: text/xml",
"Cache-Control: no-cache",
"Pragma: no-cache",
"SOAPAction: myactionMethod",
"Content-length: ".strlen($soap_request),
);
$soap_do = curl_init();
curl_setopt($soap_do, CURLOPT_URL, $url );
curl_setopt($soap_do, CURLOPT_HEADER, false);
curl_setopt($soap_do, CURLOPT_CONNECTTIMEOUT, 100);
curl_setopt($soap_do, CURLOPT_TIMEOUT, 100);
curl_setopt($soap_do, CURLOPT_RETURNTRANSFER, true );
curl_setopt($soap_do, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($soap_do, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($soap_do, CURLOPT_POST, true );
curl_setopt($soap_do, CURLOPT_POSTFIELDS, $soap_request);
curl_setopt($soap_do, CURLOPT_HTTPHEADER, $header);
if(curl_exec($soap_do) === false) {
$err = 'Curl error: ' . curl_error($soap_do);
curl_close($soap_do);
print $err;
} else {
$result = curl_exec($soap_do);
echo '<pre>';
print_r($result);
curl_close($soap_do);
//print 'Operation completed without any errors';
}
I am getting error
soap:Serverjava.lang.ClassCastException: java.lang.String cannot be cast to javax.xml.bind.JAXBElement
$headerand$soap_requestto your question, since the error states quite clearly that there is some unexpected string where an xml element was expected