2008-10-26 1 views
3

내 응용 프로그램은 논리적으로 내 Grails 도메인 객체와 컨트롤러를 포함하는 서버로 나뉩니다. 클라이언트, 모든 UI 페이지를 빌드하는 Ext GWT 클래스가있는 곳.Grails에서 Ext GWT (GXT)를 사용하여 Domain 객체를 공유하는 방법은 무엇입니까?

UI 요청의 경우 예를 들어 도메인 객체 목록을 JSON 구조로 반환하는 컨트롤러 메소드에 AJAX 호출을 사용하고 있습니다.

DRY 원칙에 따라 도메인 데이터를 서버의 JSON 문자열로 "직렬화"한 다음 클라이언트에서 다른 구조로 직렬화를 해제하고 싶습니다. 도메인을 활용하고 싶습니다. 개체가 이미 있습니다.이 작업을 수행하면 새 필드를 추가, 변경 또는 제거 할 때 여러 위치를 변경할 필요가 없습니다.

질문 : 그것은 좋은 방법입니까?

그렇다면 "클라이언트 측"Ext GWT Java 클래스에서 .groovy 도메인 객체를 사용할 수있는 가장 좋은 방법은 무엇입니까?

아니요, 그렇지 않다면 왜 그 대신 나에게 조언을 해주겠습니까?

+0

나는 똑같은 일을하기 때문에 당신의 질문에 투표했습니다. –

답변

1

좋은 방법은 없습니다. GWT 직렬화가 가능한 Java 객체가 필요합니다. 내가 볼 수있는 유일한 해결책은 grails 도메인 객체의 주석을 사용하여 데이터 전송 객체를 자동 생성하는 방법을 플러그인을 작성하거나 GWT 플러그인에 추가하는 것입니다.

비슷한 방법으로 gwt 플러그인의 RPCAsync 인터페이스를 자동 생성합니다. gwt 플러그인 디렉토리의 133 페이지에있는 GwtGrailsPlugin.groovy를 참조하십시오.

데이터 연결 파일을 생성하기 위해 코드를 삽입 할 수 있습니다 (또는 파일을 직접 수정하는 것이 더 쉽습니다). 추가 이점은 개인 데이터 (예 : 암호!)가 전송되지 않도록 데이터 전송 오브젝트를 세분화 할 수 있다는 것입니다.

+0

감사합니다. Chii, 멋진 아이디어. 나는 그것을 들여다 볼 것이다! – kolrie

+0

시도하는 경우 다른 사람들이 볼 수 있도록 수정 사항을 게시 하시겠습니까? 도움이 될 수 있습니다. 나는 실제로 내 프로젝트 중 하나에서 이것을 생각하고있다. - 나는 아직 그것에 도달하지 않았다! 내가 어딘가에 게시 할 때 - 아마 grails gwt plugin jira에있을 것이다. – Chii

0

또는 고객 측에 json 또는 xml로 데이터를 보낼 수 있습니다. 서버 측에 REST API를 만들 수 있습니다.

관련 문제