2011-02-17 3 views
0

GWT에서 앱을 만들고 있습니다. 그것은 대시 보드와 같으며 위젯을 가지고 있습니다.GWT 앱 내에서 타사 위젯을 통합하거나 호출하거나 인터페이스하는 방법은 무엇입니까?

이제 출시 할 때 고객이 자체 GWT 위젯을 만들어 대시 보드 앱에서 사용하려는 유스 케이스가 있습니다.

위젯/모듈의 태그가 내 앱의 gwt.xml 파일에 도착하면 전체 앱을 다시 컴파일하는 데 필요한 소스 코드를 제공 할 수 없으므로이를 이해할 수 없습니다. .

이 대시 보드를 만들기 위해 GWT 이외의 다른 것을 사용할 수 없습니다. 그리고 그들의 위젯은 플래시 힙맵, jquery 위젯/플러그인, 또 다른 GWT 모듈, 백엔드에서 시각화를 렌더링하는 JSP 페이지라고 할 수 있습니다.

지금까지 내 생각은 Iframe 형태의 래퍼 인 앱에서 위젯을 제공하고 (URL을 제공하는) 기본 페이지를 호출하고 내 앱과 위젯을 보낼 수있는 API를 가지고있었습니다 이야기.

하지만 다른/더 나은 방법이 있는지 알고 싶습니다.

답변

0

위젯은 정확하게 Google의 OpenSocial 위젯으로 해결되는 문제입니다. 몇 가지 오픈 소스 구현이 있습니다 : http://shindig.apache.org/은 하나입니다. 이를 앱에 통합 할 수 있습니다. 추가로 보너스는 opensocial 위젯을 제공하는 다른 응용 프로그램 (예 : atlassian jira)의 위젯을 표시 할 수 있다는 것입니다.

+0

답장을 보내 주셔서 감사합니다. 그래서 내가 만든 오픈 소셜 위젯에 고객이 들어갈 수있는 컨테이너 위젯을 제공 할 것을 제안하고 있습니까? – BlueLion

0

응용 프로그램이 폐쇄 된 방식 (사용자 정의 JS/HTML을 페이지에 추가 할 수 있습니까?)에 따라 일부 맞춤 대시 보드 위젯에 대해 기본 Javascript (JSNI) API를 제공 할 수 있습니다. 가장 간단한 해결책은 고객이 위젯의 ​​HTML 컨텐츠를 설정하기 위해 호출 할 수있는 JSNI 메소드가 될 것이라고 생각하고 있습니다. 이 방법을 사용하면 JQuery 위젯, 자신의 GWT 위젯, 심지어 JSP 페이지를 가리키는 IFrame 등 다양한 옵션을 사용할 수 있습니다. 그런 다음 JSNI API 메소드를 추가로 제공하여 귀하의 애플 리케이션/위젯뿐만 아니라 다른 방법으로. 이것은 크로스 도메인 스크립팅 보안 문제를 다룰 필요가 없으므로 IFrame 방법보다 낫습니다.

관련 문제