WebLogic Server Java コード・レビュー規則

Java コード・レビューの一連の規則では、WebLogic から WebSphere コードへのマイグレーション・カテゴリーには複数の規則が含まれます。 ルールに関する詳細情報を取得する方法については、 詳細ヘルプの表示を参照してください。

規則名 ルールの説明 自動修正
BEA Beehive @common アノテーションを使用しない

この規則は、マイグレーションされた BEA Beehive ファイル内にある @common Javadoc タグを検出します。

いいえ
BEA Beehive @jpf:action アノテーションを使用しない

この規則は、マイグレーションされた BEA Beehive ファイル内にある @jpf:action Javadoc タグを検出し、マイグレーションします。

いいえ
BEA Beehive @jpf:controller アノテーションを使用しない

この規則は、マイグレーションされた BEA Beehive ファイル内にある @jpf:controller Javadoc タグを検出し、マイグレーションします。

いいえ
BEA Beehive @jpf:exception-handler アノテーションを使用しない

この規則は、マイグレーションされた BEA Beehive ファイル内にある @jpf:exception-handler Javadoc タグを検出し、マイグレーションします。

いいえ
BEA NetUI パッケージを使用しない

この規則は、BEA com.bea.wlw.netui パッケージを検出し、マイグレーションします。

いいえ
Apache Beehive パッケージを検出する

この規則は、org.apache.beehive で始まる Apache Beehive パッケージの使用を検出します。

いいえ
デフォルトの Java パッケージに EJB クラスを入れない この規則は、デフォルトの Java パッケージ内にある EJB を定義する Java クラスを検出します。 WebSphere Application Server では、EJB をデフォルトの Java パッケージに入れることはできません。 いいえ
Apache XMLBeans パッケージを使用しない

この規則は、Apache XMLBeans パッケージ org.apache.xmlbeans への参照を検出します。

いいえ
Commons Logging システム・レベル・プロパティーを使用しない

この規則は、システム・プロパティーを使用する commons logging 実装クラスの設定を検出します。

クイック・フィックスはエントリーを削除します。

いいえ
JNDI 名ルックアップを使用してランタイム MBean サーバーを参照しない

この規則は、WebLogic Server がランタイム MBean サーバーに JNDI 名として提供するストリング・リテラル「java:comp/env/jmx/runtime」を検出します。 このルックアップは、WebSphere Application Server では機能しません。

いいえ
非マッピング weblogic.apache パッケージを使用しない

この規則は、weblogic.apache で始まるクラス・パッケージでクラスがオープン・ソース Apache クラスにマップしていないクラスのインポートとコード参照を検出します。

ユーザーは、コードを変更して別のクラスを使用するようにしなければなりません。 詳しくは、規則のヘルプを参照してください。

いいえ
挿入される JPA エレメントに EntityManager または EntityManagerFactory のサブクラスを使用しない

この規則は、挿入可能なタイプが EntityManager または EntityManagerFactory のサブクラスであるにも関わらず挿入されている JPA PersistenceContext または PeristenceUnit を検出します。

クイック・フィックスは、標準 JPA オブジェクトを使用するようにクラスを変更します。

いいえ
WebLogic ApplicationLifecycleListener インターフェースを使用しない

この規則は、WebLogic weblogic.application.ApplicationLifecycleListener インターフェースを実装しているクラスを検出します。 推奨されるマイグレーションの代替方法は、javax.servlet.ServletContextListener インターフェースを使用することです。

いいえ
JMX オブジェクト名に WebLogic ドメインを使用しない

この規則は、Java コード内の「com.bea」で始まるストリング・リテラルを検出します。 このストリングは、WebLogic Server JMX ドメインを参照するために使用できますが、WebSphere Application Server ではそのように使用できません。

いいえ
WebLogic MessageProducer API を使用しない

この規則は、weblogic.jms.extensions.WLMessageProducer API の使用を検出します。

いいえ
WebLogic ServletAuthentication invalidateAll メソッドを使用しない

この規則は、weblogic.servlet.security.ServletAuthentication invalidateAll メソッドの使用を検出します。

いいえ
WebLogic TransactionHelper getUserTransaction メソッドを使用しない

この規則は、weblogic.transaction.TransactionHelper getUserTransaction メソッドの使用を検出します。

いいえ
CMT Bean からの UserTransaction インターフェースを使用しない

この規則は、コンテナー管理トランザクション・エンタープライズ Bean 内の ctx.lookup('javax.transaction. UserTransaction') への参照を検出します。 CMT Bean からの UserTransaction オブジェクトへの参照は許可されていません。

これらの参照にはフラグが立てられるので、作業者はこの Java EE 違反を削除できます。

いいえ
weblogic.apache パッケージを使用しない

この規則は、weblogic.apache で始まるクラス・パッケージでクラスが org.apache クラスに直接マップしているクラスのインポートとコード参照を検出します。

クイック・フィックスは、コードを org.apache に変更します。 適切な Apache オープンソース .jar ファイルをダウンロードし、アプリケーションに含めてください。

いいえ
WebLogic EJBGEN アノテーションを使用しない

この規則は、weblogic.ejbgen パッケージからの EJBGEN アノテーションを検出します。 これらのアノテーションは、アプリケーションを WebSphere Application Server にデプロイする前に、アプリケーションから削除する必要があります。

いいえ
WebLogic log4j ロギング・オブジェクトを使用しない

この規則は、専有 WebLogic Server log4j クラスを検出し、手動マイグレーションできるようにフラグを立てます。

いいえ
ロガー・インスタンスを取得するために WebLogic LoggingHelper オブジェクトを使用しない

この規則は、LoggingHelper オブジェクトの使用を検出します。

クイック・フィックスは、クラス・インスタンスを Java Logger に変換します。

いいえ
WebLogic ロギング・オブジェクトを使用しない

この規則は、WebLogic Server ロギング・オブジェクトを検出します。

クイック・フィックスは、Java オブジェクトを使用するようにコードを変更します。

いいえ
WebLogic NonCatalogLogger オブジェクトを使用しない

この規則は、NonCatalogLogger の使用を検出します。

クイック・フィックスは、これらのオブジェクトを Java Logger オブジェクトに変換します。 さらに、すべてのロギング・メソッド呼び出しを有効なロギング呼び出しに変換します。 レベルは、ユーザーが規則プロパティーを使用して制御します。

いいえ
WebLogic RMI API 呼び出しを使用しない

この規則は、専有 weblogic.rmi パッケージへの参照の使用を検出します。

クイック・フィックスは、Java 提供のクラスを使用するように、weblogic.rmijava.rmi に変更します。

いいえ
WebLogic RollbackException オブジェクトを使用しない

この規則は、weblogic.transaction.RollbackException オブジェクトの使用を検出し、手動マイグレーションのためにフラグを立てます。

いいえ
XML 構文解析で WebLogic サーブレット属性を使用しない

この規則は、XML を構文解析するのに特定の属性を指定して使用されている setAttribute および getAttribute メソッドの使用を検出します。

クイック・フィックスは、このエントリーを削除します。

いいえ
WebLogic ServletAuthentication クラスを使用しない

この規則は、WebSphere で使用できない weblogic.servlet.security.ServletAuthentication クラスを検出します。

いいえ
WebLogic 固有の JDBC プロパティーや拡張を使用しない

この規則は、手動でマイグレーションしなければならないいくつかの WebLogic Server JDBC プロパティーと拡張の使用を検出します。

いいえ
初期コンテキストに WebLogic 固有の JNDI 環境プロパティーを使用しない

この規則は、コンテキスト・プロパティーを設定するための weblogic.jndi.Environment クラスの使用を検出します。

クイック・フィックスは、Environment 参照内で使用されているオブジェクトを InitialContext オブジェクトの初期化で使用されるハッシュ・テーブルにマイグレーションします。

いいえ
WebLogic 固有の JNDI プロパティーの値も T3 プロトコルも使用しない

この規則は、以下の専有 JNDI 名前値の使用を検出します。

  • java.naming.factory.initial = weblogic.jndi. WLInitialContextFactory
  • java.naming.provider.url = t3://localhost:7001

見つかった場合、JNDI 名をデフォルトの移植可能 JNDI 名前値に変更するオプションがユーザーに提供されます。

  • java.naming.factory.initial = com.ibm.websphere.naming. WsnInitialContextFactory
  • java.naming.provider.url = corbaloc:iiop:localhost:2809
制約事項: JNDI 名の値は、コンテキストが javax.naming. InitialContext(Hashtable) コンストラクターで初期化されるのと同じ Java ソース・ファイル内になければなりません。
いいえ
WebLogic 固有のパッケージを使用しない この規則は、weblogic で始まるインポート済みクラス (weblogic.apache で始まるクラスは除く) を検出します。 フラグを立てられたサーバー固有の API はマイグレーションしなければなりません。 いいえ
WebLogic 固有の SSL プロトコルを使用しない この規則は、Java ファイル内のストリング・リテラル「com.certicom.net.ssl」および「weblogic.net」のインスタンスを検出します。 いいえ
WebLogic のスタートアップまたはシャットダウン・クラスを使用しない

この規則は、WebLogic Server 始動およびシャットダウン・インターフェースを実装しているクラスを検出します。

クイック・フィックスは、これらのクラスを変換して javax.servlet.ServletContextListener インターフェースを使用するようにし、アプリケーションの web.xml ファイルに登録します。

いいえ
WebLogic StAX オブジェクトを使用しない

この規則は、手動でマイグレーションを行う必要がある WebLogic Server 専有 XML Streaming (StAX) オブジェクトの使用を検出します。

いいえ
WebLogic TransactionManager オブジェクトを使用しない

この規則は、TransactionManager オブジェクトの使用を検出し、手動マイグレーションのためにフラグを立てます。

いいえ
WebLogic Transaction オブジェクトを使用しない

この規則は、Transaction オブジェクトの使用を検出し、手動マイグレーションのためにフラグを立てます。

いいえ
WebLogic TransactionSynchronizationRegistry オブジェクトを使用しない

この規則は、TransactionSynchronizationRegistry オブジェクトの使用を検出し、手動マイグレーションのためにフラグを立てます。

いいえ
WebLogic WLLevel オブジェクトを使用しない

この規則は、setLevel() メソッド内での WLLevel オブジェクトの使用を検出します。

クイック・フィックスは、WLLevel を IBM WsLevel に変換します。 レベルは、ユーザーが規則プロパティーを使用して制御します。

いいえ
WebLogic XPath オブジェクトを使用しない

この規則は、WebLogic Server 専有、XML XPath オブジェクトの使用を検出し、手動マイグレーションのためにフラグを立てます。

いいえ
他のアプリケーション・サーバーに固有の MBean をマイグレーションする

この規則は、アプリケーション・サーバーに固有である可能性があり、かつ、アプリケーションを WebSphere Application Server 上で実行するためにマイグレーションが必要な javax.management.ObjectName コンストラクターのすべての呼び出しを検出します。

いいえ
準拠している UserTransaction ルックアップ名を使用する

この規則は、ctx.lookup("javax.transaction. UserTransaction") への参照を検出します。

Bean 管理トランザクション (BMT) Bean 内では、クイック・フィックスはフラグが立てられた行を ctx.getUserTransaction() に変換します。

サーブレット内では、Web アプリケーションおよびクライアント・コードの、フラグが立てられた行を JNDI ルックアップ: ctx.lookup("java:comp/UserTransaction") に変換します。

いいえ
EJB Bean クラスで一致する throws 節を使用する

この規則は、エンタープライズ Bean 実装と、ホームおよびリモート・インターフェースのメソッド定義の間の不一致を検出します。

クイック・フィックスは、欠落している例外を追加し、余分の例外を削除します。 インターフェースは変更されません。

いいえ
移植可能な JNDI 名を使用する この規則は、コンストラクター javax.naming.InitialContext(Hashtable) が専有 WebLogic Server JNDI 名前値を何もハッシュ・テーブルに入れない指定で使用されているものを検出します。 いいえ
挿入された JPA エレメントに unitName 属性を使用する

この規則は、 unitName 属性または name 属性を持たない注入された JPA PersistenceContext または PersistenceUnit エレメントを検出します。

クイック・フィックスは、欠落している値を追加して WebLogic Server 自動化デプロイメントに同様の振る舞いを提供します。

いいえ
getRealPath("") を使用した連結の結果を確認する WebSphere traditional では、getRealPath("") は末尾がスラッシュで終る String を返します。 このメソッドを使用した連結が余分なスラッシュを追加しないことを確認します。 いいえ
getRealPath("*/") との連結の結果を検証する Liberty および WebSphere traditional では、getRealPath("*/") は末尾がスラッシュで終る String を返します。 このメソッドを使用した連結が余分なスラッシュを追加しないことを確認します。 いいえ
WebLogic パッケージおよびクラスは WebSphere ではサポートされない

この規則は、Java コードおよびプロパティー・ファイル内の WebLogic ストリング・リテラルの使用を検出します。 「weblogic」を含んでいるすべてのストリング・リテラルにフラグが立てられます。 代わりに、Java EE または WebSphere Application Server が提供するパッケージ、クラス、およびプロパティーを使用してください。

いいえ

WebLogic では、JPA 1.0 プロバイダーの実装に Kodo を使用しました。 同様に、OpenJPA は、WebSphere の JPA 1.0 および 2.0 のデフォルトの JPA プロバイダーでした。 以下の規則は、WebLogic Server の JPA 2.0 以前へのマイグレーションを処理します。

規則名 ルールの説明 自動修正
OpenJPA に相当するものを持たない Kodo API を使用しない

この規則は、相当する openJPA インポートのない特定の kodo インポート・ステートメントの使用を検出します。

これらの参照にはフラグが立てられるので、それらの使用法を評価し手動でマイグレーションすることができます。

いいえ
OpenJPA に相当するものを持たない Kodo プロパティーを使用しない

この規則は、Java ファイル内で kodo.* で始まるものの、相当する openJPA 値のない JPA プロパティーを検出します。

いいえ
Kodo API の代わりに OpenJPA と同等の API を使用する

この規則は、OpenJPA と同等の WebLogic Server Kodo インポート・ステートメントを検出します。

クイック・フィックスは、それらを openJPA 相当インポート・ステートメントに置き換えます。

いいえ
Kodo 固有のプロパティー名の代わりに OpenJPA と同等のプロパティー名を使用する

この規則は、kodo.* で始まる名前を持つ既知の JPA プロパティーの存在を検出します。 Java ファイルで使用できます。

クイック・フィックスは、これらのプロパティーを openjpa.* にリネームします。

いいえ
OpenJPA プロパティー値を Kodo 固有のプロパティー値の代わりに使用する

この規則は、Java ファイル内で kodo 固有値を持つ JPA プロパティーを検出します。

クイック・フィックスはこれらの値を有効な openJPA 値に変更します。

いいえ

JPA 2.1 以降、WebSphere はそのデフォルトの JPA プロバイダーとして EclipseLink に切り替えました。 以下の規則は、WebLogic Server の JPA 2.1 以降へのマイグレーションを処理します。

規則名 ルールの説明 自動修正
Kodo API 呼び出しを使用しない

この規則は、EclipseLink にマイグレーションする必要がある Kodo API を検出します。

これらの参照にはフラグが立てられるので、それらの使用法を評価し手動でマイグレーションすることができます。

いいえ
Kodo プロパティーを使用しない

この規則は、EclipseLink にマイグレーションする必要がある Kodo プロパティーを検出します。

いいえ