내가 도메인 개체 등 다양한 유형의 보고서를 저장하는 웹 응용 프로그램을 만들고있어 예상대로 작동하지 않는, 그래서 이름 데이터가 포함 된 도메인 개체 HeadOfHousehold
를 가지고 있고, 다른 도메인에 대한 참조는 같은 객체 reports
, addresses
및 기타 부양 가족. 나는 최근에 열람/생성 된 목록을 작성하려고합니다. HeadOfHousehold
객체. 여러 번 Google 검색을하고 설명서를 뒤져 보면 서비스가 적절한 해결책으로 보입니다. 그래서 ClientListService
생성 : 나는 다음 내 다양한 컨트롤러에 참조 할 수 있다고 생각Grails의 세션 범위는
@Transactional
class ClientListService {
static scope = "session"
String message // right now I'll be happy to just see the same message across
// pages I can add a list and manipulate it later.
}
를, 그리고 이런 식으로 뭔가 지속될 것 :
def clientListService
def index(){
hasSearched = false
clientListService = new ClientListService(message: "Hello")
[errorMessage: params.errorMessage, clients:clientListService]
}
나중에 컨트롤러에 사용할 수 있어야합니다 :
를 나는이 메시지를받을 때class HeadOfHouseHoldController {
def clientListService
def index() {
[customer: HeadOfHousehold.get(params.id), clients: clientListService]
}//...
는 그러나, 객체가 null의 경우로 나타납니다. 나는 (내가 그렇게 특별한 아무것도 아니에요)가 제대로 세션을 정의하고 있지 않다 만약 내가 어떻게 세션 범위의 작품을 오해하고있어 경우
***************${clients?.message}********************
그래서 내가 모르는 내의 index.gsp에서 , 또는 다른 것. 개체를 정의한 원래 페이지에 적절한 메시지가 표시되지만 이후 페이지에는 표시되지 않습니다.
또한,이 이것에 대해 갈 수있는 적절한 방법이 있는지 확실하지 않습니다; 지금 당장 제가 필요로하는 것은의 목록입니다 (다른 페이지의 목록에 추가 할 수 있습니다).하지만 다른 논리 및 항목을 그러한 클래스에 추가 할 수 있습니다.
가 맞나요? 또한이 작업을 통해 목록을 'session' 개체에 직접 바인딩하고 필요한 방식으로 액세스 할 수 있음을 발견했습니다. 한 기술이 다른 기술보다 선호됩니까? –