2015-08-28 89 views
4

在我的控制器我有这样的代码:如何访问JSP脚本中的模型属性字段?

List<FeesReceiptIntegrationModel> FRIList = feesReceiptIntegrationService.listInstituteWiseCollectionSummary(model, request); 

model.addAttribute("FRIList", FRIList); 

我要访问此FRIList及其在JSP页面中的Scriptlet领域。 我试过这样的:

String fcash = request.getParameter(FRIList.cashamount); 

但它不起作用。

List myMap = (ArrayList) request.getAttribute("FRIList.cashamount"); 

我不想通过JSTL标签访问它,但我只想在scriptlet中访问它。

有谁能告诉我这是如何实现的吗?

+0

你把型号列表 “FRIList”,这样你就可以在这样的JSP得到它:'名单MYMAP =(ArrayList中) request.getAttribute(“FRIList”);'而不是做你想要的这个列表。 – glw

+0

我是这样访问List myMap =(ArrayList)request.getAttribute(“FRIList.cashamount”); System.out.println(“ooooo oo”+ myMap);但直到现在我无法访问..... myMap显示空值.. –

+0

@ManojSharma我想你使用'spring'框架。您是否在前端使用了任何视图模板? –

回答

0

你不能按照原样打印列表中的值,你需要在从model获得列表后重复它们。至于说,

我不想通过JSTL标签来访问,但我想只有在小脚本

<% List<FeesReceiptIntegrationModel > myMap = (ArrayList<FeesReceiptIntegrationModel >) request.getAttribute("FRIList"); 
    for(FeesReceiptIntegrationModel obj : myMap ){ 
    obj.getcashamount(); // your getter method here 
    } 
%> 

访问此但不建议使用scriptlets,请看看How to avoid Java code in JSP files?

+0

它给编译时错误对象不能转换为FeesReceiptIntegrationModel .. –

+0

检查我的更新,你需要将对象转换为bean类 –

1

使用scriplets是一个坏主意。尽量避免在JSP页面中使用Java代码。

您可以使用JSTL c:forEach你的目的

简单的例子

<c:forEach items="${FRIList}" begin="0" end="1" var="test"> 
${test.cashamount} 
</c:forEach> 
+0

我知道但我无法解决我的问题没有使用scriptlet ..你有任何想法...? –

+0

@ManojSharma迭代列表 – SpringLearner

+0

给我举例请。 –