Я создал одностраничное приложение, используя Angularjs.Я сталкиваюсь с следующей проблемой при навигации по страницам.
Проблема 1:
Ниже $http
вызов достигает Spring Controller, успешно обработан, и этот метод пружины возвращает bean-компонент.
@RequestMapping(value="/getStatus",method=RequestMethod.GET)
После получения ответа со стороны сервера происходит переход к блоку ошибок в методе JS
Не удалось загрузить ресурс: сервер ответил сстатус 404 (не найдено) -> / getStatus
Почему после успешной обработки происходит переход к блоку ошибок?
Проблема 2:
Несмотря на то, что я перемещаюсь по странице из блока ошибок, используя state.go
, Acknowledgement.jsp
отображается и {{status}}
-> печатается как пустой
Я борюсь с AngularJs & UI router в течение 2 дней.Пожалуйста, помогите
Progress.jsp
<div ng-controller="myctrl as mydata" ng-init="getStatus()">
// progress icon here
</div>
MyCtrl.js
$scope.getStatus = function() {
$http({
url: CONTEXT_PATH + 'getStatus',
method: "GET",
headers: {'Content-Type': 'application/x-www-form-urlencoded'}
}).success(function (data, status, headers, config) {
console.log("success block : "+status);
$scope.paymentStatus = data.epaymentStatus;
$state.go("Acknowledgement");
}).error(function (data, status, headers, config) {
console.log("failure block : "+status);
$scope.paymentStatus = data.epaymentStatus;
$state.go("Acknowledgement");
});
};
Acknowledgement.jsp
<script type="text/javascript">
console.log("Status :: "+status);
// Here status printing as SUCCESS
</script>
<div ng-controller="myctrl as mydata" id="RESPONSE">
{{status}} --> printing empty
<div class="row row-space" ng-if="status == 'SUCCESS'">
</div>
</div>
ProcessController.java
@RequestMapping(value="/getStatus",method=RequestMethod.GET)
public ProcessBean getStatus(HttpServletRequest
httpRequest, HttpServletResponse httpResponse) {
ProcessBean processBean = new ProcessBean();
try {
// Business process takes place here
processBean.setStatus("SUCCESS");
httpRequest.setAttribute("processStatus", "S");
} catch(Exception e) {
processBean.setStatus("FAILURE");
httpRequest.setAttribute("processStatus", "S");
e.printStackTrace();
}
return processBean;
}