2011-12-16 4 views
3

PDF 파일 렌더링을위한 HTML 템플릿을 수정 중입니다. 문제는 내가 사용하고있는 새 코드가 하나의 템플릿에서 작동하지만 다른 라이브러리에서는 CConvertException을 던졌습니다.재생시 CConvertException! 프레임 워크

Oops: CConvertException An unexpected error occured caused by exception CConvertException: ERROR: An unhandled exception occured: ERROR: An Exception occured while reconstructing the pdf document: ERROR: An unhandled exception occured: null

새로운 코드는 다음, 다른로 String 변환하는 새로운 자바 확장을 사용하는 것 같이 :

#{if person?.name != null} ${person?.name.getInitials().toString()} #{/if}

콘솔은 다음과 같은 오류 이외의 힌트 나에게 제공하지 않습니다

어떤 이유로이 정확한 코드는 하나의 템플릿을 손상하지만 다른 템플릿에서는 문제없이 작동합니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

+0

당신이 템플릿에 대한 좀 더 많은 정보를 줄 수 있을까요? 항상 동일한 템플릿이 실패합니까? 'null'은 변수에 문제가 있음을 의미합니다. – maartencls

답변

0

이것이 원인인지는 모르겠지만 안전한 탐색 연산자 ?.은 이상한 곳입니다. 그리고 getInitials()은 자동으로 String을 반환하지 않겠습니까?

왜 그냥 (주변 if 문없이) 쓰기 :

// Returns the name or an empty String if name or person is null. 
${person?.name?.getInitials() ?: ""}