freemarker를 사용하여 파일을 생성하고 있는데 templateExeptionHandler 부분에 어려움을 겪고 있습니다. 데이터 모델에없는 경우 템플릿에 변수를 바꿀 필요가 없습니다. 나는이 변수들을 같은 값을 가진 데이터 모델 안에 두는 것을 좋아하지 않는다. 그리고 나는 'escape' variables in the template itself을 할 수 있다는 것을 알고 있지만, 나는 그 솔루션을 정말로 좋아하지 않는다. 다음과 같이Freemarker가 누락 된 변수를 무시합니다.
MyTemplateExceptionHandler 보인다 :
class MyTemplateExceptionHandler implements TemplateExceptionHandler {
public void handleTemplateException(TemplateException te, Environment env, Writer out) throws TemplateException {
try {
out.write("${" + te.getBlamedExpressionString() + "}");
} catch (IOException e) {
throw new TemplateException("Failed to print error message. Cause: " + e, env);
}
}
}
문제는 그 난의 형태로 변수를 구문 분석하고있어 일단} {
$ workflow.input.myVariable을
내 생성 된 파일의 결과는 sh입니다. 이 변수의 첫 부분 때문에 :
$ {워크 플로우} 내가 다시 전체 변수를 얻을 내 생성 된 파일에 반환 할 수있는 방법에
어떤 생각?