我从JSP页面中的JavaScript(AngularJS)中的会话范围中读取了一个User对象(attrs:id,userName)。它是成功的,因为它出现在控制台中。但是当我想访问它的属性时,浏览器会说这些属性是未定义的。
JS代码:
<script type="text/javascript">
var app = angular.module( "appUserOrders", [] );
app.controller( "ctrlUserOrders",
function ($scope, $http )
{
$scope.user = '<%= session.getAttribute("User") %>';
console.log( $scope.user );
console.log( $scope.user.id );
console.log( $scope.user.userName );
}
);
</script>
控制台内容:
User(id=1111, userName=TestUserName)
userorders.html:29 undefined
userorders.html:30 undefined
如何访问其属性值,因为user.id
调用需要REST
作为@PathVariable
。为什么不起作用? session.getAttribute( key )
回馈了什么?
提前感谢您的回复!
答案 0 :(得分:0)
在有用的评论之后,我在名为User
的{{1}}类中创建了一个方法,并将其结果放入会话中。它工作正常,但我改变了主意,因为在会话范围内没有JSON字符串的位置。因此,我从toJSONString()
页面userOrders.jsp
HTTP
方法GET
发送userID作为模型属性,而我根本不使用controller
。
控制器方法:
session
JavaScript的:
@RequestMapping( value = "/userorders", method = RequestMethod.GET )
public String userOrdersHandler_GET( Model model_ )
{
// Constant value just for test cases
model_.addAttribute( "userID", 1111 );
return "ordering/userorders";
}
感谢您的回复!