2010-02-03 7 views
4

freemarker 템플릿에 smooks를 사용하여 들어오는 XML 파일의 내용을 표시 할 수 있지만 내 프로그램의 실행을 식별하기 위해 Current Date & 시간을 로컬 시스템에 추가하려고합니다. 내가 들어오는 XML에 항목을하지 않고 XML에 현재 날짜 & 시간을 추가하는 방법smooks의 Freemarker 템플릿 섹션에 현재 날짜와 시간을 표시하는 방법은 무엇입니까?

<ftl:freemarker applyOnElement="CreditCard"> 
    <ftl:template><!--  <BalanceInquiryRequest> 
     <TransactionId>${BalanceInquiryRequest.TransactionId}</<TransactionId> 
     <ConfigurationId>${BalanceInquiryRequest.ConfigurationId}</ConfigurationId> 
     <CardNumberr>${.vars["GiftCard"].CardNumber}</CardNumberr> 
     <ExpirationDate>${.vars["GiftCard"].ExpirationDate}</ExpirationDate> 
     <SecurityCode>${.vars["GiftCard"].SecurityCode}</SecurityCode> 
     ***************************** 
Here I want to display the current Date & time 
    </BalanceInquiryRequest> 
    --></ftl:template> 
</ftl:freemarker> 

당신은 말해 줄 수.

답변

3

대답은 here 인 것 같습니다. 짧은 대답, 당신은 Java에서 전달해야합니다.

+9

너무 이상 ... 2.3.17는 특별한 변수'.now'를 도입하지 않습니다 .. 순간에 오래된 프리 마커와 함께 작동하는 것을 대신 이런 짓을하고있다. – ddekany

0

Freemarker와 같은 XML은 객체가 아닌 템플릿 엔진이기 때문에 사용할 수 없습니다. new Date();

0

Smooks 구성 파일에 짧은 그루비 스크립트를 작성하여 beancontext에 오늘 날짜가있는 bean을 채울 수 있습니다. 그런 다음 freemarker 스크립트는 해당 빈의 값을 사용할 수 있습니다.

편집 : 현재 그루비와 Smooks에 대한 자세한 내용을보실 수 있습니다 : http://www.smooks.org/mediawiki/index.php?title=V1.3:Smooks_v1.3_User_Guide#Groovy_Scripting

당신은 아마 http://www.milyn.org/javadoc/v1.2/smooks-cartridges/javabean/org/milyn/javabean/repository/BeanRepository.html에서 방법을 사용하여 비슷한 작업을 수행 할

:

<g:groovy executeOnElement="xxx"> 
    <g:script> 
    <!-- 
    addBean("date", new Date()); 
    --> 
    </g:script> 
</g:groovy> 

그런 다음에 액세스 할 수 있어야합니다 프리메이커에서 "날짜"콩.

6

사용 부탁해, 그들은, 얼마 전에 자바

0

당신은 부탁해없이 그것을 할 수 있습니다 필요 그것을 도입되지 그리고 당신은 새로운 일에 통과 할 필요가 없습니다. 나는

<#assign dateNow = Static["java.util.Calendar"].getInstance().getTime()?datetime /> 
관련 문제