7

wsadmin スクリプト・クライアントのプログラミングを見ると、jacljythonの両方を使用できることがわかります。

私は 2 つの言語について同じレベルの自信を持っています。

wsadmin プログラミングの特定において、ある言語を使用する利点が他の言語よりも優れているかどうか疑問に思っています。堅牢性、websphere 管理用の例やライブラリの可用性、またはこの種のスクリプトの使用と構築における経験から生じるものなど。

4

2 に答える 2

9

Jython は優先する言語です。

  • Rational Application Developer には、Jyton のツール サポート (Jython エディター、デバッガー、コマンド補完、および IDE 内のテスト サーバーに対してスクリプトをテストする機能) があります。
  • WebSphere 管理コンソールは、コンソール コマンドの支援を提供します。自動化したい場合に備えて、管理コンソールを使用して実行する操作に相当するスクリプトを提供します。この支援は、言語として Jython を使用します。
  • Jacl が wsadmin のデフォルト言語であったとしても、IBM は将来のために Jython を推進し、Jacl スクリプトを Jython に変換するツールを提供しました。特定のリンクにあるこのツールの説明からの引用;

スクリプト言語を選択する場合、Jython は、WebSphere Application Server の管理スクリプト言語としての戦略的方向性です。これは、スクリプト言語の今後の機能拡張が Jython の使用に重点を置いているためです。

于 2012-09-25T08:26:56.913 に答える
8

以前の回答に疑問を呈するつもりはありません。いくつかの事実を追加してください。

Jython は「戦略的な」方向性ですが、Jacl は WAS v4 から存在しています。WAS v8.5 では、これがデフォルトのままです (非推奨です!)。

管理 API は、Jacl を念頭に置いて作成されました。Jython 1 では、サーバー リストをリストとして取得するには、次のようなトリックを実行する必要があります。

for srv in AdminConfig.list('Server').splitlines():
    print srv

一方 Jacl では、次のように簡単に実行できます。

foreach srv [$AdminConfig list Server] {
    puts $srv
}

明らかに、多くの AdminConfig および AdminControl メソッドはリストを改行で区切られた文字列として返します。

IBM は、Jython と Jacl に本当に追い詰められています。彼らはまだ Jython 2.1 を使用しています (最新かつ最高の WAS v8.5 でさえ、2002 年にリリースされました)。Jacl は、コミュニティによって積極的にサポートされていません。API は Jacl フレンドリーで、Jython 用に書き直されていません。多くのクライアント ソリューションは、Jython で行う必要のあるトリックに基づいています。Jacl ベースのソリューションはたくさんあります。IBM でさえ、内部的にはそのレガシーに多くの依存関係を持っています。これが、Jacl が WAS v5.1 以降非推奨であり、依然としてデフォルトである理由である可能性があります。

要するに:

  • 特定のタスク用の小さなスクリプトを作成する場合は、Jacl の方が便利かもしれません (Python と Tcl の両方に慣れていると述べているため)。
  • ただし、WAS インフラストラクチャを管理するためのより大きなフレームワークの開発に関心がある場合は、オブジェクト指向の Jython の方が適している可能性があります。しかし、そのバージョンの Jython にはあまり期待しないでください。非常にバグが多く、あまりにも多くの Python ライブラリを使用することはできません。Python2.1 のサポートがかなり前に廃止されたためです。

結論は、単純な答えではありません (つまり、良い質問をしたということです)。

于 2012-10-16T08:32:40.033 に答える