2010-09-08 39 views
7

Tôi có một ứng dụng web mà tôi đã phát triển với Bộ công cụ Web của Google (GWT), đây là một ứng dụng tiện ích giúp tính toán khi lập kế hoạch triển khai máy chủ cụ thể. Tôi muốn có thể cung cấp ứng dụng này dưới dạng tải xuống trên trang web của tôi cho những người muốn sử dụng ứng dụng nhưng không phải lúc nào cũng có quyền truy cập internet. Trước đây, tôi đã có thể đạt được điều này bằng cách đóng gói tất cả các tệp mà GWT biên dịch (html và js) thành Tập lệnh cài đặt Nullsoft (NSIS) sẽ chỉ trích xuất chúng vào thư mục tạm thời và sau đó yêu cầu Windows mở html chính tệp với bất kỳ trình duyệt nào là mặc định.Triển khai ứng dụng web dưới dạng độc lập thực thi

Gần đây điều này đã cho tôi vấn đề, có vẻ như một số trình duyệt không quan tâm điều này chút nào trong khi những trình duyệt khác có các vấn đề và vấn đề của riêng họ khiến ứng dụng vô dụng.

Ứng dụng này chỉ thực hiện 1 cuộc gọi máy chủ để tìm nạp tệp xml có chứa dữ liệu cấu hình để tính toán như thế nào. Có một thành phần php nhỏ cho phép người dùng lưu và tải cấu hình trước đó nhưng nó không phải là một vấn đề để vô hiệu hóa tính năng này cho việc triển khai thực thi độc lập ngoại tuyến. Vì vậy, câu hỏi của tôi là điều này, là có một khuôn khổ hiện có mà sẽ cho phép tôi để đóng gói ứng dụng của tôi cùng với một máy chủ web nhúng để khi ứng dụng được chạy nó thực sự đang chạy trên một máy chủ web địa phương? Không, tôi có thể sử dụng nó không? Hoặc có một khung công tác sẵn có để nhúng ứng dụng web vào trình duyệt phân phối lại, để khi người dùng cố mở ứng dụng, nó sẽ tự động mở trình duyệt đóng gói, theo cách đó tôi có thể tinh chỉnh trải nghiệm ngoại tuyến để luôn hoạt động như mong muốn với trình duyệt được đóng gói.

Cảm ơn mọi câu trả lời

Trả lời

3

Nếu IE không phải là một trong những trình duyệt gặp sự cố, bạn có thể tạo một ứng dụng .NET nhỏ nhúng điều khiển trình duyệt web và mở nó đến trang mong muốn.

Bạn thậm chí có thể có thể đạt được điều này sử dụng Gecko:

http://code.google.com/p/geckofx/

+1

Cảm ơn câu trả lời. Dựa trên đề nghị của bạn, tôi đã có thể tìm thấy một giải pháp tương tự mà cũng làm cho việc sử dụng Á hậu XUL.Tôi đã quyết định xây dựng một ứng dụng trình duyệt web chuyên dụng đơn giản sử dụng wxWebConnect vì tôi đã sử dụng wxWidgets trong 5 năm qua tại nơi làm việc và khả năng phát hành một bản dựng mac cũng như một cửa sổ rất tuyệt. Tôi sẽ có thể gói trình duyệt chuyên dụng này và thiết lập nó để luôn luôn mở một phiên bản địa phương của trang web (chỉ là html và js) mà sẽ cho phép tôi tập trung vào chỉ một công nghệ trình duyệt để tương thích ngoại tuyến. – snctln

+0

Bạn được chào đón. Vui mừng được giúp đỡ. – webbiedave

1

Tôi đã bình chọn điều này vì đó là điều tôi rất muốn tìm giải pháp. Đây là nghĩa đen chỉ trong tâm trí của tôi một ngày trước. Từ những gì tôi đã tìm ra, việc triển khai một ứng dụng web yêu cầu một số loại máy chủ web độc lập để xử lý các tệp chỉ là không thể. Bạn nói nó chủ yếu bằng JavaScript và bạn sẽ không bận tâm đến chức năng PHP - trong trường hợp này Adobe AIR có thể là một giải pháp đơn giản (cú pháp rất giống với JS, nên chuyển đổi nhanh nếu bạn quen với nó). Về cơ bản mặc dù - từ sự hiểu biết của tôi - bạn sẽ phải chuyển nó.

0

Tôi nghĩ rằng cách đơn giản nhất là sử dụng Google Gears hoặc khả năng lưu trữ HTML5 và thêm chế độ ngoại tuyến để ứng dụng này. Do đó, bạn chỉ cần mở ứng dụng một lần trong trình duyệt và bật truy cập ngoại tuyến. Sau đó, nó chỉ hoạt động đơn giản bằng cách sử dụng các khả năng ngoại tuyến.

http://www.w3.org/TR/offline-webapps/ http://www.devcomments.com/HTML5-Offline-GWT-APP-at246553.htm

0

Tôi giả định rằng bởi vì bạn đang sử dụng gwt, rằng logic của bạn được viết bằng Java?

Chắc chắn bạn có thể đóng gói tất cả các thành phần bạn cần vào thời gian chạy Java chuẩn của một số loại?

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