2012-04-20 5 views
0
Map<String, String> model = new HashMap<String, String>(); 
model.put("A", "1"); 
model.put("b", "2"); 
model.put("c", "3"); 
try{ 
content.append(FreeMarkerTemplateUtils.processTemplateIntoString(configuration.getTemplate(ftlName), model)); 
... 

및 FTL 파일은 다음과 같다 : 나도 같은 얻을자바, 정의되지 않은 매개 변수

Expression model is undefined on line 6, column 3 in vslEmail.ftl. 
The problematic instruction: 
---------- 
==> ${model["A"]} [on line 6, column 1 in vslEmail.ftl] 
---------- 

Java backtrace for programmers: 
---------- 
freemarker.core.InvalidReferenceException: Expression model is undefined on line 6, column 3 in vslEmail.ftl. 

:

<html><head></head><body> 
${model["A"]} 

<#list model?keys as prop> 
    ${model[prop]} 
</#list> 
</body> 
</html> 

Hwoever 나는 오류를 얻고있다 제거하면 오류가 발생합니다. 목록 지시문 만 사용하여 model에 액세스하려고 시도하면 ...

답변

1

<html><head></head><body> 
${A} 
</body> 
</html> 

또는 그 대신 통해 문자열 및 루프가 아닌 "최고"모델 객체의 해시 맵을 : 당신이 FTL에서이 작업을 수행해야 할 것처럼 경우 다른 사람이 바보 당황한다.