2010-12-27 3 views
1

私は奇妙な問題に直面しています。私はjava 6でJava Webアプリケーションを開発しました。そのサーバーでホストしたとき、java 5サーバー以降のエラーを示しています。私は注釈を使用して、休止状態のAPIを自分のコードに残しました。今はJava 5環境で自分のコードを変換したいのです。java 5の環境でJava 6の機能を使用する方法

これは可能ですか?はいの場合はどうすればいいですか?または、この問題の他の回避策がありますか?私にお知らせください。

@all:これは私が取得していますエラーです:

alt text

+0

アノテーションは5以降にあります。スタックトレース後に –

+0

あなたのプログラムはJava 6で動作しますか?その場合は、サーバーをJava 6にアップグレードしてください。Java 5.0はEOLです。または、Java 5.0で作業するためのコードを入手してください。または、Java 6の新しいサーバーをインストールして、古いサーバーをそのままにしてください(おそらくアップグレードできない理由があります) –

+0

あまりにも一般的な質問です。エラー –

答えて

1

私はあなたのビルドプロセスが何であるかわからないが、あなたは、Java 1.5のような特定のターゲットのコードをコンパイルする必要があります。

  • あなたがアリを使用している場合は、-targetスイッチ
  • でコマンドラインを見てからのjavacを使用している場合は、targetプロパティを見てください。

Java 1.6固有のライブラリを使用している場合は、問題が発生します。コード/ webappを試してみると、このことが分かります。

こちらがお役に立てば幸いです。

+0

を投稿してください。Java 1.6の特定のライブラリは何ですか?私はそれらを使用している場合私は確かに私はいくつかのcozをリストすることができます。私は前にjdk 5を使ったことがありません。 – Anand

+0

5&6(http://www.oracle.com/technetwork/java/javase/index-140291.html)の違いを確認するには、リリース・ノートを参照してください。サードパーティライブラリには、必要なバージョンのドキュメント、または異なるプラットフォーム用の別個のディストリビューションが必要です。 –

0

投稿からは、Java EE 5環境でJava EE 6の機能を使用しているようです。あなたのアプリなら。サーブレット2.5環境でサーブレット3.0の機能を使用するなど、サーバーはそのような機能をコアレベルでサポートしていないため、運が悪いです。

ただし、Hibernateのようなライブラリである機能を使用すると、Java EE 5環境で使用することができなくなります。

Java 6は言語としてJava 5と同じままですが、ライブラリは変更されています。同様に、JREのクラスとメソッドを6で使用すると、5で動作しません。

更新:スクリーンショットから、古いバージョンのTomcatでJava 6コンパイル済みクラスが使用されていることがわかります。 Java 5用にコンパイルしてください。

0

個々のエラーを見て、欠落しているものを見つけなければなりません。

JPAアノテーションはすでにJava EE 5に含まれていたため、「休止状態」で問題が発生している場合は、実際にはJava EE 5で実行されていないか、または休止状態に特有のアノテーションを使用しています。 REST注釈はJava EE 6で実際に追加されましたが、Java EE 5環境では、APIと実装(例:Apache Jersey)のJARをアプリのクラスパスに追加することで比較的簡単に使用できます。

ここでは、Java SEとJava EEの間に混乱があります。あなたはJava EEの機能についてはっきりと話していますが、Java SE(「Java」と言いますとほとんどの人が考える)とJava EEの間には大きな違いがあります。

+0

そのJava EE ..具体的に – Anand

0

Java 5(Java 5を使用するTomcat 5.x)でJava 6に対してコンパイルされたクラスを実行しようとしています。

  1. あなたはjavacに「-target」引数を使用しますが、このオプションは問題がで発生しているよう手助けするつもりはないして、Java 5が互換性を持つクラスをコンパイルできるJava 6
  2. にアップグレードすることができますサーブレットAPI。 JEE6にはJava 6が必要です。
+0

はい私はそれを知っています。そのエラーに遭わないようにする方法はありますか? – Anand

+0

投稿を更新しました –

+0

これは問題ですか?これは問題です:私はjdk 6.でアプリケーションを作った。ホスティングサーバーはjdk 5を望んでいます。私はEclipse IDEを使用しています。 – Anand