xhrPost, кажется, изменяет URL, что приводит к 404 или 405?
Кажется, что xhrPost изменяет URL-адрес, что приводит к 404 или 405. Это из пользовательского виджета и пытается перейти к службе REST на сервере WebSphere Liberty.
Служба отдыха правильно реагирует при использовании RESTClient и создании запроса вручную.
Я использую var jsonData = JSON.stringify(domForm.toObject("TaskTemplate")); поэтому я могу проверить правильность данных и отправить данные в виде строки: data: jsonData,
URL-адрес жестко закодирован в форме, и в настоящее время не используется подстановка:
<form id="TaskTemplate" name="TaskTemplate"
data-dojo-attach-point="taskTemplateNode"
method="POST"
action="http://localhost:9080/test2/rm/tasks/64/update">
У меня также есть GET с URL " http://localhost:9080/test2/rm/tasks/64/", который работает нормально. Кажется, связано с PUT или POST...
Когда я делаю xhrPost, я получаю следующую ошибку: "NetworkError: 404 Not Found - http://localhost:9080/test2/undefined"
поскольку виден "undefined", это похоже на то, что xhrPost выполняет некоторую подстановку в URL-адресе жесткого кода... Я использую версию dojo 1.9.2-20140219-IBM, которая поставляется с Rational Application Developer. Я пробовал и xhrPost и xhrPut с одинаковыми результатами.
Вот метод, который вызывается при нажатии кнопки:
applySubmit: function() {
console.log("inside applySubmit");
var jsonData = JSON.stringify(domForm.toObject("TaskTemplate"));
console.log(jsonData);
var xhrArgs = {
// url: "http://localhost:9080/test2/rm/tasks/64/update",
data: jsonData,
preventCache: true,
timeout: 10000,
handleAs: "text",
contentType: "application/json",
load: function(data) {
console.debug("applySubmit success:" + data);
},
error: function(data) {
console.debug("applySubmit error:");
}
};
console.log("doing dojo.xhrPxxx(xhrArgs);");
var deferred = dojo.xhrPost(xhrArgs); // any need to save local var and exit?
}
В журналах сервера я вижу [ПРЕДУПРЕЖДЕНИЕ] SRVE0190E: Файл не найден: /undefined, и он поступает из веб-контейнера (имеет смысл, учитывая сообщение об ошибке, приведенное выше). Таким образом, это означает, что он не связан с моей службой отдыха, никогда не получит к этому.
Это действительно начинает задерживать наш проект, поэтому любые идеи о том, почему это может происходить, будут с благодарностью!