Граальс Получить сеанс и управление в классе обслуживания

У меня проблема с сессией Grails. Я думал о том, чтобы иметь класс услуг для мою обработку сеансов. Поэтому я создал класс под названием «SESSIONSERVICE» (под Grails-App / Services / Grails /).

class SessionService {
    static transactional = true
    GrailsWebRequest request = RequestContextHolder.currentRequestAttributes()
    GrailsHttpSession session = request.session

    def setTestvar(String value) {
        if (session != null)
            session.setAttribute("sTeststring", value)
    }

    def getTestvar() {
        if (session != null)
            session.getAttribute("sTeststring")
    }
}

Проблема в том, что я получаю NullPointer-исключение: « метод бросил исключение« Java.lang.NullPointerexception ». Не удается оценить org.codehaus.grovy.grails.web.servlet.mvc.grailshttpsession.tostring () ».

Использование моего обслуживания класса E.G. В контроллере:

class SampleController {

    SessionService sessionService

    def selectAnything = {

        sessionService.setTestvar("test-value")
        render(view: "testview")
    }
}

Что я здесь не так? Это правильный путь? Или мне нужно установить «Session = Request.Session» в каждом методе?

Надеюсь получить помощь от вас.

Большое спасибо заранее.

ура,

Marco

15
задан grailsInvas0r 15 August 2011 в 07:36
поделиться