開発の時間とコストについて心配する必要がないと想定してください:一般的な技術的利点(パフォーマンスの向上?APIの向上?)と新機能に興味があります。
私は現在4.2.xを使用する製品に取り組んでおり、私たちは、かなり先のバージョンであり、収束する必要があるバージョンの大きなシフトを検討しています。
各バージョンのリリースノートと、5.x、6.x、7.x、8.xの各リリースに関するいくつかの記事をざっと見ました。しかし、私は切り替えを行った人々から直接フィードバックをいただければ幸いです。
メッセージング(JBoss MQからJBoss Messengingへの切り替え)を取り巻くいくつかの重要な変更があることに気づきました。JBoss7.xの場合、設定レイヤーがかなり変更されているようです。次に、JBoss/WildFly 8.xに切り替えると、さらに多くのことが行われます。
できれば落とし穴を指摘する良い記事を推薦してください。 JBoss 5.xへの移行でいくつかは見つかりましたが、6.xでも7.xでもそれほど多くはありませんでした。他の誰かが8.xを評価してくれました。 JBossのみに焦点を当てることをお勧めしますが、関連があると思われる場合は、代替案もお気軽に推奨してください。
詳細については、JPFとOSGi対応(Eclipse Equinoxを使用)プラグインベースのシステムを組み合わせて使用し、クライアントはSwingで開発されています(一部はWebStart経由でデプロイされています)。
pdate:この質問はすでにいくつかの素晴らしい答えをもたらしましたが、WildFlyの更新に値すると思います(そして、実際、私たちの内部プロジェクトは、当初予定していた4.2.xから7.xへの切り替えを遅らせましたWildFlyの場合)。新しい考えと答えを歓迎します。
JBoss 4から5にアップグレードしました。経験から、次の点に注意することが最も重要です。
役立つリソースは次のとおりです。
http://Java.dzone.com/articles/migrating-jboss-4-jboss-5http://venugopaal.wordpress.com/2009/02/02/jboss405- to-jboss-5ga
正式には、JBoss 6はJava EE Webプロファイル)に対してのみ認定されているため、EJB 2.xなどの「レガシー」機能を使用する場合、将来的にはサポートされなくなる可能性があります。 JBoss 6は現在EJB2.1を完全にサポートしていますが、これは保証されていません。
また、JBoss 5は、JBoss 4よりもメモリの処理がはるかに優れていることもわかりました。JBoss4では、JBoss 5の場合よりも多くのPermGenエラーが発生します。
JBoss 5.1.0の実稼働経験とバージョン6の調査からのみ話すことができます
JBoss 5は Java EE 5 であり、JBoss 6および7は Java EE 6 です。 API機能の相違点は、これらの仕様に文書化されています。 JBoss 6の保存期間は非常に短い可能性があります。それは Java EE 6 Webプロファイル でのみ認定されており、バグ修正はバージョン7(執筆時の第3ベータ版)を対象としています)。
JBossコミュニティフォーラムでより良い答えが得られると思います。
JBoss AS 5からJBoss AS 7にアップグレードし、WildFly AS 8.1を目指しています。 MQシリーズJMS 2 RARがないため、現在8に移行できません。
いくつかの違い:
アプリケーションに必要な変更:
AS 7.xシリーズにはlotのバグがあり、修正はEAPシリーズでのみ利用可能です。 8.xではなく7.xを使用する場合は、EAP 6を購入することを強くお勧めします。
以下は、JBoss AS 7の妥協案と将来に関する興味深いスレッドで、AS 5とAS 6の問題についても触れています。
最新にアップグレードした後、PermGenの膨らみの問題に直面している可能性のある人に注意を向けさせたかっただけです。 JBoss-6 Microcontainerは、起動時にクラスパス内のすべてのJARからクラスをロードすることにより、Jboss固有のアノテーションをスキャンしようとします。これにより、PermGenが不要なクラスの読み込みを開始するときに、PermGenが肥大化します。スキャンの量を減らすために、Microcontainerはjboss-scanning.xmlを使用して別の記述子フックを提供します。この「jboss-scanning.xml」をWAR内のWEB-INFに追加し、「jboss-scanning.xml」をEAR内のMETA-INFに追加します。
<scanning xmlns="urn:jboss:scanning:1.0">
<!-- Purpose: Disable scanning for annotations in contained deployment. -->
</scanning>