2011-07-21 3 views
0

私は、WebSphere Application Server 7.0を実行するためにサポート/それはWebpshere 7.下(JDK 1.6に準拠していない)Websphere 7でenvironementをJDK 1.5に制限してWARを起動する方法は?

+2

Java 1.5で動作し、1.6に準拠していないコードを作成する方法を教えてください。私の知る限り、Javaは下位互換性があります。 – AlexR

+0

はい、私は通常それが準拠していることを知っていますが、戦争は複雑な自家製のフレームワークに基づいています。スタンドアロンモードでは、ターゲットバージョンを1.5に指定すると、JDK 1.6でアプリケーションを実行できます。しかし、現在は選択肢がありません.WS7でアプリケーションを実行する方法を見つけなければなりません。もちろん、WSはどのように動作するのかは分かりません:)。あなたは知っている、お金、契約、コマーシャル... – thibault

+0

再び、あなたの手作りのフレームワークが特に必要なものを見つけますか? javaバージョンをチェックする場合は、System.setProperty()を呼び出し、シミュレートされたバージョンを渡します。他に何ができますか? – AlexR

答えて

2

をJDK 1.5で実行する必要があり、戦争を起動することが可能であるならばそれはできません知っていただきたいと思います製品にバンドルされているJDK以外のJDKで処理します。

+0

あなたの応答はOKですが、ノード、サーバー、プロファイルなどのWSの要素のjavaバージョンを指定できます – thibault

+0

答えを更新しました。いいえ、製品にバンドルされているもの以外のJDKを使用してプロセス・タイプを実行することはできません。 –

+0

私は同意しません。しかし、私はあなたが何をしようとしているのか分かりません。あなたは詳細を提供しません。再び私は私達に帰ります。我々はJDK 1.5を使用します。私たちはWAS 7で動いています。そして、私たちはデータベースでの作業に問題はありません。許されるのは、HibernateとData Sourcesを使用する傾向があることです。それでも。私はあなたがしようとしていることは不可能だとは思わない。 1.6の特定のAPIを1.5のコンパイル済みコードでJDBC用に使用しようとしています。それは動作しません。 –

2

私はあなたの質問で混乱していると思います。 JREは後方互換性があります。したがって、IBM WebSphere Application Server V 7.x.x.xの1.6 JREは、Java EEコード(Java 1.2に準拠している可能性がある)を遥かに超えて実行し、Java SEコードを1.1までサポートする必要があります。 (なぜあなたはそれを遠くに戻したいのですか、わかりません....)。

本当に問題はありません。 1.5 JDKでコードをコンパイルするだけです(必要な場合)。1.6コンパイラでコンパイルし、1.5コンパイラにフラグを立てることができます。

コードは1.6に準拠する必要はありません。 1.5に準拠していれば正常に動作します。これは、抽象化の全体的なポイントであり、JDKおよびJREとの下位互換性です。

例として、Sun/Oracleの1.5 JDKを使用してMaven 2でコンパイルするエンタープライズアプリケーションがあります。私たちはいくつかのオープンソースプロジェクトのjarファイルをパッケージ化していますが、そのうちのいくつかは、1.3に準拠していてもコンパイル済みであったり古いものです。

Maven 2を使用してこれらすべてをEARとしてパッケージ化し、IBMのWebSphere Application Serverに展開します(7.0.0.9を実行します)。私たちのコードは正常に動作します。 6で特定の関数を利用するためにJDK 1.6でコンパイルするいくつかのモジュールがありますが、ほとんどのコードは1.5としてコンパイルされています。それはうまく動作します。

私はあなたが求めているものが混乱していると思います。あなたは何をしようとしているのより具体的な例を提供できますか? JDK 6でコンパイルすることなく、WAS 7で正常に動作するはずです。

+0

については、JDBC(java.sql from rt.jar)に問題があります。私たちのアプリケーションは、java.sqlのクラスを使用してデータソースを定義しますが、jdk 1.5とjdk 1.6の間では、インターフェイスのシグネチャが異なります(クラスjava.sql.Connectionが表示されます)。したがって、JDK 1.6でコンパイルできない場合は、jdk 1.6で起動するとSQLExceptionが発生します。 WS7(サーバー、プロファイル、ノード、アプリケーションなど)の要素にJavaバージョンを指定することが可能かどうかを知りたかったのです。 – thibault

+0

どこに行くのか分かりません。 java.sql.Connectionは、JDK 1.5準拠のメソッドを使用している限り、何の問題も与えてはなりません。あなたのSQLExceptionは何ですか?あなたがスタックトラックでそれを投稿することができれば、私たちはあなたの問題を解決するのにもっと役立つでしょう。また、WASにいる場合は、直接JDBCで作業するのではなく、データソースを抽象化してDBを抽象化してみてはどうでしょうか?また、何をしようとしているのか誤解しましたか? –

関連する問題