0
Я просмотрел ряд сообщений/руководств по вызову WS через AJAX, но до сих пор не могу этого сделать. Не то, что окружающая среда имеет значение, но ... Я написал свой Java-класс в Eclipse, я запускаю его на GlassFish, и я могу попасть в конечную точку через soapUI.Call Web Service от AJAX
JAVA Класс:
package com.tester.gf;
import java.util.ArrayList;
import java.util.List;
import javax.jws.WebService;
@WebService
public class GlassFishTestApp {
public List<String> getBrands() {
List<String> brands = new ArrayList<>();
brands.add("Chevrolet");
brands.add("Dodge");
brands.add("Ford");
return brands;
}
}
Endpoint:
localhost:8080/GlassFishTestApp/GlassFishTestAppService?wsdl
Когда я загружаю следующую веб-страницу, я вижу только "Ошибка:" отображается в.
<html>
<head>
<title>SOAP WS Test</title>
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script>
$(document).ready(function() {
$.ajax(
type: 'get',
url: 'http://localhost:8080/GlassFishTestApp/GlassFishTestAppService',
success: function (data) {
$('#results').text(data);
},
error: function (request, status, error) {
$('#results').text('Error: ' + request.responseText);
}
});
});
</script>
</head>
<body>
<div id="results"></div>
</body>
<html>
SoapUI Запрос:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:gf="http://gf.tester.com/">
<soapenv:Header/>
<soapenv:Body>
<gf:getBrands/>
</soapenv:Body>
</soapenv:Envelope>
SoapUI откоса:
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:getBrandsResponse xmlns:ns2="http://gf.tester.com/">
<return>Chevrolet</return>
<return>Dodge</return>
<return>Ford</return>
</ns2:getBrandsResponse>
</S:Body>
</S:Envelope>
Спасибо за любой вклад в это!
Вывести аргумент 'error' в обратном вызове' error' и посмотреть, что он говорит. – adeneo
Также вы используете приложение из 'localhost: 8000'? Если это так, '/ GlassFishTestApp/GlassFishTestAppService' более ясно, что вы делаете запрос на происхождение текущей страницы, а не на запрос перекрестного происхождения. –
Спасибо за ответ. Я просто попробовал следующее и все еще вижу только «Ошибка:» в выводе. $ ('# results'). Текст ('Ошибка:' + ошибка); – RobertFrenette