2009-05-02 22 views
5

Có thể tạo widget/portlet trong GWT có thể được nạp động và thêm vào một ứng dụng web GWT, và nơi mà các widget GWT có thể nằm trong một tệp tin chiến tranh riêng biệt?Có thể tạo các widget/portlet động có thể cắm được trong các tệp chiến tranh riêng biệt không?

Để làm rõ câu hỏi của mình: Cổng tương thích JSR168/JSR286 có thể tạo các portlet trong các dự án riêng biệt (tệp chiến tranh) và tự động tải chúng vào trang cổng thông tin. Giả sử bạn muốn làm một cái gì đó tương tự trong một ứng dụng GWT. Giả sử chúng ta đã tạo một cổng thông tin chỉ sử dụng GWT cho GUI (không có JSP hoặc giống nhau) và chúng tôi muốn tự động thêm một "portlet" được viết bằng GWT thuần túy. Điều đó có thể không?

Tôi có thể tưởng tượng rằng nó có thể được thực hiện bằng cách sử dụng IFrame, nhưng nó sẽ đẹp hơn nếu một widget/portlet GWT hoàn toàn là một phần của ứng dụng cổng thông tin máy chủ GWT và chia sẻ các style sheets và các tài nguyên khác.

Trả lời

2

Tôi tưởng tượng rằng một "GWT portlet" không là gì hơn một widget mà bạn tự viết (và có thể thực hiện một giao diện chung).

Phần cứng là tự động cho phép ứng dụng gwt biên dịch sẵn bao gồm thành phần gwt khác (portlet trong trường hợp này) mà không cần biên dịch lại với nguồn (đó là câu hỏi có vẻ ngụ ý).

+0

Cảm ơn bạn. Phần cuối cùng "bao gồm động" là chính xác những gì tôi muốn. Giả sử bạn có một ứng dụng web phù hợp với 80% nhu cầu của người dùng, nhưng 20% ​​người dùng có nhu cầu đặc biệt. Sau đó, nó sẽ được tốt đẹp để tự động bao gồm các thành phần tùy chỉnh cho họ chỉ. – Roy

+1

rằng, tại thời điểm này, không thể được thực hiện (ít nhất, không phải là kiến ​​thức của tôi - tôi rất muốn được sửa chữa!). GWT là một điều thời gian biên dịch, nơi bạn sẽ cần phải có mã nguồn cho toàn bộ mô đun GWT và các phụ thuộc để biên dịch hoạt động. điều bạn muốn là, tôi cho rằng, để cho phép người dùng tải lên plugin/thứ gì đó và trở thành một phần của ứng dụng. Nó không phải là không thể làm điều đó, chỉ mất rất nhiều công việc, và bạn sẽ không thực sự tận dụng lợi thế của GWT ở tất cả (về cơ bản, bạn sẽ được viết một container "portlet" chính mình). – Chii

1

Tôi cũng đã xem xét điều này, đặc biệt là sau khi xem bản trình diễn Wave. Từ những gì tôi có thể nói, cách tiếp cận nhóm sóng đã thực hiện là sử dụng api của Google Gadget hoặc một biến thể của api Tiện ích. Google cũng có hướng dẫn về cách viết một tiện ích trong GWT. Tôi sẽ hình ảnh bạn sẽ sử dụng một api dựa trên sự kiện nơi các đối tượng JSO được truyền qua giữa Tiện ích và ứng dụng GWT. Lưu ý rằng điều này cũng có thể giới thiệu các vấn đề XSS nếu từ các miền khác nhau. Tôi nghĩ về điều này như akin toloading một swf động trong flash. Phương thức sự kiện tương tự như làm việc một cách an toàn với swf của trang web được nạp động.

0

Tôi rất mới trong GWT, nhưng dựa trên những gì tôi đã đọc, tôi có thể cho bạn biết rằng bạn phải tuân theo kiến ​​trúc MVP với Trình điều khiển ứng dụng "cắm" và "phát" động những gì bạn muốn gửi sử dụng siêu dữ liệu phải đến từ lớp mô hình ... Nội dung nào đó giống như "siêu ứng dụng"

Các vấn đề liên quan