質問

私は最近使った、Java Web Startアプリケーション.ですからwebブラウザを組み込みjnlpリンクのページでした。のダウンロードしただけます。でへのアクセスをローカルのファイルシステム及び記憶は私の好みの間に再起動します。

私が知りたいのはなぜJava Web Startには用いないkm圏内にあります。配信フォーマットにより複雑なアプリケーションのウェブ?なぜ開発者はしばしば多くの時間を費エネルギー複製デスクトップ機能なhtml/javascriptの場合、デスクトップアプリケーショき届くより簡易Java&Java Web Startには?

知っている一部の企業環境。g銀行は、比較的人気のを届ける複雑な取引への応用のお客様が、なぜな浸透をウェブかどうかはわかりません。

(ための議論をその世界:ダウンロード源が"信頼できる"願い"署名"(ないセキュリティへの懸念)をダウンロード速度が高速負荷時には速や開発者に知らコロジカルフットプリントの数を知っていhtml/js/サポートに対するコミットメント).

役に立ちましたか?

解決

私は理由がアプリのセキュリティも起動時間はないと思います。我々は根本的な原因を見つける前に、シーンの背後にあるものを理解してみましょう。

Javaコントロールパネルは、ユーザーがそれらを上書きするか、デフォルトのブラウザのプロキシ設定を使用できるようにする設定があります。つまり、インフラチームは、JVMは、企業のプロキシ設定が事前にインストールされているWindowsまたはOSインストールイメージをカスタマイズすることができます。だから私は、これはまったく問題ではないと考えています。

Java Web Startは、実際にはJavaコントロールパネルのカスタマイズ可能な設定を持つすべてのアプリケーションをキャッシュします。アプリがキャッシュされると、アプリはちょうど他のアプリと同様に、「インストール」されています。初めての実行が遅くなることがありますが、二回目は、JVMのスマートメモリ割り当て手法による高速になります。だから、起動時間は問題なく、Webサイトの多くの可能性があり(偶数企業内部)今すぐポータルに移行されます。 Webポータルは、通常、ポータル自体が構築され、特定のページ上に展開されたポートレットの種類を予想していないという事実のため、開発目的のために使用されていないライブラリの多くが含まれています。したがって、単一のポータル・ページをダウンロードすることはあるMBまで消費し、5秒以上のページを完了でき;これは、1ページのみで、キャッシュは30%までに役立ちますが、毎回ダウンロードするために必要なHTML / Javascriptを/ CSSコンポーネントの多くが残っています。これで、私は、Java Web Startがここでの利点であると確信しています。

それは限り、サーバーコピーがアップグレードされていないとしてキャッシュされている場合、Java Web Startが再びダウンロードしません。したがって、もし、例えばMSプロジェクトのようなプロジェクト管理ソフトウェアは、純粋にブラウザのフル・ページ・リフレッシュなどのプレゼンテーションのないデータになります(JWSに類似)スマートクライアント、クライアントとサーバ間の情報交換を使用して完成されます。でも、アヤックスの助けを借りて、それは完全にフルページのダウンロードがなくなるわけではありません。また、企業の多くは、Ajaxはまだ未熟および無担保であると考えています。 Ajaxはまだエンタープライズソフトウェア内の開発者の界でホットな話題ではありません理由です。このことを念頭に置いて、JWSは間違いなく、そのようなJWSのアプリがサンドボックス内に展開され、実行される方法として、より多くの利点を持って署名した、とはるかにインタラクティブなGUIを持っているアプリます。

他の利点は、迅速な開発が含まれる(簡単にコードとパフォーマンスでデバッグする)クライアントコンピュータはHTML / Javascriptのような翻訳せずにGUIをレンダリングするため、応答性の高いユーザーインターフェース(PUSH機能を提供するために、彗星のサーバーを必要としない)、および高速化(確認のための実行/ CSS、少ないデータ処理)。

これらすべての後、私は、JWSはそれほど有名ではありませんなぜ、まだ問題に触れていない?

私の意見は、それが意識せずにだ、それはブライアンKnoblauchさんのコメントと同じであるということです。

ITの人々はあまりにもGWT、Webテクノロジー、AjaxのPUSHの誇大広告に惹かれ、そしてすべてのそれらの話題の言葉はその代わりに、実際のクライアントのために働いているものの技術的課題を解決するために異なる技術を使用したりする楽しさへのバイアス作ります。

Citrixのを見てみましょう。私は、Citrixは実際に素晴らしいアイデアだと思います。 Citrix社では、シーンの背後に、独自のアプリファームを構築することができます。あなたがクライアントエクスペリエンスに影響を与えることなく、ために行くことができますアップグレードおよび実装戦略のトンがあります。 Citrixの展開は非常に、簡単に安定して安全です。企業はまだそれを使用しています。しかし、私は、JWSは、Citrixよりも優れていると思います。 JWSのアイデアは、クライアントマシン上ではなく、クライアントマシンは、これらのアプリケーションに自分自身を実行できるサーバファームのトンをホストするアプリケーションを実行することです。これは、会社にたくさんのお金を節約できます! JWSで、開発チームは、まだサーバ側のビジネスロジックとデータを構築することができます。しかし、ウェブ処理ユニットなしとクライアントコンピュータがレンダリング処理をやらせる、それが大幅にネットワークの消費量とサーバーの処理能力の量を減らします。

JWSは素晴らしいアイデアである理由のもう一つの例は、ブラックベリーMDSです。ブラックベリーのアプリは、実際にJavaがtはアプリですJavaScriptからranslated。 BBのMDSのスタジオを使用すると、JavaScriptでGUIのロジックをコーディング、BBアプリGUIを構築するためのGUIツールを使用します。その後、アプリケーションはその後、翻訳され、BESサーバに配備されています。そして、BESサーバは、BBにこれらのアプリを配布します。各BBで、それはGUI描画のみネットワーク機能と薄いのJavaアプリケーションを実行します。アプリがデータを必要とするたびに、それは他のサーバからのサービスを消費するためのWebサービスを介してBESと通信します。これは単なるJWS BBバージョンではないですか?それは非常に成功しています。

最後に、私は、JWSが原因日はそれをアドバタイズする方法の人気がないと思います。 BBは、彼らはクライアントもそれが何であるかを気にしないだろうと信じてどのように良い彼らのBBのJavaアプリを宣伝することはありません。 BBは、アプリケーションを開発するためにMDSを使用する利点をアドバタイズ:高速、コスト削減、ビジネス戻り

ちょうど私、少し長い、2セント...:)

他のヒント

大きな障害を取り除くため、Java Webstartでしょうだいておく必要がJVMの設置でもうダウンロードを開始します。皆様には、ブラウザです。な皆様には、JVM.

編集: って取得したハwebstart体験することができ追加これら二つのポイント:

  • 展開ツールキットスクリプト のモジュール化されたJVMの発売なども行Java1.6u10のJVMの要件は以下の問題から自動的にダウンロードJVMのAPIコアをプログラムボボダウンロードについてご覧いただけます。
  • Web Startにはバギー.中でも、Java1.6のリリースのあるダウンロード全体のアプリ毎時間、別のあるダウンロードいただくことになり失敗したと曖昧にエラーメッセージを表示します。すべてのリスクの大きい、本当にお勧めしに頼るような脆弱なシステム。

私はそれがほとんど意識の欠如が原因だと思います。これは非常にうまく機能します。かなりシームレス。アプリのみをダウンロードし、それが初めての場合、そこにアップグレードをされている、またはエンドユーザーは、キャッシュをクリアした場合。ユーザーがアップグレード!

について、手動で心配する必要はありません本格的なデスクトップアプリケーションを展開するための素晴らしい方法

Webstartを持つ問題は、あなたが実際にWebアプリケーションでURLを入力するとアプリがあるが、でも高速接続とその速い全くないものを「開始」しなければならないこと、です。

また、物事の多くは、WebStartのと間違って行くことができます。たぶん、意図されたユーザは、権限が必要がない場合、またはWebStartののプロキシが間違って設定されている、または何かがJREの依存関係が悪かったのか、最初の場所に設置全くjavaは単純にありません。だから、インターネットでの平均ジョンDoeのそれがすべてではないにpleasentます。

会社のように制御された環境では、多くのケースでは良いと簡単なソリューションです。

私は、数千のユーザーベースの上に、数年前からJWS-デプロイされたアプリケーション上で働いてきたし、その自動アップグレードは、実際には巨大な痛みです。

ユーザーの何らかの理由で数十ごとの更新では、「途中で立ち往生」を取得。それもあなたのコードに到達する前にあなたが得るすべては(運がよけれ場合)「クラスが見つかりません」例外で、またはJWSからの情報価値「を起動することができませんでし」。更新はハーフダウンロードされるように見えます。または、他の言葉で、それはダウンロードして、アトミックアップデートを適用し、同じURLからアプリをリニューアルすることは何も解決しないように、貧しい人々のキャッシュを持っていません。

それは別のURLをJWSキャッシュをクリアするか、提供以外(例えば最後に?dummyparam=jwssucksを追加)を解決する方法はありません。でも、私は、開発者が、時にはそれをヒットし、回避する方法が表示されないようます。

それが動作するときは、

、それが動作します。しかし、あまりにも頻繁に、それはしていませんし、それはあなたとあなたのヘルプデスクのための巨大な痛みです。私は、企業やミッションクリティカルな使用のためにそれをお勧めしません。

非常に大きな問題は、「すぐにプログラムを開始し、その後のチェックやバックグラウンドでの更新ダウンロード」の展開を、アプリケーションの事実上の振る舞いはに収束しているものであるため、それができないこと、すなわちあります。

私たちは積極的にそれを提供する別の技術を探しているこの個人的にとても大きな迷惑を考えてみます。

これは、Webスタートを使用しているときのように見えるこれらの記事から、サーバーについての良い世話をすることが重要です。すべての起動時にアプリケーションをダウンロードする「巨大な痛みは、」サーバから配信間違ったタイムスタンプによって引き起こされることがあります。ここでは、アプリケーションが、サーバが適切ではなくキャッシュを使用するだけで、それを無効にするように設定する必要がありません。バギー開始について、私はあまりわからないが、これはまた、信頼性のない接続によって引き起こされる可能性があることに私には思える。

ウェブ開始の重要な利点は、LinuxでのOpenJDKとうまく動作することです。いくつかの幸せな開発者のクライアントは、Windowsのみを使用しますが、私のクライアントにはありません。

最初の質問で述べた

HTMLやJavaScript、アニメーションボタン、さらにはインタラクティブなテーブルのような小さなタスクを正常に動作軽いアプローチです。 Javaのニッチは、周りはるかに複雑なタスクを思わます。

Java Web Startは、一種Javaアプレットの後継者である、およびアプレットは、新しい千年紀の周りに燃えてしまいました。 しかし、私はまだJavaアプレットがGWTやJavaScript地獄よりもずっといいと思います。

組み込みJavaアプレットの

VS

Java Web Startの

scroll top