среда, 18 июня 2008 г.

оле!!!

Сборная - молодцы. Ещё бы моменты так не растрачивали, были бы совсем красавцы.

суббота, 7 июня 2008 г.

grails 1.0.3

Вышел grails 1.0.3. При попытке заапгрейдтить проект с 1.0.2 до 1.0.3 наткнулся на то, что предыдущий конфиг не совместим с новыми скриптом Package и некоторыми другими.

Заборол конечно. Но осадок остался.

среда, 4 июня 2008 г.

speedy racer

Посмотрел Спиди гоншика. Шёл на этот фильм с опаской, но мои опасения были развеяны за первые 15 минут фильма.

Очень хорошее кино.

grails: работа с шаблонами

Вот здесь описан способ отправки почтовых сообщений с html форматированием. Всё бы хорошо, но использование groovy шаблонов вместо обычных gsp для задания отображения почтового сообщени я считаю неверным.

Поэтому я чуть-чуть покапался во внутренностях grails и вот результат:

import org.codehaus.groovy.grails.web.pages.GroovyPagesTemplateEngine
import org.codehaus.groovy.grails.web.pages.GroovyPageTemplate
import grails.util.GrailsWebUtil
import org.springframework.web.context.request.RequestContextHolder

class TemplateService {
GroovyPagesTemplateEngine groovyPagesTemplateEngine

def createHtml(String templateName, Map model) {
if(!RequestContextHolder.getRequestAttributes())
GrailsWebUtil.bindMockWebRequest()

GroovyPageTemplate tpl = groovyPagesTemplateEngine.createTemplate(templateName)
StringWriter out = new StringWriter()
tpl.make(model).writeTo(out)

return out.toString()
}
}


Хочу отметить, что очень большой недостаток доступной документации по grails заключается в отсутствии описания контекстных бинов, которые grails инициализирует и использует. В данном случае такой бин - groovyPagesTemplateEngine.