Skip to main content

Javaのスキャンルール

 

Contrast Scanでは、Javaに対して以下のルールをサポートしています。

深刻度

Contrastルール

エンジンルールID

説明

重大

Use Authenticated SOAP Messages 

OPT.JAVA.JAX.UseAuthenticatedSOAPMessages 

UseAuthenticatedSOAPMessages:SOAPメッセージの認証の使用

重大

Use Encrypted SOAP Messages 

OPT.JAVA.JAX.UseEncryptedSOAPMessages 

UseEncryptedSOAPMessages:暗号化されたSOAPメッセージの使用

重大

Use Signed SOAP Messages 

OPT.JAVA.JAX.UseSignedSOAPMessages 

UseSignedSOAPMessages:署名されたSOAPメッセージの使用

重大

Acegi Insecure Channel Mixing Rule 

OPT.JAVA.SEC_JAVA.AcegiInsecureChannelMixingRule 

AcegiInsecureChannelMixingRule:Acegiの設定ミス - 安全でないチャンネルミキシング

重大

Insecure SSL

OPT.JAVA.SEC_JAVA.InsecureSSL 

InsecureSSL:安全でないSSLの設定

重大

Too Much Origins Allowed Rule

OPT.JAVA.SEC_JAVA.TooMuchOriginsAllowedRule 

TooMuchOriginsAllowedRule:CORSボリシー(クロスオリジンリソース共有)での広すぎる許可範囲

重大

Android SQL Injection 

OPT.JAVA.ANDROID.AndroidSQLInjection 

AndroidSQLInjection:無害化されていないユーザ入力で生成されるSQL式の回避

重大

Content Provider Uri Injection 

OPT.JAVA.ANDROID.ContentProviderUriInjection 

ContentProviderUriInjection:コンテンツプロバイダURIインジェクション

重大

Dynamically Loading Code 

OPT.JAVA.ANDROID.DynamicallyLoadingCode 

DynamicallyLoadingCode:動的なコードの読み込み回避

重大

Intent Manipulation 

OPT.JAVA.ANDROID.IntentManipulation 

IntentManipulation:インテントの改ざん

重大

Javascript Enabled 

OPT.JAVA.ANDROID.JavascriptEnabled 

JavascriptEnabled:JavaScriptの無効化(JavaScriptを有効にすることは推奨されない)

重大

Javascript Interface Annotation 

OPT.JAVA.ANDROID.JavascriptInterfaceAnnotation 

JavascriptInterfaceAnnotation:WebView.addJavaScriptInterface()によるコードインジェクションの可能性

重大

Code Injection Rule 

OPT.JAVA.SEC_JAVA.CodeInjectionRule 

CodeInjectionRule:スクリプトAPIにおける動的なコードインジェクション

重大

Code Injection With Deserialization Rule 

OPT.JAVA.SEC_JAVA.CodeInjectionWithDeserializationRule 

CodeInjectionWithDeserializationRule:XML/JSONのデシリアライズ時の動的なコードインジェクション

重大

Command Injection Rule

OPT.JAVA.SEC_JAVA.CommandInjectionRule 

CommandInjectionRule:OSコマンドで使用する特殊要素の不適切な無害化(OSコマンドインジェクション)

重大

Connection String Parameter Pollution

OPT.JAVA.SEC_JAVA.ConnectionStringParameterPollution 

ConnectionStringParameterPollution::信頼できない入力で汚染された接続文字列

重大

Never Use Identifier In Equals Hashcode 

OPT.HIBERNATE.NeverUseIdentifierInEqualsHashcode 

NeverUseIdentifierInEqualsHashcode:equals()やhashCode()でのデータベースの識別子の使用禁止

重大

Rollback Transaction On Exception 

OPT.HIBERNATE.RollbackTransactionOnException 

RollbackTransactionOnException:例外が発生した場合はトランザクションをロールバックする

重大

Static Inner Persistent Classes 

OPT.HIBERNATE.StaticInnerPersistentClasses 

StaticInnerPersistentClasses:内部クラスが永続的である場合、それはstatic宣言する

重大

Access to persistence layer from Struts Actions 

OPT.JAVA.ACTIONS.ALPA 

ALPA:Struts ActionからPersistence layerへのアクセス

重大

N A E A 

OPT.JAVA.ACTIONS.NAEA 

NAEA:Actionではfinalインスタンスフィールドの使用禁止

重大

Activity Start At Broadcast Intent 

OPT.JAVA.ANDROID.ActivityStartAtBroadcastIntent 

ActivityStartAtBroadcastIntent:ブロードキャストインテントに応答するアクティビティの開始

重大

Cross Site Scripting Rule 

OPT.JAVA.SEC_JAVA.CrossSiteScriptingRule 

CrossSiteScriptingRule:Webページ生成中の入力の不適切な無害化(クロスサイトスクリプティング)

重大

Http Splitting Rule

OPT.JAVA.SEC_JAVA.HttpSplittingRule 

HttpSplittingRule:HTTPヘッダにおけるCRLFシーケンスの不適切な無害化(HTTPレスポンス分割攻撃)

重大

I Batis SQL Injection Rule 

OPT.JAVA.SEC_JAVA.IBatisSqlInjectionRule 

IBatisSqlInjectionRule:iBatisでのSQLコマンドで使用する特殊要素の不適切な無害化(SQLインジェクション)

重大

Ldap Injection Rule 

OPT.JAVA.SEC_JAVA.LdapInjectionRule 

LdapInjectionRule:LDAP検索フィルタにおける無害化されていないユーザ制御入力の回避

重大

Mail Command Injection

OPT.JAVA.SEC_JAVA.MailCommandInjection 

MailCommandInjection:メールコマンドインジェクション

重大

No SQL Injection

OPT.JAVA.SEC_JAVA.NoSQLInjection 

NoSQLInjection:データクエリロジックにおける特殊要素の不適切な無害化(NoSQLインジェクション)

重大

Process Control Rule 

OPT.JAVA.SEC_JAVA.ProcessControlRule 

ProcessControlRule:信頼できないソースから読み込まれたライブラリ

重大

Regex Injection Rule 

OPT.JAVA.SEC_JAVA.RegexInjectionRule 

RegexInjectionRule:悪意のある正規表現によるDos攻撃の防止(正規表現インジェクション)

重大

Privilege Escalation Attack 

OPT.JAVA.ANDROID.PrivilegeEscalationAttack 

PrivilegeEscalationAttack:権限昇格攻撃の防止(アプリケーションが他のアプリケーション権限を使用してコードを実行することを許可しない)

重大

Same Origin Method Execution

OPT.JAVA.SEC_JAVA.SameOriginMethodExecution 

SameOriginMethodExecution:同一オリジンメソッド実行(SOME)

重大

Server Side Request Forgery Rule 

OPT.JAVA.SEC_JAVA.ServerSideRequestForgeryRule 

ServerSideRequestForgeryRule:サーバサイドリクエストフォージェリ(SSRF)

重大

Spring View Manipulation 

OPT.JAVA.SEC_JAVA.SpringViewManipulation 

SpringViewManipulation:Spring Viewの操作

重大

S Q L Resources 

OPT.JAVA.ANDROID.SQLResources 

SQLResources:終了時にSQLのリソースを閉じる

重大

SQL Injection Rule 

OPT.JAVA.SEC_JAVA.SqlInjectionRule 

SqlInjectionRule:SQLコマンドで使用する特殊要素の不適切な無害化(SQLインジェクション)

重大

B L N C 

OPT.JAVA.BEANS.BLNC 

BLNC:JavaBeans内のすべてのリスナーメソッドに適切なシグネチャ(署名)の使用

重大

Avoid Assign In For 

OPT.JAVA.BUC.AvoidAssignInFor 

AvoidAssignInFor:forループ内での変数への値の代入を避ける

重大

Avoid Reuse Var 

OPT.JAVA.BUC.AvoidReuseVar 

AvoidReuseVar:ネストされたループでの制御変数の再利用の回避

重大

Float Double Comparison 

OPT.JAVA.COMP.FloatDoubleComparison

FloatDoubleComparison:CERT-Jのコーディング規約「NUM07-J」浮動小数点数の比較に注意

重大

Avoid Call AWT From Servlet 

OPT.JAVA.COMPDAT.AvoidCallAWTFromServlet 

AvoidCallAWTFromServlet:サーブレットのコードからjava.awt.*の呼び出し禁止

重大

Avoid Call Swing From Servlet 

OPT.JAVA.COMPDAT.AvoidCallSwingFromServlet 

AvoidCallSwingFromServlet:サーブレットからjavax.swing.*の呼び出し禁止

重大

Avoid Return In Constructors 

OPT.JAVA.CONST.AvoidReturnInConstructors 

AvoidReturnInConstructors:戻り値の型を持つコンストラクタの回避

重大

Avoid Declare Matrix Volatile 

OPT.JAVA.DECL.AvoidDeclareMatrixVolatile 

AvoidDeclareMatrixVolatile:配列フィールドのvolatile宣言の禁止

重大

Avoid Inaccessible Class 

OPT.JAVA.DECL.AvoidInaccessibleClass 

AvoidInaccessibleClass:アクセスできないクラスの回避

重大

Avoid Break Continue In Labels 

OPT.JAVA.ESTRUC.AvoidBreakContinueInLabels 

AvoidBreakContinueInLabels:ラベル付きのcontinueとbreakの回避

重大

Avoid Call Sound From Servlet 

OPT.JAVA.EXAC.AvoidCallSoundFromServlet 

AvoidCallSoundFromServlet:サーブレットのコードからjavax.sound.*の呼び出し禁止

重大

Avoid Throw Null Pointer Exceptions 

OPT.JAVA.EXCP.AvoidThrowNullPointerExceptions 

AvoidThrowNullPointerExceptions:NullPointerExceptionのスロー回避

重大

Avoid Remove Action Listener 

OPT.JAVA.FIN.AvoidRemoveActionListener 

AvoidRemoveActionListener:finalize()メソッドでのアクションリスナーの削除回避

重大

A B C L 

OPT.JAVA.FMETODOS.ABCL 

ABCL:ラベル付きのbreak/continue文の使用回避

重大

A GC 

OPT.JAVA.GC.AGC 

AGC:System.gc()でのGCの呼び出し禁止

重大

I F F 

OPT.JAVA.GC.IFF 

IFF:finalize()メソッドのfinallyブロックでsuper.finalize()の呼び出し禁止

重大

Avoid Await Outside Brackets 

OPT.JAVA.HEB.AvoidAwaitOutsideBrackets 

AvoidAwaitOutsideBrackets:java.util.concurrent.locks.Conditionクラスのawait()メソッドを、whileループの外側で使用しない

重大

Avoid Call Wait 

OPT.JAVA.HEB.AvoidCallWait 

AvoidCallWait:java.util.concurrent.locks.Conditionオブジェクトのwait()呼び出しを回避する

重大

Avoid Runnable Without Run 

OPT.JAVA.HEB.AvoidRunnableWithoutRun 

AvoidRunnableWithoutRun:run()メソッドのないRunnableの実装の回避

重大

Run With Synchronize 

OPT.JAVA.HEB.RunWithSynchronize 

RunWithSynchronize:run()メソッドでは常に「synchronized」の使用

重大

Avoid Load Library 

OPT.JAVA.J2EE.AvoidLoadLibrary 

AvoidLoadLibrary:java.lang.System.loadLibrary()またはjava.lang.Runtime.loadLibrary()を呼び出し禁止

重大

Avoid Set Security Manager 

OPT.JAVA.J2EE.AvoidSetSecurityManager 

AvoidSetSecurityManager:java.lang.System.setSecurityManager()の呼び出し禁止

重大

Avoid Protected Native Methods 

OPT.JAVA.J2SE.AvoidProtectedNativeMethods 

AvoidProtectedNativeMethods:protected宣言したネイティブメソッドの回避

重大

Avoid Public Native Methods 

OPT.JAVA.J2SE.AvoidPublicNativeMethods 

AvoidPublicNativeMethods:public宣言したネイティブメソッドの回避

重大

Avoid Invalid Exception Handling 

OPT.JAVA.JAX.AvoidInvalidExceptionHandling 

AvoidInvalidExceptionHandling:JAX-WS仕様に準拠した例外処理

重大

Avoid Web Method Annotation In Endpoint Interfaces 

OPT.JAVA.JAX.AvoidWebMethodAnnotationInEndpointInterfaces 

AvoidWebMethodAnnotationInEndpointInterfaces:エンドポイントのインターフェースメソッドで@WebMethodアノテーションの使用回避

重大

Xml Entity Injection Rule 

OPT.JAVA.SEC_JAVA.XmlEntityInjectionRule 

XmlEntityInjectionRule:XMLエンティティインジェクション

重大

Avoid Data Submission To Non Editable Field 

OPT.JAVA.SPRING.AvoidDataSubmissionToNonEditableField 

AvoidDataSubmissionToNonEditableField:編集不可のフィールドへのデータ送信の回避

重大

D S L V 

OPT.JAVA.JDBC.DSLV 

DSLV:ローカルメソッドでデータソース変数の作成禁止

重大

S E T P S 

OPT.JAVA.JDBC.SETPS 

SETPS:PreparedStatementのパラメータ値は、クエリを実行する前に定義が必要

重大

Set Up J Unit 

OPT.JAVA.JUNIT_JAVA.SetUpJUnit 

SetUpJUnit:JUnitsの各テストケースでsetUp()メソッドを常に上書きする

重大

Avoid Call Thread From Servlet 

OPT.JAVA.MAN.AvoidCallThreadFromServlet 

AvoidCallThreadFromServlet:サーブレットからjava.lang.Threadの呼び出し回避

重大

Avoid Call Finalize 

OPT.JAVA.MEM.AvoidCallFinalize 

AvoidCallFinalize:メソッドfinalize()のfinallyブロック以外でのfinalize()の呼び出し回避

重大

Avoid Garbage Collector 

OPT.JAVA.MEM.AvoidGarbageCollector 

AvoidGarbageCollector:ガベージコレクタの起動の回避

重大

Avoid Publicfinalize 

OPT.JAVA.MEM.AvoidPublicfinalize 

AvoidPublicfinalize:finalize()はpublic宣言しない

重大

A S I 

OPT.JAVA.PB.ASI 

ASI:条件式においては代入と比較の混同の可能性がある

重大

M A I L 

OPT.JAVA.PB.MAIL 

MAIL:javax.mail.*の使用の回避

重大

N A M I N G 

OPT.JAVA.PB.NAMING 

NAMING:コンストラクタでないメソッドに、そのクラスと同じ名前をつけない

重大

T L S 

OPT.JAVA.PB.TLS 

TLS:ステートメントでのテキストタグの使用の回避

重大

Avoid Call Applet From Servlet 

OPT.JAVA.RECBAS.AvoidCallAppletFromServlet 

AvoidCallAppletFromServlet:サーブレットのfinalize()メソッドからjava.applet.*の呼び出しの回避

重大

Avoid Call Class Loader From Servlet 

OPT.JAVA.RECBAS.AvoidCallClassLoaderFromServlet 

AvoidCallClassLoaderFromServlet:サーブレットのfinalize()メソッドからjava.lang.ClassLoaderの呼び出しの回避

重大

Avoid Call Context From Servlet 

OPT.JAVA.RECBAS.AvoidCallContextFromServlet 

AvoidContextFromServlet:サーブレットのfinalize()メソッドから javax.naming.Contextの呼び出しの回避

重大

Avoid Call Driver From Servlet 

OPT.JAVA.RECBAS.AvoidCallDriverFromServlet 

AvoidCallDriverFromServlet:サーブレットのfinalize()メソッドからjava.sql.Driverの呼び出しの禁止

重大

Avoid Call I O From Servlet 

OPT.JAVA.RECBAS.AvoidCallIOFromServlet 

AvoidCallIOFromServlet:サーブレットのfinalize()メソッドからjava.io.*の呼び出しの回避

重大

Avoid Call Lang Ref From Servlet 

OPT.JAVA.RECBAS.AvoidCallLangRefFromServlet 

AvoidCallLangRefFromServlet:サーブレットのfinalize()メソッドからjava.lang.ref.*の呼び出しの回避

重大

Avoid Call Port Rem Obj From Servlet 

OPT.JAVA.RECBAS.AvoidCallPortRemObjFromServlet 

AvoidCallPortRemObjFromServlet:サーブレットのfinalize()メソッドからjavax.rmi.PortableRemoteObjectの呼び出しの回避

重大

Avoid Call Runnable From Servlet 

OPT.JAVA.RECBAS.AvoidCallRunnableFromServlet 

AvoidCallRunnableFromServlet:サーブレットのfinalize()メソッドからjava.lang.Runnableの呼び出しの回避

重大

Avoid Call Security From Servlet 

OPT.JAVA.RECBAS.AvoidCallSecurityFromServlet 

AvoidCallSecurityFromServlet:サーブレットのfinalize()メソッドからjava.security .*の呼び出しの回避

重大

Avoid Call Transaction From Servlet 

OPT.JAVA.RECBAS.AvoidCallTransactionFromServlet 

AvoidCallTransactionFromServlet:サーブレットのfinalize()メソッドからjavax.transaction.*の呼び出しの回避

重大

Avoid Get Declared Method 

OPT.JAVA.REFL.AvoidGetDeclaredMethod 

AvoidGetDeclaredMethod:java.lang.Class.getDeclaredMethod()の呼び出しの回避

重大

Avoid Get Field 

OPT.JAVA.REFL.AvoidGetField 

AvoidGetField:java.lang.Class.getField()の呼び出しの回避

重大

Avoid Get Method 

OPT.JAVA.REFL.AvoidGetMethod 

AvoidGetMethod:java.lang.ClassからgetMethod()メソッドの呼び出しの回避

重大

Avoid Call Compiler From Servlet 

OPT.JAVA.RENDESC.AvoidCallCompilerFromServlet 

AvoidCallCompilerFromServlet:サーブレットからjava.lang.Compilerの呼び出しの回避

重大

Avoid Call Reflect From Servlet 

OPT.JAVA.RENDESC.AvoidCallReflectFromServlet 

AvoidCallReflectFromServlet:サーブレットからjava.lang.reflect .*の呼び出しの回避

重大

Avoid Call Runtime From Servlet 

OPT.JAVA.RENDESC.AvoidCallRuntimeFromServlet 

AvoidCallRuntimeFromServlet:サーブレットからjava.lang.Runtimeの呼び出しの回避

重大

Avoid Call Thread Group From Servlet 

OPT.JAVA.RENDESC.AvoidCallThreadGroupFromServlet 

AvoidCallThreadGroupFromServlet:サーブレットからjava.lang.ThreadGroupの呼び出しの回避

重大

Avoid Call Zip From Servlet 

OPT.JAVA.RENDESC.AvoidCallZipFromServlet 

AvoidCallZipFromServlet:サーブレットからjava.util.zip.*の呼び出しの回避

重大

E A O F 

OPT.JAVA.RGME.EAOF 

EAOF: クラスフィールドに何度もアクセスしない

重大

Dont Use Keywords 

OPT.JAVA.RGP.DontUseKeywords 

DontUseKeywords:新しいバージョンの言語では予約語の使用禁止

重大

E N V 

OPT.JAVA.RGP.ENV 

ENV:System.getenv()の使用禁止

重大

E R A 

OPT.JAVA.RGP.ERA 

ERA:絶対パスの使用回避

重大

E X E C 

OPT.JAVA.RGP.EXEC 

EXEC:Runtime.exec()の使用回避

重大

N A T V 

OPT.JAVA.RGP.NATV 

NATV:ユーザー定義のネイティブメソッドの使用回避

重大

P E E R 

OPT.JAVA.RGP.PEER 

PEER:java.awt.peer.*インタフェースの使用回避

重大

Accessibility Subversion Rule

OPT.JAVA.SEC_JAVA.AccessibilitySubversionRule 

AccessibilitySubversionRule:Javaアクセス制限の回避(リフレクション)

重大

Acegi Run As Authentication Replacement Rule 

OPT.JAVA.SEC_JAVA.AcegiRunAsAuthenticationReplacementRule 

AcegiRunAsAuthenticationReplacementRule:Acegiの設定ミス - Run-As認証置換

重大

Anonymous Ldap Bind Rule 

OPT.JAVA.SEC_JAVA.AnonymousLdapBindRule 

AnonymousLdapBindRule:アクセス制御 - 匿名LDAPバインドの検出

重大

Path Traversal Rule 

OPT.JAVA.SEC_JAVA.PathTraversalRule 

PathTraversalRule:リソースへのパス名で構成される、無害化されていないユーザ制御の入力の回避

重大

Spring Unrestricted Request Mapping 

OPT.JAVA.SEC_JAVA.SpringUnrestrictedRequestMapping 

SpringUnrestrictedRequestMapping:Springの制限なしのRequestMappingではCSRF対策にならない

重大

Static Database Connection

OPT.JAVA.SEC_JAVA.StaticDatabaseConnection 

StaticDatabaseConnection:静的なデータベース接続/セッション

重大

Avoid Add Container Himself 

OPT.JAVA.SENT.AvoidAddContainerHimself 

AvoidAddContainerHimself:コンテナ自身の追加の回避

重大

Avoid Incorrect Increase 

OPT.JAVA.SENT.AvoidIncorrectIncrease 

AvoidIncorrectIncrease:後置インクリメント(i++)をそれ自身に代入しない

重大

Avoid Invoke Exit 

OPT.JAVA.SENT.AvoidInvokeExit 

AvoidInvokeExit:System.exit()の呼び出し禁止

重大

Avoid Invoke Run Finalizers On Exit 

OPT.JAVA.SENT.AvoidInvokeRunFinalizersOnExit 

AvoidInvokeRunFinalizersOnExit:java.lang.System.runFinalizersOnExit()の呼び出しの回避

重大

Not Use Label Sentences 

OPT.JAVA.SENT.NotUseLabelSentences 

NotUseLabelSentences:ラベルを使用禁止

重大

Declare Contructor For Externalizable 

OPT.JAVA.SERI.DeclareContructorForExternalizable 

DeclareContructorForExternalizable:java.io.Externalizableを実装するクラスのコンストラクタを常に宣言する

重大

Read Resolve Return Object 

OPT.JAVA.SERI.ReadResolveReturnObject 

ReadResolveReturnObject:readResolve()メソッドの戻り値の型は常にjava.lang.Object()

重大

S B L 

OPT.JAVA.STR.SBL 

SBL:StringBuffer/StringBuilderを使用して文字列サイズを取得する際のtoStringメソッドの削除

重大

Avoid Sun Star 

OPT.JAVA.SUN.AvoidSunStar 

AvoidSunStar:sun.*の使用の回避

重大

Avoid Label Switch Sentences 

OPT.JAVA.SWITCH.AvoidLabelSwitchSentences 

AvoidLabelSwitchSentences:switch文でテキストラベルの使用の回避

重大

A U T Y 

OPT.JAVA.TRS.AUTY 

AUTY:Thread.yieldの使用の回避

重大

C S F S 

OPT.JAVA.TRS.CSFS 

CSFS:別の同期メソッドから同期メソッドを呼び出してデッドロックを発生させない

重大

N S Y N 

OPT.JAVA.TRS.NSYN 

NSYN:同期コンテキスト外からwait、notify、notifyAllを呼び出さない

重大

T H R D 

OPT.JAVA.TRS.THRD 

THRD:Thread.resume()、Thread.stop()、Thread.suspend()、Runtime.runFinalizersOnExit()の呼び出しの回避

重大

Android Sticky Broadcast 

OPT.JAVA.ANDROID.AndroidStickyBroadcast 

AndroidStickyBroadcast:スティッキーブロードキャストの回避

重大

Receiver Without Permission 

OPT.JAVA.ANDROID.ReceiverWithoutPermission 

ReceiverWithoutPermission:ブロードキャストレシーバの登録時にブロードキャスターのパーミッションがない

重大

SMS Monitoring 

OPT.JAVA.ANDROID.SMSMonitoring 

SMSMonitoring:データ入力やコマンドにおけるSMSの使用禁止

重大

Password In Redirect Rule

OPT.JAVA.SEC_JAVA.PasswordInRedirectRule 

PasswordInRedirectRule:パスワード管理 - リダイレクト内のパスワード

重大

Use A Safe Cipher 

OPT.JAVA.ANDROID.UseASafeCipher 

UseASafeCipher:ECBモード、またはモードを指定しない暗号化の使用回避

重大

Hardcoded Crypto Key

OPT.JAVA.SEC_JAVA.HardcodedCryptoKey 

HardcodedCryptoKey:ハードコードされた暗号鍵

重大

Non Random IV With CBC Mode

OPT.JAVA.SEC_JAVA.NonRandomIVWithCBCMode 

NonRandomIVWithCBCMode:CBCモードでランダムな初期化ベクトル(IV)が使用されていない可能性

重大

Weak Cryptographic Hash Rule 

OPT.JAVA.SEC_JAVA.WeakCryptographicHashRule 

WeakCryptographicHashRule:脆弱な暗号化ハッシュ

重大

Weak Encryption Rule 

OPT.JAVA.SEC_JAVA.WeakEncryptionRule 

WeakEncryptionRule:脆弱な共通鍵暗号アルゴリズム

Do Not Release Debuggable Apps 

OPT.JAVA.ANDROID.DoNotReleaseDebuggableApps 

DoNotReleaseDebuggableApps:デバッグ可能なアプリをリリースしない

Prevent Backup Vulnerability 

OPT.JAVA.ANDROID.PreventBackupVulnerability 

PreventBackupVulnerability:不適切なバックアップ設定

Dynamic Method Invocation 

OPT.JAVA.SEC_JAVA.DynamicMethodInvocation 

DynamicMethodInvocation:Struts 2における動的メソッド呼び出し

Insufficient Session Expiration Rule

OPT.JAVA.SEC_JAVA.InsufficientSessionExpirationRule 

InsufficientSessionExpirationRule:セッションの有効期限の間隔が正の値であり、制限を超えていないことの確認

Play Security Misconfiguration

OPT.JAVA.SEC_JAVA.PlaySecurityMisconfiguration 

PlaySecurityMisconfiguration:Playフレームワークのセキュリティ設定ミス

Web Xml Security Misconfigurations Rule 

OPT.JAVA.SEC_JAVA.WebXmlSecurityMisconfigurationsRule 

WebXmlSecurityMisconfigurationsRule:web.xml記述子でのセキュリティプロパティの誤設定の回避

Prevent Exposition Of All Repositories 

OPT.JAVA.SPRING.PreventExpositionOfAllRepositories 

PreventExpositionOfAllRepositories:すべてのリポジトリをRESTリソースとして公開しないようにする

Bind Parameters In Queries 

OPT.HIBERNATE.BindParametersInQueries 

BindParametersInQueries:HQLおよびネイティブSQLクエリでバインド(または名前付き)パラメータの使用

Mock Location 

OPT.JAVA.ANDROID.MockLocation 

MockLocation:Mock Locationプロバイダの使用の回避

Package Manager Get Signatures 

OPT.JAVA.ANDROID.PackageManagerGetSignatures 

PackageManagerGetSignatures:複数の証明書を悪用される可能性

Avoid Multiple Entities Mapped To Same Table 

OPT.HIBERNATE.AvoidMultipleEntitiesMappedToSameTable 

AvoidMultipleEntitiesMappedToSameTable:同じデータベーステーブルにマップされる複数のエンティティの回避

Classes Should Be Their Own Proxy 

OPT.HIBERNATE.ClassesShouldBeTheirOwnProxy 

ClassesShouldBeTheirOwnProxy:すべての永続クラスはそれ自身のプロキシであるべき

Close Sessions Where Opened 

OPT.HIBERNATE.CloseSessionsWhereOpened 

CloseSessionsWhereOpened:セッションが開かれたメソッドでセッションを閉じる

Declare Private Identifier Setter 

OPT.HIBERNATE.DeclarePrivateIdentifierSetter 

DeclarePrivateIdentifierSetter:識別子プロパティ(idまたはcomposite-id)のsetterメソッドはプライベートであることが必要

Declare Type For Date Property 

OPT.HIBERNATE.DeclareTypeForDateProperty 

DeclareTypeForDateProperty:設定ファイルでjava.util.Dateプロパティの型を宣言

Implement Zero Argument Constructor 

OPT.HIBERNATE.ImplementZeroArgumentConstructor 

ImplementZeroArgumentConstructor:永続クラスの引数なしのコンストラクタの実装

Invalid Property Type Mapping 

OPT.HIBERNATE.InvalidPropertyTypeMapping 

InvalidPropertyTypeMapping:Hibernateプロパティの型は対応するJavaの型にのみマッピング

Referenced Class Not Defined 

OPT.HIBERNATE.ReferencedClassNotDefined 

ReferencedClassNotDefined:設定ファイル(*.hbm.xml)で参照されているクラスは宣言されていることが必要

Aapt Crash 

OPT.JAVA.ANDROID.AaptCrash 

AaptCrash:動的に生成される識別子でのスタイル定義の回避

Adapter View Children 

OPT.JAVA.ANDROID.AdapterViewChildren 

AdapterViewChildren:AdapterViewはxml内で子要素を持つことはできない

Always Canonicalize URL Received By Content Provider 

OPT.JAVA.ANDROID.AlwaysCanonicalizeURLReceivedByContentProvider 

AlwaysCanonicalizeURLReceivedByContentProvider:アプリケーションデータへの不適切なアクセスの回避

Cross Site Request Forgery Rule 

OPT.JAVA.SEC_JAVA.CrossSiteRequestForgeryRule 

CrossSiteRequestForgeryRule:クロスサイトリクエストフォージェリ(CSRF)

Call Super First On Init 

OPT.JAVA.ANDROID.CallSuperFirstOnInit 

CallSuperFirstOnInit:初期化メソッドで最初にスーパーメソッドの呼び出しを確認

Call Super Last On End 

OPT.JAVA.ANDROID.CallSuperLastOnEnd 

CallSuperLastOnEnd:ファイナライズメソッドで最後にスーパーメソッドの呼び出しを確認

External Control Of Configuration Setting

OPT.JAVA.SEC_JAVA.ExternalControlOfConfigurationSetting 

ExternalControlOfConfigurationSetting:システム設定または構成設定の外部制御

Device Admin 

OPT.JAVA.ANDROID.DeviceAdmin 

DeviceAdmin:レシーバがデバイス管理者として動作するかの確認

Http Parameter Pollution Rule

OPT.JAVA.SEC_JAVA.HttpParameterPollutionRule 

HttpParameterPollutionRule:HTTPパラメータ汚染(HPP)

Dont Use Config 

OPT.JAVA.ANDROID.DontUseConfig 

DontUseConfig:非推奨のandroid.util.Configの使用回避

Dont Use Find View By Id Repeately 

OPT.JAVA.ANDROID.DontUseFindViewByIdRepeately 

DontUseFindViewByIdRepeately:同じ識別子でのfindViewById()の繰り返し呼び出しの回避

Duplicate Ids 

OPT.JAVA.ANDROID.DuplicateIds 

DuplicateIds:同一レイアウト内でのIDの重複回避

JSON Injection

OPT.JAVA.SEC_JAVA.JSONInjection 

JSONInjection:JSONエンティティにおける無害化されていないユーザ制御入力の使用の回避(JSONインジェクション)

Log Forging

OPT.JAVA.SEC_JAVA.LogForging 

LogForging:ログの出力の不適切な無害化

Grant All Uris 

OPT.JAVA.ANDROID.GrantAllUris 

GrantAllUris:ルートパスの共有の回避

Incorrect Wake Lock Usage 

OPT.JAVA.ANDROID.IncorrectWakeLockUsage 

IncorrectWakeLockUsage:WakeLockが解除されていることの確認

Illegal Resource Ref 

OPT.JAVA.ANDROID.IllegalResourceRef 

IllegalResourceRef:versionCodeとversionNameのリテラルの確認

Open Redirect Rule 

OPT.JAVA.SEC_JAVA.OpenRedirectRule 

OpenRedirectRule:信頼できないサイトへのURLリダイレクト(オープンリダイレクト)

Missing Super Call 

OPT.JAVA.ANDROID.MissingSuperCall 

MissingSuperCall:スーパーメソッドの呼び出し元が実装内にあることの確認

Reflected File Download 

OPT.JAVA.SEC_JAVA.ReflectedFileDownload 

ReflectedFileDownload:入力の不適切な無害化により、ファイルのダウンロードが発生

Nested Scrolling 

OPT.JAVA.ANDROID.NestedScrolling 

NestedScrolling:スクロールウィジェットのネストを回避する

Resource Injection

OPT.JAVA.SEC_JAVA.ResourceInjection

ResourceInjection:リソース識別子の不適切な制御(リソースインジェクション)

Reference Type 

OPT.JAVA.ANDROID.ReferenceType 

ReferenceType:エイリアス型とリソース型は同じでなければならない

Resource As Color 

OPT.JAVA.ANDROID.ResourceAsColor 

ResourceAsColor:メソッドの呼び出し引数に色のリソースidの使用を回避

Resource Cycle 

OPT.JAVA.ANDROID.ResourceCycle 

ResourceCycle:リソース定義にResourceCycleは禁止

Scroll View Size 

OPT.JAVA.ANDROID.ScrollViewSize 

ScrollViewSize:ScrollViewの子のlayout_width属性とlayout_height属性の確認

Sd Card Path 

OPT.JAVA.ANDROID.SdCardPath 

SdCardPath:SDカードパスへのハードコード参照の回避

Scroll View Count 

OPT.JAVA.ANDROID.ScrollViewCount 

ScrollViewCount:ScrollViewの子は1つだけであることを確認

Text View Edits 

OPT.JAVA.ANDROID.TextViewEdits 

TextViewEdits:TextViewが正しく使われているかを確認

Use Check Permission 

OPT.JAVA.ANDROID.UseCheckPermission 

UseCheckPermission:パーミッションチェックの結果の使用

Use Serialization Judiciously 

OPT.JAVA.ANDROID.UseSerializationJudiciously 

UseSerializationJudiciously:Serializationの代わりにJSONの使用

Uses Min Sdk Attributes 

OPT.JAVA.ANDROID.UsesMinSdkAttributes 

UsesMinSdkAttributes:必要なAPIレベルが指定されているかの確認

Wrong View Cast 

OPT.JAVA.ANDROID.WrongViewCast 

WrongViewCast:割り当てられたidを持つビューのタイプの確認

Wait Sleep In Activit 

OPT.JAVA.ANDROID.WaitSleepInActivit 

WaitSleepInActivit:アクティビティでのThread.waitやThread.sleepの使用の回避

J DB C 

OPT.JAVA.BEANS.JDBC 

JDBC:BeanクラスでのJDBCの使用回避

S Z B L 

OPT.JAVA.BEANS.SZBL 

SZBL:Beanクラスがjava.io.Serializableを実装していることを確認

Avoid Use Replace Methods Rule 

OPT.JAVA.CADCAR.AvoidUseReplaceMethodsRule 

AvoidUseReplaceMethodsRule:正規表現を想定しているStringメソッドで「.」(ドット文字)を使用しない

P J D C C 

OPT.JAVA.CDCI.PJDCC 

PJDCC:publicなクラスとインタフェースにはJavadocコメントを付ける

S Y N 

OPT.JAVA.CFFSERVLET.SYN 

SYN:サーブレットのsynchronizedの使用の最小化

C T N L 

OPT.JAVA.CMETRICS.CTNL 

CTNL:コード行が多すぎるクラス/インタフェースの回避

N O F 

OPT.JAVA.CMETRICS.NOF 

NOF:フィールドの最大許容数

N O M 

OPT.JAVA.CMETRICS.NOM 

NOM:メソッドの最大許容数

T C C 

OPT.JAVA.CMETRICS.TCC 

TCC:循環的な複雑度

A A I 

OPT.JAVA.CNU.AAI 

AAI:インタフェースでの不必要な修飾子の使用回避

D I 

OPT.JAVA.CNU.DI 

DI:インポートの重複回避

E I 

OPT.JAVA.CNU.EI 

EI:多すぎるインポート行の回避

E P N U 

OPT.JAVA.CNU.EPNU 

EPNU:未使用パラメータの回避

E V N U 

OPT.JAVA.CNU.EVNU 

EVNU:未使用のローカル変数の回避

P F 

OPT.JAVA.CNU.PF 

PF:未使用のprivateフィールドの回避

P M 

OPT.JAVA.CNU.PM 

PM:未使用のprivateメソッドとコンストラクタの回避

U I 

OPT.JAVA.CNU.UI 

UI:未使用のインポートの回避

E I S 

OPT.JAVA.COL.EIS 

EIS:コレクションに対して並行した反復処理の回避

Equals Hash Code 

OPT.JAVA.COMP.EqualsHashCode 

EqualsHashCode:java.lang.Object.equals()とjava.lang.Object.hashCode()は常に上書きする

Method Equals 

OPT.JAVA.COMP.MethodEquals 

MethodEquals:メソッド名がequals()であり、equal()でないことの確認

Avoid Return Object 

OPT.JAVA.CONV.AvoidReturnObject 

AvoidReturnObject:戻り値はjava.lang.Objectではなく特定の型にする

Avoid Method Invok Only Super Method 

OPT.JAVA.DECL.AvoidMethodInvokOnlySuperMethod 

AvoidMethodInvokOnlySuperMethod:上書きされたスーパーメソッドのみを呼び出すメソッドの回避

Avoid Not Use Field 

OPT.JAVA.DECL.AvoidNotUseField 

AvoidNotUseField:未使用フィールドの回避

Correct Hash Code 

OPT.JAVA.DECL.CorrectHashCode 

CorrectHashCode:hashCode()メソッドのスペルが正しいことを確認

Correct To String 

OPT.JAVA.DECL.CorrectToString 

CorrectToString:メソッド名がtostring()ではなくtoString()であることを確認

Declare Equals Method Of Compareable 

OPT.JAVA.DECL.DeclareEqualsMethodOfCompareable 

DeclareEqualsMethodOfCompareable:java.lang.Comparableを実装するクラスでは、常にequals()メソッドを宣言

Signature Standard Equals 

OPT.JAVA.DECL.SignatureStandardEquals 

SignatureStandardEquals:equalsメソッドには常に標準的な記述方式を使用

Make your clone() method final for security 

OPT.JAVA.DECLARA.CLONE 

CLONE:Cloneableクラスのclone()はCloneNotSupportedExceptionをスローする

Trust Boundary Violation Rule

OPT.JAVA.SEC_JAVA.TrustBoundaryViolationRule 

TrustBoundaryViolationRule:信頼境界線違反

U C C 

OPT.JAVA.DECLARA.UCC 

UCC:staticメンバを持つクラスのprivateコンストラクタ

Avoid Remote Exception 

OPT.JAVA.EJB.AvoidRemoteException 

AvoidRemoteException:RemoteインタフェースのメソッドからはRemoteExceptionをスローする

Dont Avoid Remote Exception 

OPT.JAVA.EJB.DontAvoidRemoteException 

DontAvoidRemoteException:ローカルインタフェースのメソッドから「java.rmi.RemoteException」のスロー禁止

Public Constructor Without Parameters 

OPT.JAVA.EJB.PublicConstructorWithoutParameters 

PublicConstructorWithoutParameters:すべてのEJBクラスは、パラメータを持たないpublicコンストラクタを持つことが必要

Reuse EJB Home Instances 

OPT.JAVA.EJB.ReuseEJBHomeInstances 

ReuseEJBHomeInstances:常にEJBHomeインスタンスを再利用する

Avoid New Throwable 

OPT.JAVA.EXCP.AvoidNewThrowable 

AvoidNewThrowable:java.lang.Throwableの新しいインスタンスの作成の回避

Avoid Null Pointer Exception 

OPT.JAVA.EXCP.AvoidNullPointerException 

AvoidNullPointerException:NullPointerExceptionの例外キャッチの回避

Avoid Throw Error 

OPT.JAVA.EXCP.AvoidThrowError 

AvoidThrowError:java.lang.Errorのスローの回避

Avoid Throw Runtime Excetions 

OPT.JAVA.EXCP.AvoidThrowRuntimeExcetions 

AvoidThrowRuntimeExcetions:RuntimeExceptionのスローの回避

Avoid Empty Methods Finalize 

OPT.JAVA.FIN.AvoidEmptyMethodsFinalize 

AvoidEmptyMethodsFinalize:空のfinalize()メソッドの回避

Avoid Overload Finalize 

OPT.JAVA.FIN.AvoidOverloadFinalize 

AvoidOverloadFinalize:メソッドfinalize()のオーバーロードの回避

Dont Call Finalize 

OPT.JAVA.FIN.DontCallFinalize 

DontCallFinalize:明示的にfinalize()を呼び出さない

N C A C 

OPT.JAVA.FMETODOS.NCAC 

NCAC:abstractクラスのコンストラクタからabstractメソッドの呼び出し禁止

O V E R R I D E 

OPT.JAVA.FMETODOS.OVERRIDE 

OVERRIDE:Object.hashCode()をオーバーライドする場合は、Object.equals()もオーバーライド

A U T P 

OPT.JAVA.GC.AUTP 

AUTP:プリミティブデータ型を文字列に変換する際の不要な一時的ラッパーオブジェクトの回避

D U D 

OPT.JAVA.GC.DUD 

DUD:Date[]の代わりにlong[]を使用

F C F 

OPT.JAVA.GC.FCF 

FCF:finalize()からsuper.finalize()を呼び出す

OS T M 

OPT.JAVA.GC.OSTM 

OSTM:reset()またはclose()を呼び出すことで、ObjectOutputStreamsの潜在的なメモリリークの防止

S T V 

OPT.JAVA.GC.STV 

STV:staticのコレクションの回避

Avoid Call Interrupted Object 

OPT.JAVA.HEB.AvoidCallInterruptedObject 

AvoidCallInterruptedObject:任意のスレッドでのThread.interrupted()の呼び出し回避

Avoid Call Run 

OPT.JAVA.HEB.AvoidCallRun 

AvoidCallRun:Thread.run()の呼び出し回避

Avoid Sleep Inside While 

OPT.JAVA.HEB.AvoidSleepInsideWhile 

AvoidSleepInsideWhile:while()やsleep()の使用を避け、代わりにwait()やnotify()の使用

Avoid Synchronized Blocks Notify 

OPT.JAVA.HEB.AvoidSynchronizedBlocksNotify 

AvoidSynchronizedBlocksNotify:ステートメントとしてnotify()またはnotifyAll()を呼び出す同期ブロックの回避

Avoid Synchronized Object Lock 

OPT.JAVA.HEB.AvoidSynchronizedObjectLock 

AvoidSynchronizedObjectLock:java.util.concurrent.locks.Lockオブジェクトの同期の回避

Avoid Thread Destroy 

OPT.JAVA.HEB.AvoidThreadDestroy 

AvoidThreadDestroy:java.lang.Thread.destroyの呼び出し回避

Avoid Static Instance Class Without Fields 

OPT.JAVA.INIC.AvoidStaticInstanceClassWithoutFields 

AvoidStaticInstanceClassWithoutFields:すべてのstaticフィールドが初期化される前の、staticイニシャライザでの新しいオブジェクト生成の回避

A M I 

OPT.JAVA.INICIA.AMI 

AMI:1行で複数の変数を同じ値で初期化しない

N F S 

OPT.JAVA.INICIA.NFS 

NFS:初期化処理時では、final宣言されていないstaticフィールドの使用は禁止

S F 

OPT.JAVA.INICIA.SF 

SF:すべてのstaticフィールドの初期化

Avoid System Out Err 

OPT.JAVA.IO.AvoidSystemOutErr 

AvoidSystemOutErr:ログ出力にはSystem.outやSystem.errの代わりに独自のライブラリの使用

C S 

OPT.JAVA.IO.CS 

CS:finallyブロックで入出力リソースを閉じる

Dont Use Print Stack Trace 

OPT.JAVA.IO.DontUsePrintStackTrace 

DontUsePrintStackTrace:printStackTraceメソッドを使用禁止

F I L B U F 

OPT.JAVA.IO.FILBUF 

FILBUF:すべての入出力リソースは、バッファを持つことが必要

S I E 

OPT.JAVA.IO.SIE 

SIE:System.err.print()およびSytem.err.println()ステートメントの使用回避

S I O 

OPT.JAVA.IO.SIO 

SIO:System.out.println()およびSystem.out.print()ステートメントの使用回避

Avoid Security Manager 

OPT.JAVA.J2EE.AvoidSecurityManager 

AvoidSecurityManager:java.lang.SecurityManagerの使用回避

Avoid Set Property 

OPT.JAVA.J2EE.AvoidSetProperty 

AvoidSetProperty:java.security.setProperty()の呼び出し回避

Dont Extend Class Loader 

OPT.JAVA.J2SE.DontExtendClassLoader 

DontExtendClassLoader:java.lang.ClassLoaderの継承は禁止

Final Class Extends Permission 

OPT.JAVA.J2SE.FinalClassExtendsPermission 

FinalClassExtendsPermission:java.security.Permissionを継承するクラスはfinal宣言が必要

Unsafe Reflection

OPT.JAVA.SEC_JAVA.UnsafeReflection 

UnsafeReflection:クラスまたはコードを選択するための外部制御入力の使用(安全でないリフレクション)

XPath Injection Rule 

OPT.JAVA.SEC_JAVA.XPathInjectionRule 

XPathInjectionRule:XPath式内のデータの不適切な無害化(XPathインジェクション)

Xslt Injection

OPT.JAVA.SEC_JAVA.XsltInjection 

XsltInjection:XML インジェクション(別名、ブラインドXPathインジェクション)

Use Cache With Idempotent And Safe Methods 

OPT.JAVA.JAX.UseCacheWithIdempotentAndSafeMethods 

UseCacheWithIdempotentAndSafeMethods:冪等(べきとう:同じ結果になる)であり安全なHTTPメソッドではキャッシュの使用

Validate Endpoint Business Methods 

OPT.JAVA.JAX.ValidateEndpointBusinessMethods 

ValidateEndpointBusinessMethods:エンドポイント実装クラスのビジネスメソッドは、いくつかの要件に従うことが必要

Validate Endpoint Implementation Class 

OPT.JAVA.JAX.ValidateEndpointImplementationClass 

ValidateEndpointImplementationClass:エンドポイントの実装クラスは、いくつかの要件に従うことが必要

C DB C 

OPT.JAVA.JDBC.CDBC 

CDBC:JDBC接続をfinallyブロックで閉じる

U P C 

OPT.JAVA.JDBC.UPC 

UPC:コネクションプールの使用

Avoid Contructors Config Tests 

OPT.JAVA.JUNIT_JAVA.AvoidContructorsConfigTests 

AvoidContructorsConfigTests:テストケースの設定にコンストラクタの使用禁止

C E L 

OPT.JAVA.LOOP.CEL 

CEL:ループ内でのメソッド呼び出しの使用回避

L O O P2 

OPT.JAVA.LOOP.LOOP2 

LOOP2:ループ本体で一時オブジェクトのインスタンス化は禁止

P I 

OPT.JAVA.LOOP.PI 

PI:whileループで問題のある構文の回避

S Y N 

OPT.JAVA.LOOP.SYN 

SYN:ループ内での同期メソッド/ブロックの呼び出しの回避

T R Y 

OPT.JAVA.LOOP.TRY 

TRY:ループ内でのtry文の使用の回避

Avoid Empty Jar Zip 

OPT.JAVA.MEM.AvoidEmptyJarZip 

AvoidEmptyJarZip:空のJARやZIPファイルの作成回避

Avoid Throw Inside Finally 

OPT.JAVA.MEM.AvoidThrowInsideFinally 

AvoidThrowInsideFinally:finallyブロック内でコマンドのスローの回避

L E V E L 

OPT.JAVA.OOP.LEVEL 

LEVEL:ネストが多すぎる内部クラスの回避

A E C B 

OPT.JAVA.PB.AECB 

AECB:空のボディを持つキャッチブロックの回避

C L P 

OPT.JAVA.PB.CLP 

CLP:プリミティブデータ型の低い精度へのキャストの回避

D C F 

OPT.JAVA.PB.DCF 

DCF:浮動小数点型の比較の回避

D C P 

OPT.JAVA.PB.DCP 

DCP:文字列連結演算子(+)を数字の連結に使用するのは避け、数値の加算にのみ使用

D N I F 

OPT.JAVA.PB.DNIF 

DNIF:入れ子のレベルが多すぎるIF文の回避

D S U P 

OPT.JAVA.PB.DSUP 

DSUP: switch文の最後にdefault句を置く - case

E M S I 

OPT.JAVA.PB.EMSI 

EMSI:空のstaticブロックの回避

E Q L 

OPT.JAVA.PB.EQL 

EQL:equals()メソッドの実装ではgetClass()を使用

E Q L2 

OPT.JAVA.PB.EQL2 

EQL2:equals()メソッドの実装内でinstanceofを使用

E S B L 

OPT.JAVA.PB.ESBL 

ESBL: 空の同期ブロックの回避

F E B 

OPT.JAVA.PB.FEB 

FEB:「for」や「while」で空の本体の回避

F L V A 

OPT.JAVA.PB.FLVA 

FLVA:forループの本体でループ制御変数に代入することは禁止

I E B 

OPT.JAVA.PB.IEB 

IEB: 本体が空のif文の回避

M A I N 

OPT.JAVA.PB.MAIN 

MAIN:メソッド名main()は、エントリーポイントのメソッドにのみ使用

Don't use masterpage files C 

OPT.JAVA.PB.MPC 

MPC:クラスのメンバ名と競合するパラメータメソッド名の回避

N D C 

OPT.JAVA.PB.NDC 

NDC:ErrorとThrowableの直接的または間接的なサブクラスの定義の回避

N X R E 

OPT.JAVA.PB.NXRE 

NXRE:RuntimeExceptionの直接的または間接的なサブクラスの定義の回避

Non Heritable Exception Classes 

OPT.JAVA.PB.NonHeritableExceptionClasses 

NonHeritableExceptionClasses:特定のクラスを継承する例外の定義禁止

P D S 

OPT.JAVA.PB.PDS 

PDS:各switch文に「default」ラベルを指定

S B C 

OPT.JAVA.PB.SBC 

SBC:不正なcase文によるswitch文の使用の回避

S B D F 

OPT.JAVA.PB.SBDF 

SBDF:switch文のdefaultラベルにbreakまたはreturnステートメントの指定

U E I2 

OPT.JAVA.PB.UEI2 

UEI2:文字列の比較にequals()の使用

U F S T 

OPT.JAVA.PB.UFST 

UFST:条件なしのIfブロックの回避

Avoid File Separators 

OPT.JAVA.PORT.AvoidFileSeparators 

AvoidFileSeparators:java.io.Fileでファイルを作成する際に、コードにディレクトリ区切り文字を直接書き込まない

Avoid Implement Peer Interfaces 

OPT.JAVA.PORT.AvoidImplementPeerInterfaces 

AvoidImplementPeerInterfaces:java.awt.peerインタフェースの実装の回避

Avoid Call Bean From Servlet 

OPT.JAVA.RECBAS.AvoidCallBeanFromServlet 

AvoidCallBeanFromServlet:サーブレットのfinalize()メソッドからjava.bean.*の呼び出し回避

Avoid Call SQL From Servlet 

OPT.JAVA.RECBAS.AvoidCallSQLFromServlet 

AvoidCallSQLFromServlet:サーブレットのfinalize()メソッドからjavax.sql.*の呼び出し回避

Avoid Get Declared Field 

OPT.JAVA.REFL.AvoidGetDeclaredField 

AvoidGetDeclaredField:java.lang.Class.getDeclaredFieldの呼び出し回避

Avoid Call Driver Manager From Servlet 

OPT.JAVA.RENDESC.AvoidCallDriverManagerFromServlet 

AvoidCallDriverManagerFromServlet:サーブレットからjava.sql.DriverManagerの呼び出し回避

Avoid Call Process From Servlet 

OPT.JAVA.RENDESC.AvoidCallProcessFromServlet 

AvoidCallProcessFromServlet:サーブレットからjava.lang.Processの呼び出し回避

Avoid Call System From Servlet 

OPT.JAVA.RENDESC.AvoidCallSystemFromServlet 

AvoidCallSystemFromServlet:サーブレットからjava.lang.Systemの呼び出し回避

P J D C F 

OPT.JAVA.RGD.PJDCF 

PJDCF:publicフィールドにはJavadocコメントを付ける

A S F I 

OPT.JAVA.RGM.ASFI 

ASFI:abstractメソッドとstatic finalフィールドのみを持つクラスをインターフェイスとして再宣言する

C T O R 

OPT.JAVA.RGM.CTOR 

CTOR:コンストラクタからのfinalでもstaticでもprivateでもないメソッドの呼び出し回避

M S F 

OPT.JAVA.RGM.MSF 

MSF:「finalでないstatic」のフィールドの多用回避

N U O T 

OPT.JAVA.RGM.NUOT 

NUOT:三項演算子の使用禁止

A R L L 

OPT.JAVA.RGME.ARLL 

ARLL:ループ条件下で配列の「length」プロパティへのアクセス禁止

A G Q S 

OPT.JAVA.RGOR.AGQS 

AGQS:getQueryString()の代わりに、getParameter()の使用

A M C O 

OPT.JAVA.RGOR.AMCO 

AMCO:同じオブジェクトや変数に繰り返しキャストの回避(各タイプのキャストは最大3つまで)

Dont Use Reflection 

OPT.JAVA.RGOR.DontUseReflection 

DontUseReflection:リフレクションの使用回避

E I O F 

OPT.JAVA.RGOR.EIOF 

EIOF:型のテストを行うif/else-ifチェーンの回避

S D F 

OPT.JAVA.RGOR.SDF 

SDF:日付書式クラスjava.text.SimpleDateFormatは多くのリソースを使用

Avoid Runtime And System Classes 

OPT.JAVA.RGP.AvoidRuntimeAndSystemClasses 

AvoidRuntimeAndSystemClasses:RuntimeクラスとSystemクラスの使用禁止

Do not use applets in an application client 

OPT.JAVA.RGS.NUA 

NUA:アプリケーションクライアント層でアプレットの使用禁止

Transient fields in Serializable classes 

OPT.JAVA.RGS.SER 

SER:「Serializable」クラスの「Transient」フィールド

Avoid EJB Explicit Server Socket 

OPT.JAVA.SEC_JAVA.AvoidEJBExplicitServerSocket 

AvoidEJBExplicitServerSocket:EJBの不適切な実装:Socketの使用

Avoid EJB Explicit Thread Management 

OPT.JAVA.SEC_JAVA.AvoidEJBExplicitThreadManagement 

AvoidEJBExplicitThreadManagement:EJBでの明示的なスレッド管理の回避

Avoid J2EE Jvm Exit 

OPT.JAVA.SEC_JAVA.AvoidJ2EEJvmExit 

AvoidJ2EEJvmExit:J2EE アプリケーションのJVMシャットダウンコードの回避

Cookies In Security Decision

OPT.JAVA.SEC_JAVA.CookiesInSecurityDecision 

CookiesInSecurityDecision:セキュリティ決定における検証と整合性チェックなしのCookieへの依存

Database Access Control Rule 

OPT.JAVA.SEC_JAVA.DatabaseAccessControlRule 

DatabaseAccessControlRule:特定のクラス以外からのデータベースへのクエリの回避

J2ee File Disclosure Rule 

OPT.JAVA.SEC_JAVA.J2eeFileDisclosureRule 

J2eeFileDisclosureRule:サーバー側のJ2EE forward/includeでのファイル公開

Not Overridable Method Rule 

OPT.JAVA.SEC_JAVA.NotOverridableMethodRule 

NotOverridableMethodRule:オーバーライドできないメソッド

Race Condition Format Flaw 

OPT.JAVA.SEC_JAVA.RaceConditionFormatFlaw 

RaceConditionFormatFlaw:不適切な同期処理で共有リソースを使用した同時実行(競合状態)

Race Condition Servlet 

OPT.JAVA.SEC_JAVA.RaceConditionServlet 

RaceConditionServlet:Javaサーブレットにおける競合状態

Security Check In Overridable Method Rule 

OPT.JAVA.SEC_JAVA.SecurityCheckInOverridableMethodRule 

SecurityCheckInOverridableMethodRule:セキュリティチェックを実行するメソッドは、privateまたはfinalとして宣言することが必要

Spring No Anti Xss Configuration 

OPT.JAVA.SEC_JAVA.SpringNoAntiXssConfiguration

SpringNoAntiXssConfiguration:デフォルトのHTMLエスケープの使用(OWASP-2021: [A5]、WASC: [08]、PCI DSS: [6.5.7]、ASVS-v4.0.2: [3.4.5] )

Unhandled SSL Exception Rule 

OPT.JAVA.SEC_JAVA.UnhandledSSLExceptionRule 

UnhandledSSLExceptionRule:未処理のSSL例外

User Controlled SQL Primary Key

OPT.JAVA.SEC_JAVA.UserControlledSQLPrimaryKey 

UserControlledSQLPrimaryKey:ユーザ制御の主キーのクエリ使用禁止

Avoid Call Next In Has Next 

OPT.JAVA.SENT.AvoidCallNextInHasNext 

AvoidCallNextInHasNext:hasNext()の中でのnext()の呼び出し回避

Avoid Call Set Size Inside Component Resized 

OPT.JAVA.SENT.AvoidCallSetSizeInsideComponentResized 

AvoidCallSetSizeInsideComponentResized:componentResized()内からのsetSize()の呼び出し回避

Avoid Empty Sentences Switch 

OPT.JAVA.SENT.AvoidEmptySentencesSwitch 

AvoidEmptySentencesSwitch:空のswitch文の回避

Avoid Declare Method Read Object 

OPT.JAVA.SERI.AvoidDeclareMethodReadObject 

AvoidDeclareMethodReadObject:readObject()メソッドのsynchronized宣言の回避

Avoid Serializable Classes 

OPT.JAVA.SERI.AvoidSerializableClasses 

AvoidSerializableClasses:シリアライズ可能な内部クラスを持つ、シリアライズ不可能なクラスの回避

Always Use Ids As Bean Identifiers 

OPT.JAVA.SPRING.AlwaysUseIdsAsBeanIdentifiers 

AlwaysUseIdsAsBeanIdentifiers:JavaBeansのid属性をJavaBeansの識別子として使う

Avoid Beans With The Same Id Across Diferent Descriptors 

OPT.JAVA.SPRING.AvoidBeansWithTheSameIdAcrossDiferentDescriptors 

AvoidBeansWithTheSameIdAcrossDiferentDescriptors:JavaBeansのid属性がすべてのXML構成ファイルで一意であることを確認

Avoid Hardcoding Null 

OPT.JAVA.SPRING.AvoidHardcodingNull 

AvoidHardcodingNull:プロパティやパラメータをハードコードされたnullで初期化することは避ける

Avoid Retrieving More Than One Batch At Time 

OPT.JAVA.SPRING.AvoidRetrievingMoreThanOneBatchAtTime 

AvoidRetrievingMoreThanOneBatchAtTime:一度に複数のアイテムのSpring Batchの取得回避

Avoid Using Default Package With Auto Scanning 

OPT.JAVA.SPRING.AvoidUsingDefaultPackageWithAutoScanning 

AvoidUsingDefaultPackageWithAutoScanning:Springの自動スキャン機能を使う際は、デフォルトパッケージの使用の回避

Avoid Wildcards When Loading Resource From Class Path 

OPT.JAVA.SPRING.AvoidWildcardsWhenLoadingResourceFromClassPath 

AvoidWildcardsWhenLoadingResourceFromClassPath:クラスパスからリソースをロードする際のワイルドカードの使用回避

Enable Auto Configuration Annotation Must Be Unique 

OPT.JAVA.SPRING.EnableAutoConfigurationAnnotationMustBeUnique 

EnableAutoConfigurationAnnotationMustBeUnique:EnableAutoConfigurationのアノテーションは一意であることが必要

Refer Imported Resources To The Classpath 

OPT.JAVA.SPRING.ReferImportedResourcesToTheClasspath 

ReferImportedResourcesToTheClasspath:インポートされたリソースをクラスパスに参照する

Use A Proper Base Package When Using Component Scanning 

OPT.JAVA.SPRING.UseAProperBasePackageWhenUsingComponentScanning 

UseAProperBasePackageWhenUsingComponentScanning:コンポーネントスキャン機能を使う際は、適切なベースパッケージを使用

Use A Top Package For Main Application Class 

OPT.JAVA.SPRING.UseATopPackageForMainApplicationClass 

UseATopPackageForMainApplicationClass:メインのアプリケーションクラスはルートパッケージに属さなければならない

Use Constructor Based Dependency Injection 

OPT.JAVA.SPRING.UseConstructorBasedDependencyInjection 

UseConstructorBasedDependencyInjection:コンストラクタインジェクション(Constructor Based Dependency Injection)の使用

A C D O 

OPT.JAVA.STR.ACDO 

ACDO:Stringクラスのコンストラクタの使用防止

P C T S 

OPT.JAVA.STR.PCTS 

PCTS:1文字の比較には、startsWith()の代わりにcharAt()を使用

S T OS 

OPT.JAVA.STR.STOS 

STOS: 文字列でのtoStringメソッドの使用の回避

Usb In Loop 

OPT.JAVA.STR.UsbInLoop

UsbInLoop:ループ内での文字列連結演算子「+」の回避

U S C 

OPT.JAVA.STR.USC 

USC:変更されることのない文字列はStringBufferに保存しない

Switch Fully Covers Enumeration 

OPT.JAVA.SWITCH.SwitchFullyCoversEnumeration 

SwitchFullyCoversEnumeration:既存の列挙要素のswitch文にはdefault句と、要素と同じ数のcase句の使用

A N F 

OPT.JAVA.TRS.ANF 

ANF:notifyの使用を避け、代わりにnotifyAll()の使用

Avoid using variables oftype java.lang.ThreadGroup

OPT.JAVA.TRS.AUTG 

AUTG:java.lang.ThreadGroup型の変数の使用回避

M R U N 

OPT.JAVA.TRS.MRUN 

MRUN:スレッドのサブクラスにはrun()メソッドが必要

N S M 

OPT.JAVA.TRS.NSM 

NSM:メソッド宣言でのsynchronized修飾子の使用回避

Avoid Ejs 

OPT.JAVA.WEBS.AvoidEjs 

AvoidEjs:com.ibm.ejs.*パッケージの使用回避

Avoid Ws 

OPT.JAVA.WEBS.AvoidWs 

AvoidWs:com.ibm.wsおよびcom.ibm.websphereパッケージの使用回避

Context Sensitive Data Is Kept Secure 

OPT.JAVA.ANDROID.ContextSensitiveDataIsKeptSecure 

ContextSensitiveDataIsKeptSecure:コンテキストによって作成されたデータへの不適切なアクセスの回避

N IP 

OPT.JAVA.DECLARA.NIP 

NIP:ソースコードにおけるIPアドレスの書き込み禁止

Avoid Exposing All Endpointl Public Methods 

OPT.JAVA.JAX.AvoidExposingAllEndpointlPublicMethods 

AvoidExposingAllEndpointlPublicMethods:すべてのpublicメソッドの露出を避けるために、エンドポイントインターフェースを指定

Information Exposure Through Error Message

OPT.JAVA.SEC_JAVA.InformationExposureThroughErrorMessage 

InformationExposureThroughErrorMessage:エラーメッセージによる機密情報の露出の回避

Packaged Private Key 

OPT.JAVA.ANDROID.PackagedPrivateKey 

PackagedPrivateKey:パッケージに秘密鍵ファイルの格納回避

Secure Random 

OPT.JAVA.ANDROID.SecureRandom 

SecureRandom:SecureRandomは固定シード(fixed seed)での使用禁止

Hardcoded Salt Rule 

OPT.JAVA.SEC_JAVA.HardcodedSaltRule 

HardcodedSaltRule:安全でないハードコードされたソルト

Inadequate Padding Rule 

OPT.JAVA.SEC_JAVA.InadequatePaddingRule 

InadequatePaddingRule:不十分なパディング

Insecure Randomness Rule 

OPT.JAVA.SEC_JAVA.InsecureRandomnessRule 

InsecureRandomnessRule:安全でない標準的な擬似乱数生成器

Insecure Transport

OPT.JAVA.SEC_JAVA.InsecureTransport 

InsecureTransport:安全でない送信

Insufficient Key Size Rule

OPT.JAVA.SEC_JAVA.InsufficientKeySizeRule 

InsufficientKeySizeRule:脆弱な暗号方式・鍵長の検出

情報

Dont Modify Access Security 

OPT.JAVA.EJB.DontModifyAccessSecurity 

DontModifyAccessSecurity:java.security設定オブジェクト(Policy、Security、Provider、Principal、KeyStore)へのアクセスや変更の禁止

情報

Action names must end in Action 

OPT.JAVA.ACTIONS.BNMC 

BNMC:アクション名はActionで終わること

情報

Use a defined package for Actions 

OPT.JAVA.ACTIONS.MAUB 

MAUB:アクションに定義されたパッケージを使用する

情報

Avoid Actions with a simple forward 

OPT.JAVA.ACTIONS.OROP 

OROP:単純なフォワードを行うアクションの回避

情報

Declare unique exception for Actions 

OPT.JAVA.ACTIONS.THME 

THME:一意の例外をスローするActionメソッドを宣言する

情報

Avoid Creating Unnecesary Objects 

OPT.JAVA.ANDROID.AvoidCreatingUnnecesaryObjects 

AvoidCreatingUnnecesaryObject:文字列の作成の回避

情報

Avoid Internal Getter Setter 

OPT.JAVA.ANDROID.AvoidInternalGetterSetter 

AvoidInternalGetterSetter:getter/setterの内部使用を回避

情報

Private Inner Class Access 

OPT.JAVA.ANDROID.PrivateInnerClassAccess 

PrivateInnerClassAccess:プライベートな内部クラスによるプライベートなアクセス方法に代わるパッケージの考慮

情報

Use Value Of 

OPT.JAVA.ANDROID.UseValueOf 

UseValueOf:ラッパークラスのコンストラクタ呼び出しの回避

情報

E Q U A L 

OPT.JAVA.BEANS.EQUAL 

EQUAL:JavaBeanクラスのObject.equals()メソッドをオーバーライドする

情報

Avoid Call To String 

OPT.JAVA.CADCAR.AvoidCallToString 

AvoidCallToString:Stringオブジェクトに対するtoString()の呼び出しの回避

情報

M D J D T 

OPT.JAVA.CDCI.MDJDT 

MDJDT:クラスとインターフェースのJavadocコメントで@deprecatedタグの使用

情報

M J J D T 

OPT.JAVA.CDCI.MJJDT 

MJJDT:クラスとインターフェースのJavadocコメントで@sinceタグの使用

情報

M S J D T 

OPT.JAVA.CDCI.MSJDT 

MSJDT:クラスとインターフェースのJavadocコメントで@seeタグの使用

情報

P J D C C4 

OPT.JAVA.CDCI.PJDCC4 

PJDCC4:プライベートクラスとインターフェースにJavadocコメントを付ける

情報

M R D C2 

OPT.JAVA.CDM.MRDC2 

MRDC2:Javadocコメントで、protectedメソッドに@returnタグを使用

情報

M R D C4 

OPT.JAVA.CDM.MRDC4 

MRDC4:Javadocコメントで、privateメソッドに@returnタグを使用

情報

P A R A M2 

OPT.JAVA.CDM.PARAM2 

PARAM2:Javadocコメントで、protectedメソッドの各パラメーターに@paramタグを使用

情報

P A R A M4 

OPT.JAVA.CDM.PARAM4 

PARAM4:Javadocコメントで、privateメソッドの各パラメータに対して@paramタグを使用

情報

T H R O W2 

OPT.JAVA.CDM.THROW2 

THROW2:Javadocコメントで、protectedメソッドには@throwsまたは@exceptionタグを使用

情報

T H R O W4 

OPT.JAVA.CDM.THROW4 

THROW4:Javadocコメントで、privateメソッドには@throwsまたは@exceptionタグを使用

情報

C R T E 

OPT.JAVA.CFFEJB.CRTE 

CRTE:ejbCreate()メソッドは、staticでもfinalでもなくpublicの宣言をする

情報

F N D M 

OPT.JAVA.CFFEJB.FNDM 

FNDM:finderメソッドは、staticでもfinalでもなくpublicの宣言をする

情報

P C R T E 

OPT.JAVA.CFFEJB.PCRTE 

PCRTE:ejbPostCreate()メソッドは、staticでもfinalでもなくpublicの宣言をする

情報

A L B L 

OPT.JAVA.CNOM.ALBL 

ALBL:コードブロックを中括弧で囲む正当性

情報

E L E M 

OPT.JAVA.CNOM.ELEM 

ELEM:Javaのすべての要素(変数、メソッド、コンストラクタ)は、命名規則に遵守

情報

I F V 

OPT.JAVA.CNOM.IFV 

IFV:インターフェイスのフィールド名には、すべて大文字を使う

情報

N N M A 

OPT.JAVA.CNOM.NNMA 

NNMA:Javaパッケージの命名規則に遵守

情報

Avoid Short If Else 

OPT.JAVA.COND.AvoidShortIfElse 

AvoidShortIfElse:短い条件でのif else文の使用回避

情報

Avoid Unnecessary Constructor 

OPT.JAVA.CONST.AvoidUnnecessaryConstructor 

AvoidUnnecessaryConstructor:不要なコンストラクタの回避

情報

Avoid Local Variables Differ Upper Lower Case 

OPT.JAVA.CONV.AvoidLocalVariablesDifferUpperLowerCase 

AvoidLocalVariablesDifferUpperLowerCase:大文字と小文字だけが異なる変数名の回避

情報

Avoid Same Class Field Names

OPT.JAVA.CONV.AvoidSameClassFieldNames 

AvoidSameClassFieldNames:クラスと同じ名前のフィールドの回避

情報

Avoid Short Class Names 

OPT.JAVA.CONV.AvoidShortClassNames 

AvoidShortClassNames:5文字未満のクラス名の回避

情報

Use Correct Format Inner Classes 

OPT.JAVA.CONV.UseCorrectFormatInnerClasses 

UseCorrectFormatInnerClasses:内部クラスの不正な命名の回避

情報

Use Is If Return Boolean 

OPT.JAVA.CONV.UseIsIfReturnBoolean 

UseIsIfReturnBoolean:Boolean値を返すメソッド名だけに接頭辞「is」を追加

情報

Avoid Declare Fields Only Null 

OPT.JAVA.DECL.AvoidDeclareFieldsOnlyNull 

AvoidDeclareFieldsOnlyNull:常にnullを返すフィールドの宣言の回避

情報

Avoid Declare Method Final And Static 

OPT.JAVA.DECL.AvoidDeclareMethodFinalAndStatic 

AvoidDeclareMethodFinalAndStatic:staticメソッドをfinalとして宣言しない

情報

Avoid Declare Method Private And Final 

OPT.JAVA.DECL.AvoidDeclareMethodPrivateAndFinal 

AvoidDeclareMethodPrivateAndFinal:privateメソッドをfinalとして宣言しない

情報

Dont Extend Object 

OPT.JAVA.DECL.DontExtendObject 

DontExtendObject:クラスが明示的に「java.lang.Object」を継承しないことを確認

情報

Signature Standard To String 

OPT.JAVA.DECL.SignatureStandardToString 

SignatureStandardToString:toString()は常に標準的な記述方式で宣言する

情報

C H A I N 

OPT.JAVA.DECLARA.CHAIN 

CHAIN:複数の(オーバーロードされた)コンストラクタがある場合、コンストラクタ内でジェネリックコンストラクタを呼び出すには「this」を使用

情報

I Don't use masterpage files T2 

OPT.JAVA.DECLARA.IMPT2 

IMPT2:クラスのインポート時にワイルドカードを使用

情報

Leave A White Space Between Arguments 

OPT.JAVA.DECLARA.LeaveAWhiteSpaceBetweenArguments 

LeaveAWhiteSpaceBetweenArguments:引数の間に空白を入れる

情報

O C C 

OPT.JAVA.DECLARA.OCC 

OCC:拡張子(java)ファイル内のコード構成のチェック

情報

Avoid Incorrect Format Of Final Fields 

OPT.JAVA.DEN.AvoidIncorrectFormatOfFinalFields 

AvoidIncorrectFormatOfFinalFields:final staticフィールドの不正な命名の回避

情報

Avoid Incorrect Format Of Final Non Static Fields 

OPT.JAVA.DEN.AvoidIncorrectFormatOfFinalNonStaticFields 

AvoidIncorrectFormatOfFinalNonStaticFields:finalではないstaticフィールドの不正な命名の回避

情報

Avoid Incorrect Format Of Local Vars 

OPT.JAVA.DEN.AvoidIncorrectFormatOfLocalVars 

AvoidIncorrectFormatOfLocalVars:ローカル変数の不正な命名の回避

情報

Avoid Incorrect Format Of Non Static Fields 

OPT.JAVA.DEN.AvoidIncorrectFormatOfNonStaticFields 

AvoidIncorrectFormatOfNonStaticFields:staticではないフィールドの不正な命名の回避

情報

Avoid Use Of Dollar In Names 

OPT.JAVA.DEN.AvoidUseOfDollarInNames 

AvoidUseOfDollarInNames:クラス名、メソッド名、変数名にドル記号の使用回避

情報

Interfaces Start With Capital 

OPT.JAVA.DEN.InterfacesStartWithCapital 

InterfacesStartWithCapital:インターフェイス名は常に大文字で始める

情報

Method Not Start With Lowercase Or Under Score 

OPT.JAVA.DEN.MethodNotStartWithLowercaseOrUnderScore 

MethodNotStartWithLowercaseOrUnderScore:常にjavaのメソッド命名規則に従う

情報

Start Class Name Capital 

OPT.JAVA.DEN.StartClassNameCapital 

StartClassNameCapital:クラス名は常に大文字で始める

情報

Avoid Load Library EJB 

OPT.JAVA.EJB.AvoidLoadLibraryEJB 

AvoidLoadLibraryEJB:Enterprise JavaBeanのクラスでネイティブライブラリのロード禁止

情報

Declare Static Final Class EJB 

OPT.JAVA.EJB.DeclareStaticFinalClassEJB 

DeclareStaticFinalClassEJB:EntityBeansのstaticフィールドは常にfinalの宣言

情報

Ejb Create Enterprise Java Bean 

OPT.JAVA.EJB.EjbCreateEnterpriseJavaBean 

EjbCreateEnterpriseJavaBean:Enterprise JavaBeanのクラスでは常に少なくとも1つのejbCreate()メソッドの実装

情報

Ejb Create No Parameter 

OPT.JAVA.EJB.EjbCreateNoParameter 

EjbCreateNoParameter:MessageDrivenBeanクラスのejbCreate()メソッドにパラメータを持つのは禁止

情報

Ejb Create Post Create 

OPT.JAVA.EJB.EjbCreatePostCreate 

EjbCreatePostCreate:EntityBeansは、ejbCreate()メソッドごとに1つのejbPostCreate()メソッドを使用することが必要

情報

Ejb Post Create Entity Bean 

OPT.JAVA.EJB.EjbPostCreateEntityBean 

EjbPostCreateEntityBean:EntityBeanは、少なくとも一つのejbPostCreate()メソッドの実装が必要

情報

Method Void Ejb Create 

OPT.JAVA.EJB.MethodVoidEjbCreate 

MethodVoidEjbCreate:SessionBeanとMessageDrivenBeanクラスのejbCreate()メソッドでは空でない戻り値の回避

情報

Method Void Ejb Post Create 

OPT.JAVA.EJB.MethodVoidEjbPostCreate 

MethodVoidEjbPostCreate:Enterprise JavaBeanクラスのejbPostCreate()メソッドでは空でない戻り値の回避

情報

Use Capitals For Final Fields 

OPT.JAVA.EJB.UseCapitalsForFinalFields 

UseCapitalsForFinalFields:finalフィールドの名前は大文字で宣言

情報

Define Classes Exceptions As Final 

OPT.JAVA.EXCP.DefineClassesExceptionsAsFinal 

DefineClassesExceptionsAsFinal:ユーザー定義の例外は常にfinalとして宣言

情報

L L 

OPT.JAVA.FMETODOS.LL 

LL:コードの行が長すぎる

情報

N S A B 

OPT.JAVA.FMETODOS.NSAB 

NSAB:左中括弧「{」と同じ行にステートメントを記述しない

情報

S A O P 

OPT.JAVA.FMETODOS.SAOP 

SAOP:1 行で記述する代入演算子の両側にはスペース文字を入れる

情報

S C 

OPT.JAVA.FMETODOS.SC 

SC:条件文の左括弧「(」の後にはスペース文字を入れる

情報

S M C 

OPT.JAVA.FMETODOS.SMC 

SMC:メソッド名と開始括弧「(」の間にはスペース1文字を入れる

情報

Avoid Extend Thread 

OPT.JAVA.HEB.AvoidExtendThread 

AvoidExtendThread:java.lang.Threadの継承の回避

情報

Avoid Link Operator Assign 

OPT.JAVA.INIC.AvoidLinkOperatorAssign 

AvoidLinkOperatorAssign:多重代入の回避

情報

Avoid Get Context 

OPT.JAVA.J2EE.AvoidGetContext 

AvoidGetContext:java.security.AccessController.getContext()の呼び出し回避

情報

Avoid Get Security Manager 

OPT.JAVA.J2EE.AvoidGetSecurityManager 

AvoidGetSecurityManager:java.lang.System.getSecurityManager()の呼び出し回避

情報

Javadoc Location 

OPT.JAVA.JDOC.JavadocLocation 

JavadocLocation:Javadocとクラス/メソッド宣言の間にJavadoc以外のコメントを入れない

情報

Javadoc Param Rule 

OPT.JAVA.JDOC.JavadocParamRule 

JavadocParamルール:publicメソッドとprotectedメソッドで常に@paramタグを正しい順番で指定する

情報

Javadoc Reg Exp Rule 

OPT.JAVA.JDOC.JavadocRegExpRule 

JavadocRegExpRule:スローされた例外に対して、JavaDoc コメントの@exceptionタグの使用禁止

情報

Format Subclass Junit Test Case 

OPT.JAVA.JUNIT_JAVA.FormatSubclassJunitTestCase 

FormatSubclassJunitTestCase:Junit TestCaseサブクラスの不正な命名の回避

情報

Start Test Class Name Test Suite 

OPT.JAVA.JUNIT_JAVA.StartTestClassNameTestSuite 

StartTestClassNameTestSuite:TestSuiteクラスの不正な命名の回避

情報

Avoid Call Ceil With Int Converted To Double 

OPT.JAVA.MAT.AvoidCallCeilWithIntConvertedToDouble 

AvoidCallCeilWithIntConvertedToDouble:Math.ceil() / Math.floor() / Math.round()に整数型を渡すのを避ける

情報

Avoid Switch Case Break Without Comment 

OPT.JAVA.PB.AvoidSwitchCaseBreakWithoutComment 

AvoidSwitchCaseBreakWithoutComment:breakがなくコメントもないcaseを持つswitchがあるか確認

情報

Comment Every Variable 

OPT.JAVA.RGD.CommentEveryVariable 

CommentEveryVariable:すべての変数にコメントを付ける

情報

P J D C F4 

OPT.JAVA.RGD.PJDCF4 

PJDCF4:privateフィールドにJavadocコメントを付ける

情報

P J D C M2 

OPT.JAVA.RGD.PJDCM2 

PJDCM2:protectedメソッドにJavadocコメントを付ける

情報

P J D C M4 

OPT.JAVA.RGD.PJDCM4 

PJDCM4:privateメソッドにJavadocコメントを付ける

情報

Dont Use Servlets 

OPT.JAVA.RGM.DontUseServlets 

DontUseServlets:サーブレットの使用禁止

情報

P F L 

OPT.JAVA.RGM.PFL 

PFL:whileの代わりにforループの使用

情報

S D I 

OPT.JAVA.RGM.SDI 

SDI:インポートブロックの区切りに空白行の使用

情報

ESAPI Banned Rule 

OPT.JAVA.SEC_JAVA.ESAPIBannedRule 

ESAPIBannedRule:危険なJ2EE APIを避け、(OWASP ESAPIのような)セキュリティに特化したライブラリへの置き換え

情報

Avoid Return Sentences Method Void 

OPT.JAVA.SENT.AvoidReturnSentencesMethodVoid 

AvoidReturnSentencesMethodVoid:voidメソッドでは不要なリターンコマンドの回避

情報

Avoid Using Do While 

OPT.JAVA.SENT.AvoidUsingDoWhile 

AvoidUsingDoWhile:do-while文の使用の回避

情報

Version U I D Field 

OPT.JAVA.SERI.serialVersionUIDField 

serialVersionUIDField:シリアライズ可能なクラスは、常にfinal static serialVersionUIDフィールドを持つ必要

情報

Use Package Declaration 

OPT.JAVA.SWITCH.UsePackageDeclaration 

UsePackageDeclaration:常にパッケージの宣言を使用

情報

Password In Comment Rule

OPT.JAVA.SEC_JAVA.PasswordInCommentRule 

PasswordInCommentRule:コード内でのハードコードされたパスワードやコメント内のパスワードの回避

Avoid Field Access Strategy 

OPT.HIBERNATE.AvoidFieldAccessStrategy 

AvoidFieldAccessStrategy:プロパティへのアクセスにはアクセサメソッド(getter/setter)を使う

Collection Getter And Setter Must Return Same Object 

OPT.HIBERNATE.CollectionGetterAndSetterMustReturnSameObject 

CollectionGetterAndSetterMustReturnSameObject:コレクションgetterとsetterは同じオブジェクトを返すことが必要

Declare Identifier Property 

OPT.HIBERNATE.DeclareIdentifierProperty 

DeclareIdentifierProperty:永続クラスの識別子プロパティ/プロパティの宣言

Externalize Queries 

OPT.HIBERNATE.ExternalizeQueries 

ExternalizeQueries:クエリ文字列を名前付きクエリとして外部に保存

Implement Equals Hash Code In Components 

OPT.HIBERNATE.ImplementEqualsHashCodeInComponents 

ImplementEqualsHashCodeInComponents:コンポーネントとコンポジット要素に対してequals()とhashCode()を実装

Select Before Update With Update Trigger 

OPT.HIBERNATE.SelectBeforeUpdateWithUpdateTrigger 

SelectBeforeUpdateWithUpdateTrigger:select-before-updateの属がUPDATEトリガーと一致するか確認

Use Named Identifier 

OPT.HIBERNATE.UseNamedIdentifier 

UseNamedIdentifier:Hibernateの識別子には常にname属性の指定が必要

Use Proper Subclass Strategy 

OPT.HIBERNATE.UseProperSubclassStrategy 

UseProperSubclassStrategy:サブクラスのプロパティの数に応じて適切なサブクラス構成を検討

Do not manually treat exceptions in Actions 

OPT.JAVA.ACTIONS.AUTC 

AUTC:アクションの例外を手動で処理しない

Don't use public methods in Actions 

OPT.JAVA.ACTIONS.NMTP 

NMTP:アクションではpublicメソッドを使用しない

Avoid Using Floating Point 

OPT.JAVA.ANDROID.AvoidUsingFloatingPoint 

AvoidUsingFloatingPoint:浮動小数点の使用回避

Keep XML Layout Hierarchy Flat 

OPT.JAVA.ANDROID.KeepXMLLayoutHierarchyFlat 

KeepXMLLayoutHierarchyFlat:レイアウトの深さの確認

Suspicious Import 

OPT.JAVA.ANDROID.SuspiciousImport 

SuspiciousImport:android.Rパッケージが使用されているか確認

Use Enhanced For Loop 

OPT.JAVA.ANDROID.UseEnhancedForLoop 

UseEnhancedForLoop:拡張されたfor-eachループの使用を検討

Use Primitive For Numbers 

OPT.JAVA.ANDROID.UsePrimitiveForNumbers 

UsePrimitiveForNumbers:Numberオブジェクトの代わりにプリミティブ型を使用

Use Sparse Arrays 

OPT.JAVA.ANDROID.UseSparseArrays 

UseSparseArrays:整数キーを持つMapの代わりにSparseArrayを使用

Avoid Cyclic Dependencies Between Packages 

OPT.JAVA.AvoidCyclicDependenciesBetweenPackages 

AvoidCyclicDependenciesBetweenPackages:パッケージ間での循環的な依存関係の回避

Avoid Assign In While 

OPT.JAVA.BUC.AvoidAssignInWhile 

AvoidAssignInWhile:while / do-whileループ条件での代入の回避

Avoid Call Loop 

OPT.JAVA.BUC.AvoidCallLoop 

AvoidCallLoop:条件付きループ文内でのメソッド呼び出しを回避

Avoid Continue 

OPT.JAVA.BUC.AvoidContinue 

AvoidContinue:continueコマンドの使用回避

Avoid List Contains 

OPT.JAVA.BUC.AvoidListContains 

AvoidListContains:ループ内でのcontainsの呼び出しの回避

Avoid Call Objects Sub String 

OPT.JAVA.CADCAR.AvoidCallObjectsSubString 

AvoidCallObjectsSubString:Stringオブジェクトに対するsubstring(0)の呼び出し回避

Avoid Check Index Of Positive 

OPT.JAVA.CADCAR.AvoidCheckIndexOfPositive 

AvoidCheckIndexOfPositive:String.IndexOf()が正の値かどうかのチェックの回避

Avoid Concat String 

OPT.JAVA.CADCAR.AvoidConcatString 

AvoidConcatString:定数でない文字列をStringBufferとして宣言

M A J D T 

OPT.JAVA.CDCI.MAJDT 

MAJDT:クラスとインターフェースのJavadocコメントで@authorタグを使用

M V J D T 

OPT.JAVA.CDCI.MVJDT 

MVJDT:クラスとインターフェースのJavadocコメントで@versionタグを使用

P J D C C2 

OPT.JAVA.CDCI.PJDCC2 

PJDCC2:protectedクラスとインタフェースにJavadocコメントを付ける

M R D C 

OPT.JAVA.CDM.MRDC 

MRDC:publicメソッドのJavadocコメントで@returnタグを使用

T S M J T 

OPT.JAVA.CDM.TSMJT 

TSMJT:toString()メソッドに対してJavadocコメントを付ける

V M C R 

OPT.JAVA.CDM.VMCR 

VMCR:voidメソッドのJavadocコメントで@returnタグの使用回避

B M S S 

OPT.JAVA.CFFEJB.BMSS 

BMSS:「Bean」クラスのフィールドのシリアライズ

Declare Public Clone 

OPT.JAVA.CLON.DeclarePublicClone 

DeclarePublicClone:常にclone()をpublic宣言する

T R E T 

OPT.JAVA.CMETRICS.TRET 

TRET:リターンステートメント数の制限に従う

C V N 

OPT.JAVA.CNOM.CVN 

CVN:1文字の変数名は慣用的な使用のみとする

G E T B 

OPT.JAVA.CNOM.GETB 

GETB:boolean型getterメソッド名は「is」、「can」、「has」、「have」で始まることが必要

L C I N 

OPT.JAVA.CNOM.LCIN 

LCIN:長すぎるクラス名やインターフェイス名の回避

N U P R 

OPT.JAVA.CNOM.NUPR 

NUPR:Java識別子の中に予約語の使用禁止

S E T A 

OPT.JAVA.CNOM.SETA 

SETA:setterメソッドの規約

U S F 

OPT.JAVA.CNOM.USF 

USF:staticとfinalフィールド名は小文字の回避

D I L 

OPT.JAVA.CNU.DIL 

DIL:java.lang.*パッケージを明示的にインポートしない

Avoid Declare Many Constructors 

OPT.JAVA.COMPJ.AvoidDeclareManyConstructors 

AvoidDeclareManyConstructors:多すぎるコンストラクタ宣言の回避

Avoid Null Pointer 

OPT.JAVA.COND.AvoidNullPointer 

AvoidNullPointer:if/elseでNullPointerExceptionの生成の可能性

Protected Constructor In Abstract Class 

OPT.JAVA.CONST.ProtectedConstructorInAbstractClass 

ProtectedConstructorInAbstractClass:abstractクラスに対してのみ「protected」コンストラクタを宣言

Avoid Method Name Differ Upper Lower Case 

OPT.JAVA.CONV.AvoidMethodNameDifferUpperLowerCase 

AvoidMethodNameDifferUpperLowerCase:大文字と小文字だけが異なるメソッド名の回避

Array List Instead Of Vector 

OPT.JAVA.DECL.ArrayListInsteadOfVector 

ArrayListInsteadOfVector:常にVectorの代わりにArrayListの使用

Avoid Empty Classes 

OPT.JAVA.DECL.AvoidEmptyClasses 

AvoidEmptyClasses:空のクラスやインターフェースの回避

Avoid Implement Protected Final Class 

OPT.JAVA.DECL.AvoidImplementProtectedFinalClass 

AvoidImplementProtectedFinalClass:protectedフィールドをfinalクラスで実装しない

Avoid Use Class Interface Or Abstract 

OPT.JAVA.DECL.AvoidUseClassInterfaceOrAbstract 

AvoidUseClassInterfaceOrAbstract:共通の定数を宣言するためにabstractクラスまたはインターフェースの使用回避

Avoid Use Static No Final 

OPT.JAVA.DECL.AvoidUseStaticNoFinal 

AvoidUseStaticNoFinal:初期化ではfinalではないstaticフィールドの回避

Avoid Using Same Variable Names 

OPT.JAVA.DECL.AvoidUsingSameVariableNames 

AvoidUsingSameVariableNames:同じ名前の変数の回避

L In Long Object Value 

OPT.JAVA.DECL.LInLongObjectValue 

LInLongObjectValue:数値リテラルには常に大文字で接尾辞を追加(「l」ではなく「L」)

A S I 

OPT.JAVA.DECLARA.ASI 

ASI:インスタンスクラスのメンバを使用しない場合は、メソッドをstaticで宣言

C C P A 

OPT.JAVA.DECLARA.CCPA 

CCPA:各publicクラスは、別々のファイルで宣言する必要

C L S 

OPT.JAVA.DECLARA.CLS 

CLS:比較式の左辺に定数の定義

C R S 

OPT.JAVA.DECLARA.CRS 

CRS:比較式の右側に定数を置く

Define Every Variable In A Line 

OPT.JAVA.DECLARA.DefineEveryVariableInALine 

DefineEveryVariableInALine:すべての変数の定義は1行に記述

Define Privacy Fields 

OPT.JAVA.DECLARA.DefinePrivacyFields 

DefinePrivacyFields:すべてのフィールドは、privateまたはprotectedで定義

I S A C F 

OPT.JAVA.DECLARA.ISACF 

ISACF:定数のみを定義するインターフェースの回避

Separate Declarations And Statements 

OPT.JAVA.DECLARA.SeparateDeclarationsAndStatements 

SeparateDeclarationsAndStatements:宣言とステートメントの分離

U C D C 

OPT.JAVA.DECLARA.UCDC 

UCDC:ユーティリティクラスはprivateコンストラクタがデフォルト

Avoid Incorrect Format Of Non Static Methods 

OPT.JAVA.DEN.AvoidIncorrectFormatOfNonStaticMethods 

AvoidIncorrectFormatOfNonStaticMethods:staticではないメソッドへの不正な命名の回避

Declare Bean Class Public 

OPT.JAVA.EJB.DeclareBeanClassPublic 

DeclareBeanClassPublic:Beanクラスは常にpublicを宣言

Declare Method Ejb Find Public 

OPT.JAVA.EJB.DeclareMethodEjbFindPublic 

DeclareMethodEjbFindPublic:ejbFindXXメソッドは常にpublic、非static、非finalとして宣言

Avoid Text Field 

OPT.JAVA.ESPUI.AvoidTextField 

AvoidTextField:java.awt.TextFieldの使用の回避

Avoid Block Catch Return 

OPT.JAVA.EXCP.AvoidBlockCatchReturn 

AvoidBlockCatchReturn:catchブロック内でのreturn文の使用回避

Avoid Excp Catch 

OPT.JAVA.EXCP.AvoidExcpCatch 

AvoidExcpCatch:catchブロック内で例外の通知やスローは禁止

Avoid Excp Exception 

OPT.JAVA.EXCP.AvoidExcpException 

AvoidExcpException:java.lang.Exceptionの例外キャッチの回避

Avoid New Error 

OPT.JAVA.EXCP.AvoidNewError 

AvoidNewError:java.lang.Errorの新しいインスタンスの作成の回避

Next Emit No Such Element Exception 

OPT.JAVA.EXCP.NextEmitNoSuchElementException 

NextEmitNoSuchElementException:Iteratorクラスのメソッド「next()」が、java.util.NoSuchElementExceptionをキャストできることを常に確認

Avoid Unnecessary Finalize 

OPT.JAVA.FIN.AvoidUnnecessaryFinalize 

AvoidUnnecessaryFinalize:不要なfinalize()メソッドの回避

A I O C 

OPT.JAVA.FMETODOS.AIOC 

AIOC:例外を区別するためのinstanceofの使用は禁止

D E E M 

OPT.JAVA.FMETODOS.DEEM 

DEEM:メソッドとメソッドの間には少なくとも空白行を置く

M I N D 

OPT.JAVA.FMETODOS.MIND 

MIND:コードを適切にインデントする

N C E 

OPT.JAVA.FMETODOS.NCE 

NCE:Exception、RuntimeExceptionまたはThrowableをcatchまたはthrowしない

OS P L 

OPT.JAVA.FMETODOS.OSPL 

OSPL:1行には1つのステートメント

S B R 

OPT.JAVA.FMETODOS.SBR 

SBR:booleanを返すコードの簡略化

U P 

OPT.JAVA.FMETODOS.UP 

UP:return文の不要な括弧の回避

Avoid Call Interrupted Run 

OPT.JAVA.HEB.AvoidCallInterruptedRun 

AvoidCallInterruptedRun:スレッドのrun()メソッドでThread.currentThread().interrupted()の呼び出し回避

C S I 

OPT.JAVA.INICIA.CSI 

CSI:クラスのすべてのフィールドを初期化するコンストラクタの使用

Avoid Too Long Resource Names 

OPT.JAVA.JAX.AvoidTooLongResourceNames 

AvoidTooLongResourceNames:長すぎるリソース名の使用の回避

Tear Down J Unit 

OPT.JAVA.JUNIT_JAVA.TearDownJUnit 

TearDownJUnit:JUnitのテストケースのtearDown()メソッドを常に上書きする

Avoid Call Next Double 

OPT.JAVA.MAT.AvoidCallNextDouble 

AvoidCallNextDouble:int型の乱数の生成に、nextDouble()の呼び出し回避

Parent Class Doesnot Reference Child Classes 

OPT.JAVA.ParentClassDoesnotReferenceChildClasses 

ParentClassDoesnotReferenceChildClasses:子クラスのいずれも参照していない親クラス

A D E 

OPT.JAVA.PB.ADE 

ADE:else文のぶら下がりによる曖昧さの回避

Avoid Complex If 

OPT.JAVA.PB.AvoidComplexIf 

AvoidComplexIf:If文の複雑な条件の回避

A C E C 

OPT.JAVA.RGD.ACEC 

ACEC:コメント文中の特殊文字の回避

Leave A White Line Before A Comment Line 

OPT.JAVA.RGD.LeaveAWhiteLineBeforeACommentLine 

LeaveAWhiteLineBeforeACommentLine:コメント行の前に空行を置く

P J D C F2 

OPT.JAVA.RGD.PJDCF2 

PJDCF2:protectedフィールドにJavadocのコメントを付ける

P J D C M 

OPT.JAVA.RGD.PJDCM 

PJDCM:Javaクラス(非インタフェース)のpublicメソッドにJavadocのコメントを付ける

P J D C M Interface 

OPT.JAVA.RGD.PJDCMInterface 

PJDCMInterface:JavaインターフェースのpublicメソッドにJavadocのコメントを付ける

B L K E L S E 

OPT.JAVA.RGM.BLKELSE 

BLKELSE:「else」文にはブランチブロックの使用

B L K I F 

OPT.JAVA.RGM.BLKIF 

BLKIF:「if」文にはブランチブロックの使用

Dont Set In Session 

OPT.JAVA.RGM.DontSetInSession 

DontSetInSession:セッションスコープにオブジェクトの配置は禁止

Use Session From Restricted Packages 

OPT.JAVA.RGM.UseSessionFromRestrictedPackages 

UseSessionFromRestrictedPackages:特定のパッケージのクラスからのみセッションオブジェクトへのアクセス

U E Q 

OPT.JAVA.RGOR.UEQ 

UEQ:ブール変数とtrueの比較の回避

Transient fields in Serializable classes2 

OPT.JAVA.RGS.SER2 

SER2:java.io.Serializableインターフェイスを継承したインターフェイスの使用禁止

Improper Validation Of Array Index

OPT.JAVA.SEC_JAVA.ImproperValidationOfArrayIndex 

ImproperValidationOfArrayIndex:無害化されていない脆弱な入力からの配列インデックス

Avoid Assign Same Variable 

OPT.JAVA.SENT.AvoidAssignSameVariable 

AvoidAssignSameVariable:変数の自分自身への代入の回避

Avoid Return Null 

OPT.JAVA.SENT.AvoidReturnNull 

AvoidReturnNull:メソッド宣言でnullを返さない

Avoid Transient Fileds 

OPT.JAVA.SERI.AvoidTransientFileds 

AvoidTransientFileds:シリアライズできないクラスでは、フィールドの一時的な宣言の禁止

Implement Comparable With Serializable 

OPT.JAVA.SERI.ImplementComparableWithSerializable 

ImplementComparableWithSerializable:java.lang.Comparableを実装する場合は、常にjava.io.Serializableを実装

Add Comments To Configuration Files 

OPT.JAVA.SPRING.AddCommentsToConfigurationFiles 

AddCommentsToConfigurationFiles:XML設定ファイルにコメントを付ける

Use Rest Controller Convenience Annotation 

OPT.JAVA.SPRING.UseRestControllerConvenienceAnnotation 

UseRestControllerConvenienceAnnotation:RESTアプリケーションには@RestControllerアノテーションの使用

Use Spring Boot Application Convenience Annotation 

OPT.JAVA.SPRING.UseSpringBootApplicationConvenienceAnnotation 

UseSpringBootApplicationConvenienceAnnotation:@SpringBootApplicationアノテーションの使用

Avoid New String 

OPT.JAVA.STR.AvoidNewString 

AvoidNewString:リテラルの文字列を作成するための「new」演算子の使用回避

Do not compare class objects with getName() or getSimpleName() methods C H 

OPT.JAVA.STR.CMPCH 

CMPCH:文字の比較に文字列の使用禁止

Avoid Short Switch 

OPT.JAVA.SWITCH.AvoidShortSwitch 

AvoidShortSwitch:分岐の少ないswitch文の代わりにif-elseの使用

Avoid Declare Variable Inside Loop 

OPT.JAVA.VELOC.AvoidDeclareVariableInsideLoop 

AvoidDeclareVariableInsideLoop:ループ内での変数の作成や代入の回避

Avoid New Object Get Class 

OPT.JAVA.VELOC.AvoidNewObjectGetClass 

AvoidNewObjectGetClass:getClass()を呼び出す目的で新しいオブジェクトの作成回避

Information Exposure Through Debug Log

OPT.JAVA.SEC_JAVA.InformationExposureThroughDebugLog 

InformationExposureThroughDebugLog:ログによる重要な情報の公開の回避

Limit Accessibility Of Sensitive Content Provider 

OPT.JAVA.ANDROID.LimitAccessibilityOfSensitiveContentProvider 

LimitAccessibilityOfSensitiveContentProvider:アプリの機密性の高いコンテンツプロバイダへのアクセスの制限

Secure Resources Properly 

OPT.JAVA.JAX.SecureResourcesProperly 

SecureResourcesProperly:アノテーションを使用してリソースの適切な保護

Use HTTP Method Annotation 

OPT.JAVA.JAX.UseHTTPMethodAnnotation 

UseHTTPMethodAnnotation:適切なアノテーションを使用して、受け入れるHTTPリクエストメソッドを指定

Use Secured Transport Layer 

OPT.JAVA.JAX.UseSecuredTransportLayer 

UseSecuredTransportLayer:HTTPSの代わりのHTTPの使用禁止

Plaintext Storage In A Cookie Rule

OPT.JAVA.SEC_JAVA.PlaintextStorageInACookieRule 

PlaintextStorageInACookieRule:Cookieでの機密情報の平文保存

Unsafe Cookie Rule

OPT.JAVA.SEC_JAVA.UnsafeCookieRule 

UnsafeCookieRule: 適切なセキュリティプロパティを持つサーバ側のCookieの生成

Exported Activity 

OPT.JAVA.ANDROID.ExportedActivity 

ExportedActivity:エクスポートされたアクティビティにはアクセス許可が必要

Exported Preference Activity 

OPT.JAVA.ANDROID.ExportedPreferenceActivity 

ExportedPreferenceActivity:PreferenceActivityを継承するアクティビティのエクスポート制限

Exported Provider 

OPT.JAVA.ANDROID.ExportedProvider 

ExportedProvider: エクスポートされたプロバイダにはアクセス許可が必要

Exported Receiver 

OPT.JAVA.ANDROID.ExportedReceiver 

ExportedReceiver:エクスポートされたレシーバにはアクセス許可が必要

Exported Service 

OPT.JAVA.ANDROID.ExportedService 

ExportedService:エクスポートされたサービスにはアクセス許可が必要

Avoid Host Name Checks Rule

OPT.JAVA.SEC_JAVA.AvoidHostNameChecksRule 

AvoidHostNameChecksRule:DNSポイズニングによる信頼性の低いクライアント側のホスト名のチェックの回避

Avoid Cartesian Product 

OPT.HIBERNATE.AvoidCartesianProduct 

AvoidCartesianProduct:HQLおよびネイティブなSQLクエリで認識されないデカルト積の回避

Avoid Many To Many Associations 

OPT.HIBERNATE.AvoidManyToManyAssociations 

AvoidManyToManyAssociations:多対多になる関連付けの回避

Avoid Non Lazy Collections 

OPT.HIBERNATE.AvoidNonLazyCollections 

AvoidNonLazyCollections:遅延しない永続的なコレクションの回避

Avoid Problematic Flush Mode 

OPT.HIBERNATE.AvoidProblematicFlushMode 

AvoidProblematicFlushMode:古いデータの問題が発生する可能性があるFlushModeの設定の回避

Avoid Using HQL 

OPT.HIBERNATE.AvoidUsingHQL 

AvoidUsingHQL:マッピング記述子やコード内でのHQLの使用の回避

Avoid Using Native SQL 

OPT.HIBERNATE.AvoidUsingNativeSQL 

AvoidUsingNativeSQL: マッピング記述子やコード内でのネイティブSQLの使用の回避

Cross Site History Manipulation

OPT.JAVA.SEC_JAVA.CrossSiteHistoryManipulation 

CrossSiteHistoryManipulation:クロスサイト履歴操作(XSHM)

Configure Connection Pool 

OPT.HIBERNATE.ConfigureConnectionPool 

ConfigureConnectionPool:明示的な接続プールでHibernateを設定

Never Use Persistent Arrays 

OPT.HIBERNATE.NeverUsePersistentArrays 

NeverUsePersistentArrays:永続的な配列を使用禁止

One Class Per Mapping File 

OPT.HIBERNATE.OneClassPerMappingFile 

OneClassPerMappingFile:永続的クラスごとに1つのマッピングファイルの使用

Only Use Hibernate For Database Access 

OPT.HIBERNATE.OnlyUseHibernateForDatabaseAccess 

OnlyUseHibernateForDatabaseAccess:データベースアクセスにHibernate/JPAのみ使用

Override Equals Hashcode In Composites 

OPT.HIBERNATE.OverrideEqualsHashcodeInComposites 

OverrideEqualsHashcodeInComposites:composite-*要素を実装するすべてのクラスは、equals()とhashCode()のオーバーライドが必要

Proper Equals Hashcode Policy 

OPT.HIBERNATE.ProperEqualsHashcodePolicy 

ProperEqualsHashcodePolicy:永続的エンティティでequals()およびhashCode()を実装する場合は、適切なポリシーの使用

Separation Of Concerns 

OPT.HIBERNATE.SeparationOfConcerns 

SeparationOfConcerns:J2EE APIを使ったドメインエンティティの回避

Use Interface For Collection Property 

OPT.HIBERNATE.UseInterfaceForCollectionProperty 

UseInterfaceForCollectionProperty:コレクション値のプロパティにはインターフェイスの使用

Use Non Final Persistent Classes 

OPT.HIBERNATE.UseNonFinalPersistentClasses 

UseNonFinalPersistentClasses:「final」永続的クラスの回避

Use Nullable Type For Identifier 

OPT.HIBERNATE.UseNullableTypeForIdentifier 

UseNullableTypeForIdentifier:永続的クラスの識別子フィールドにはnull許容(非プリミティブ)型の使用

Use Version Instead Of Timestamp 

OPT.HIBERNATE.UseVersionInsteadOfTimestamp 

UseVersionInsteadOfTimestamp:タイムスタンプの代わりにバージョンの使用

Avoid Absolute Layout 

OPT.JAVA.ANDROID.AvoidAbsoluteLayout 

AvoidAbsoluteLayout:AbsoluteLayoutの使用回避

Avoid Calls After Recycle Call 

OPT.JAVA.ANDROID.AvoidCallsAfterRecycleCall 

AvoidCallsAfterRecycleCall:recycle()したリソースの呼び出し禁止

Check External Storage Permission 

OPT.JAVA.ANDROID.CheckExternalStoragePermission 

CheckExternalStoragePermission:権限使用の適合性のチェック(外部ストレージ権限)

Check Internet Permission 

OPT.JAVA.ANDROID.CheckInternetPermission 

CheckInternetPermission:権限使用の適合性のチェック(インターネット権限)

Check Location Permission 

OPT.JAVA.ANDROID.CheckLocationPermission 

CheckLocationPermission:権限使用の適合性のチェック(位置情報の権限)

Complete Transaction With Commit 

OPT.JAVA.ANDROID.CompleteTransactionWithCommit 

CompleteTransactionWithCommit:commit()メソッドを呼び出してトランザクションの完了が必要

Format String Injection Rule

OPT.JAVA.SEC_JAVA.FormatStringInjectionRule 

FormatStringInjectionRule:無害化されていないユーザ入力をフォーマット文字列から除外

Do Not Log Sensitive Information 

OPT.JAVA.ANDROID.DoNotLogSensitiveInformation 

DoNotLogSensitiveInformation:安全でないログへのアクセス回避

Dont Use Multidimensional List 

OPT.JAVA.ANDROID.DontUseMultidimensionalList 

DontUseMultidimensionalList:多次元配列や入れ子リストの使用回避

Input Path Not Canonicalized Rule 

OPT.JAVA.SEC_JAVA.InputPathNotCanonicalizedRule 

InputPathNotCanonicalizedRule:正しくない動作の順序:正規化する前の検証

Missing Recycle Calls 

OPT.JAVA.ANDROID.MissingRecycleCalls 

MissingRecycleCalls:リソースは使用後にrecycle()の呼び出しが必要

On Click Method Does Not Exist 

OPT.JAVA.ANDROID.OnClickMethodDoesNotExist 

OnClickMethodDoesNotExist:onClickメソッドが必要

Request Parameters In Session Rule 

OPT.JAVA.SEC_JAVA.RequestParametersInSessionRule 

RequestParametersInSessionRule:リクエストパラメータは、サニタイズせずにSessionへ渡すことは禁止

View Holder 

OPT.JAVA.ANDROID.ViewHolder 

ViewHolder:ビューアダプタを実装する際に、新しいレイアウトの生成を回避

A Package Does Not Depend On Less Stable Packages 

OPT.JAVA.APackageDoesNotDependOnLessStablePackages 

APackageDoesNotDependOnLessStablePackages:パッケージは安定性の低いパッケージに依存しない

Do Not Return Store Mutable Members 

OPT.JAVA.DoNotReturnStoreMutableMembers 

DoNotReturnStoreMutableMembers:変更可能なメンバーへの参照を直接返したり保存したりすることは禁止

Avoid Peer Interface 

OPT.JAVA.AWT.AvoidPeerInterface 

AvoidPeerInterface:java.awt.peerインタフェースの直接使用の回避

P P B 

OPT.JAVA.BEANS.PPB 

PPB:プレゼンテーション層のオブジェクトをBeanに渡さない

Avoid Enums In While 

OPT.JAVA.BUC.AvoidEnumsInWhile 

AvoidEnumsInWhile:ループ制御に列挙子を使用しない

Avoid For Without Ini Incr 

OPT.JAVA.BUC.AvoidForWithoutIniIncr 

AvoidForWithoutIniIncr:初期値と増分がないループの回避

Avoid Array To String 

OPT.JAVA.CADCAR.AvoidArrayToString 

AvoidArrayToString:配列に対してtoString()の呼び出し回避

N C C A 

OPT.JAVA.CDCI.NCCA 

NCCA:古いコメント付きコード

P A R A M 

OPT.JAVA.CDM.PARAM 

PARAM:publicメソッドの各パラメーターには、Javadocコメントで@paramタグを使用

T H R O W 

OPT.JAVA.CDM.THROW 

THROW:publicメソッドのJavadocコメントで@throwsまたは@exceptionタグを使用

Use Set Rollback Only 

OPT.JAVA.CFFEJB.UseSetRollbackOnly 

UseSetRollbackOnly:Beanのメソッドがアプリケーション例外を投げる場合に、setRollbackOnly()の呼び出し

Classes Are Strongly Internally Coupled 

OPT.JAVA.ClassesAreStronglyInternallyCoupled 

ClassesAreStronglyInternallyCoupled:内部的に強く結合されたクラスの回避

Class Hierarchies Are Not Too Deep 

OPT.JAVA.ClassHierarchiesAreNotTooDeep 

ClassHierarchiesAreNotTooDeep:深すぎる階層クラスの回避

Avoid Overload Clone 

OPT.JAVA.CLON.AvoidOverloadClone 

AvoidOverloadClone:cloneメソッドのオーバーロードの回避

Implement Cloneable Alter Clone 

OPT.JAVA.CLON.ImplementCloneableAlterClone 

ImplementCloneableAlterClone:clone()メソッドの上書き時に、java.lang.Cloneableの実装

Signature Standard Clone 

OPT.JAVA.CLON.SignatureStandardClone 

SignatureStandardClone:cloneメソッドには常に標準的な記述方式を使用

N P R I F 

OPT.JAVA.CMETRICS.NPRIF 

NPRIF:privateフィールドの最大許容数

N P R I M 

OPT.JAVA.CMETRICS.NPRIM 

NPRIM:privateメソッドの最大許容数

N P R O F 

OPT.JAVA.CMETRICS.NPROF 

NPROF:protectedフィールドの最大許容数

N P R O M 

OPT.JAVA.CMETRICS.NPROM 

NPROM:protectedメソッドの最大許容数

N P U B F 

OPT.JAVA.CMETRICS.NPUBF 

NPUBF:publicフィールドの最大許容数

N P U B M 

OPT.JAVA.CMETRICS.NPUBM 

NPUBM:publicメソッドの最大許容数

S T M T 

OPT.JAVA.CMETRICS.STMT 

STMT:メソッド内のステートメント数の制限に従う

T N L M 

OPT.JAVA.CMETRICS.TNLM 

TNLM:メソッド内の行数制限に従う

T N M C 

OPT.JAVA.CMETRICS.TNMC 

TNMC:メソッド呼び出しの回数

T N O P 

OPT.JAVA.CMETRICS.TNOP 

TNOP:パラメータが多すぎるメソッドの回避

G E T A 

OPT.JAVA.CNOM.GETA 

GETA:getterメソッドの規約

I R B 

OPT.JAVA.CNOM.IRB 

IRB:「is...」は、ブール値を返すメソッド名にのみに使用

N A R G S 

OPT.JAVA.CNOM.NARGS 

NARGS:引数に命名規則の使用

N C L 

OPT.JAVA.CNOM.NCL 

NCL:クラス名の命名規則

N E 

OPT.JAVA.CNOM.NE 

NE:クラス例外の命名規則

N M 

OPT.JAVA.CNOM.NM 

NM:メソッドの命名規則に従う

Inner classes should be protected or private 

OPT.JAVA.CNOM.PKG 

PKG:パッケージ名にはすべて小文字を使用

R Inner classes should be protected or private 

OPT.JAVA.CNOM.RPKG 

RPKG:Sunが予約しているパッケージ名の使用回避

D I C 

OPT.JAVA.COL.DIC 

DIC:ArrayList、HashMap、HashSet、Hashtable、Vector、WeakHashMapの初期容量の定義

M C S 

OPT.JAVA.COL.MCS 

MCS:同期コレクションの使用の最小化:同期コレクション(Vector, Hashtable)の使用を検出して示す

M C S C 

OPT.JAVA.COL.MCSC 

MCSC:多すぎる同期コレクション使用回避:Collections.synchronizedCollection()の使用と派生コレクションの検出

Avoid Bit To Bit Comparisons 

OPT.JAVA.COMP.AvoidBitToBitComparisons 

AvoidBitToBitComparisons:ビット演算子による比較の回避

Avoid Comp Byte Max Value Min Value 

OPT.JAVA.COMP.AvoidCompByteMaxValueMinValue 

AvoidCompByteMaxValueMinValue:常に同じ結果を返すByte.MIN_VALUEおよびByte.MAX_VALUEとbyteデータとの比較の回避

Avoid Comp Character Max Value Min Value 

OPT.JAVA.COMP.AvoidCompCharacterMaxValueMinValue 

AvoidCompCharacterMaxValueMinValue:常に同じ結果を返すCharacter.MIN_VALUEとCharacter.MAX_VALUEの比較の回避

Avoid Comp Double Max Value Min Value 

OPT.JAVA.COMP.AvoidCompDoubleMaxValueMinValue 

AvoidCompDoubleMaxValueMinValue:常に同じ結果を返すDouble.MAX_VALUEおよびDouble.MIN_VALUEとdoubleデータとの比較の回避

Avoid Comp Float Max Value Min Value 

OPT.JAVA.COMP.AvoidCompFloatMaxValueMinValue 

AvoidCompFloatMaxValueMinValue:常に同じ結果を返すFloat.MAX_VALUEとDouble.MIN_VALUEの比較の回避

Avoid Comp Integer Max Value Min Value 

OPT.JAVA.COMP.AvoidCompIntegerMaxValueMinValue 

AvoidCompIntegerMaxValueMinValue:常に同じ結果を返すInteger.MIN_VALUEとInteger.MAX_VALUEの比較の回避

Avoid Comp Long Max Value Min Value 

OPT.JAVA.COMP.AvoidCompLongMaxValueMinValue 

AvoidCompLongMaxValueMinValue:常に同じ結果を返すLong.MIN_VALUEとLong.MAX_VALUEの比較の回避

Avoid Comp Short Max Value Min Value 

OPT.JAVA.COMP.AvoidCompShortMaxValueMinValue 

AvoidCompShortMaxValueMinValue:常に同じ結果を返すShort.MAX_VALUEとShort.MIN_VALUEの比較の回避

Dont Compare One Self 

OPT.JAVA.COMP.DontCompareOneSelf 

DontCompareOneSelf:変数とそれ自身の比較の回避

Avoid Excessively Bracketed Loops 

OPT.JAVA.COMPJ.AvoidExcessivelyBracketedLoops 

AvoidExcessivelyBracketedLoops:3つ以上のループの入れ子の回避

Avoidt Nest Try Catch 

OPT.JAVA.COMPJ.AvoidtNestTryCatch 

AvoidtNestTryCatch:1つ以上のtry / catchのネストの回避

Components Are Not Calling Too Many Other Components 

OPT.JAVA.ComponentsAreNotCallingTooManyOtherComponents 

ComponentsAreNotCallingTooManyOtherComponents:他のコンポーネントの呼び出しが多すぎるコンポーネントの回避

Avoid Asignments Within I F 

OPT.JAVA.COND.AvoidAsignmentsWithinIF 

AvoidAsignmentsWithinIF:条件式内での代入の回避

Private Constructor Utility Program 

OPT.JAVA.CONST.PrivateConstructorUtilityProgram 

PrivateConstructorUtilityProgram:ユーティリティプログラムのクラスに対してのみ「private」コンストラクタの宣言

Avoid Field Variables Differ Upper Lower Case 

OPT.JAVA.CONV.AvoidFieldVariablesDifferUpperLowerCase 

AvoidFieldVariablesDifferUpperLowerCase:大文字と小文字だけが異なるフィールド名の回避

Avoid Import Class Local Package 

OPT.JAVA.CONV.AvoidImportClassLocalPackage 

AvoidImportClassLocalPackage:ローカルパッケージからのクラスのインポートの回避

Avoid Parameter Differ Upper Lower Case 

OPT.JAVA.CONV.AvoidParameterDifferUpperLowerCase 

AvoidParameterDifferUpperLowerCase:大文字と小文字だけが異なるパラメータの回避

Avoid Same Method Field Names

OPT.JAVA.CONV.AvoidSameMethodFieldNames 

AvoidSameMethodFieldNames:フィールドとメソッドの同名の回避

Collection Type Verification 

OPT.JAVA.CONV.CollectionTypeVerification 

CollectionTypeVerification:オブジェクトがAbstractCollectionに変換される際は、常にオブジェクトの型をテスト

Object Type Verification 

OPT.JAVA.CONV.ObjectTypeVerification 

ObjectTypeVerification:キャストする前に必ずオブジェクトの型を確認

Avoid Declare Field Used In Only One Method 

OPT.JAVA.DECL.AvoidDeclareFieldUsedInOnlyOneMethod 

AvoidDeclareFieldUsedInOnlyOneMethod:1つのメソッドでのみ使用されるprivateフィールドの宣言禁止

Avoid Final Static Public Matrix Field 

OPT.JAVA.DECL.AvoidFinalStaticPublicMatrixField 

AvoidFinalStaticPublicMatrixField:Matrix型のpublic static finalフィールドの使用の回避

Avoid Local Variable Similar Name 

OPT.JAVA.DECL.AvoidLocalVariableSimilarName 

AvoidLocalVariableSimilarName:類似した名前のローカル変数の回避

Avoid New Boolean 

OPT.JAVA.DECL.AvoidNewBoolean

AvoidNewBoolean:new Boolean()によるBooleanオブジェクトの作成の回避

Avoid Num Literals 

OPT.JAVA.DECL.AvoidNumLiterals 

AvoidNumLiterals:数値リテラルの使用の回避

Avoid Use Literal 

OPT.JAVA.DECL.AvoidUseLiteral 

AvoidUseLiteral:明示的な文字列リテラルの使用を避け、代わりに定数の宣言

Private Constructor In Final Class 

OPT.JAVA.DECL.PrivateConstructorInFinalClass 

PrivateConstructorInFinalClass:すべてのコンストラクタが privateであるクラスは「final」として宣言

A U V T 

OPT.JAVA.DECLARA.AUVT 

AUVT: ListとSetの変数はインターフェイス型で宣言

D C I 

OPT.JAVA.DECLARA.DCI 

DCI:インターフェース内でpublic定数の定義

D C T O R 

OPT.JAVA.DECLARA.DCTOR 

DCTOR:可能な限りデフォルトコンストラクタの定義

I Don't use masterpage files T 

OPT.JAVA.DECLARA.IMPT 

IMPT:import文での「*」の使用を避ける

M V OS 

OPT.JAVA.DECLARA.MVOS 

MVOS:1つのステートメントで複数の変数の宣言回避

N T X 

OPT.JAVA.DECLARA.NTX 

NTX:「Exception」のスローを避け、常に適切なExceptionのサブクラスの使用

Not Define Object Variables 

OPT.JAVA.DECLARA.NotDefineObjectVariables 

NotDefineObjectVariables:「Object」型の変数の定義禁止

Avoid Abstract Class Ejb 

OPT.JAVA.EJB.AvoidAbstractClassEjb 

AvoidAbstractClassEjb:abstract型のEJBの宣言禁止

Avoid Create Exception 

OPT.JAVA.EJB.AvoidCreateException 

AvoidCreateException:リモートインタフェースとローカルインタフェースの作成メソッドでは、常に「javax.ejb.CreateException」がスローされる

Avoid Final Class Ejb 

OPT.JAVA.EJB.AvoidFinalClassEjb 

AvoidFinalClassEjb:EJBのfinalとしての宣言禁止

Avoid Finder Exception 

OPT.JAVA.EJB.AvoidFinderException 

AvoidFinderException:リモートインタフェースとローカルインタフェースのfinderメソッドでは、常に「javax.ejb.FinderException」がスローされる

Avoid Return This Class Ejb 

OPT.JAVA.EJB.AvoidReturnThisClassEjb 

AvoidReturnThisClassEjb:エンタープライズJavaBeanクラスのメソッドから「this」の返却の回避

Avoid Using Thread 

OPT.JAVA.EJB.AvoidUsingThread 

AvoidUsingThread:EntityBeansのjava.lang.Threadでオブジェクトの開始、停止、管理の禁止

Declareejb Post Create Public 

OPT.JAVA.EJB.DeclareejbPostCreatePublic 

DeclareejbPostCreatePublic:ejbPostCreate()は常にpublicで宣言

Unnormalized Input String 

OPT.JAVA.SEC_JAVA.UnnormalizedInputString 

UnnormalizedInputString:システム入力は常に正規化

Dont Pass This As Arg 

OPT.JAVA.EJB.DontPassThisAsArg 

DontPassThisAsArg:引数として「this」を渡すのは禁止

Ejb Create Message Driven Bean 

OPT.JAVA.EJB.EjbCreateMessageDrivenBean 

EjbCreateMessageDrivenBean:MessageDrivenBeanのクラスでは、常に少なくとも1つのejbCreate()メソッドの実装

Avoid Text Area 

OPT.JAVA.ESPUI.AvoidTextArea 

AvoidTextArea:java.awt.TextAreaの使用回避

Avoid Empty Finally Blocks 

OPT.JAVA.EXCP.AvoidEmptyFinallyBlocks 

AvoidEmptyFinallyBlocks:空のfinalブロックの回避

Avoid Empty Try Blocks 

OPT.JAVA.EXCP.AvoidEmptyTryBlocks 

AvoidEmptyTryBlocks:空のtryブロックの回避

Avoid Excp Error 

OPT.JAVA.EXCP.AvoidExcpError 

AvoidExcpError:java.lang.Errorの例外キャッチの回避

Avoid Illegal Monitor State Excp 

OPT.JAVA.EXCP.AvoidIllegalMonitorStateExcp 

AvoidIllegalMonitorStateExcp:java.lang.IllegalMonitorStateExceptionの例外キャッチの回避

Avoid New Exception 

OPT.JAVA.EXCP.AvoidNewException 

AvoidNewException:java.lang.Exceptionの新しいインスタンス作成の回避

Avoid Object Throwable 

OPT.JAVA.EXCP.AvoidObjectThrowable 

AvoidObjectThrowable:スロー可能なオブジェクトの例外キャッチの回避

Exceptions In Throws 

OPT.JAVA.EXCP.ExceptionsInThrows 

ExceptionsInThrows:throws句では常に特定の例外の使用

A M C 

OPT.JAVA.FMETODOS.AMC 

AMC:if文内での多重比較の回避

D U N 

OPT.JAVA.FMETODOS.DUN 

DUN:メソッド内での多すぎる否定演算子「!」の回避

G N E 

OPT.JAVA.FMETODOS.GNE 

GNE:句の中での例外の数を管理

I A D 

OPT.JAVA.FMETODOS.IAD 

IAD:配列の型の後、変数名の前に[]括弧を付けて配列を宣言

Avoid Call Start Constructors 

OPT.JAVA.HEB.AvoidCallStartConstructors 

AvoidCallStartConstructors:スレッドのサブクラスのコンストラクタ内からstart()メソッドの呼び出し禁止

Avoid This In Sincronized Sentences 

OPT.JAVA.HEB.AvoidThisInSincronizedSentences 

AvoidThisInSincronizedSentences:同期ブロック内でのthisの使用回避

Avoid Wait Outside Brackets 

OPT.JAVA.HEB.AvoidWaitOutsideBrackets 

AvoidWaitOutsideBrackets:whileループの外側でjava.lang.Objectクラスのwait()メソッドの使用回避

D V B C 

OPT.JAVA.INICIA.DVBC 

DVBC:クラスの最初でクラスの属性を定義

L V 

OPT.JAVA.INICIA.LV 

LV:宣言文ですべてのローカル変数の初期化

U S N 

OPT.JAVA.INICIA.USN 

USN:メソッド呼び出しでのリテラルを回避し、名前付き定数(static finalのクラス変数)によりソースコードの理解、保守がしやすくなる

Avoid Check Permission 

OPT.JAVA.J2EE.AvoidCheckPermission 

AvoidCheckPermission:java.security.AccessController.checkPermission()の呼び出しの回避

Avoid Class Loader Instance 

OPT.JAVA.J2EE.AvoidClassLoaderInstance 

AvoidClassLoaderInstance:java.lang.ClassLoaderのインスタンス化の回避

Avoid Do As 

OPT.JAVA.J2EE.AvoidDoAs 

AvoidDoAs:javax.security.auth.Subject.doAs()の呼び出し回避

Avoid Do As Privileged 

OPT.JAVA.J2EE.AvoidDoAsPrivileged 

AvoidDoAsPrivileged:javax.security.auth.Subject.doAsPrivileged()の呼び出し回避

Avoid Do Priviliged 

OPT.JAVA.J2EE.AvoidDoPriviliged 

AvoidDoPriviliged:java.security.AccessController.doPrivileged()の呼び出し回避

Avoid Extend Permission 

OPT.JAVA.J2EE.AvoidExtendPermission 

AvoidExtendPermission:java.security.Permissionの継承の回避

Avoid Get Policy 

OPT.JAVA.J2EE.AvoidGetPolicy 

AvoidGetPolicy:Policy.getPolicy()の呼び出し回避

Avoid Get Property 

OPT.JAVA.J2EE.AvoidGetProperty 

AvoidGetProperty:java.security.getProperty()の呼び出し回避

Avoid Large Blocks 

OPT.JAVA.J2EE.AvoidLargeBlocks 

AvoidLargeBlocks:5行を超える特権ブロックの回避

Avoid Permission Instance 

OPT.JAVA.J2EE.AvoidPermissionInstance 

AvoidPermissionInstance:java.security.Permissionのインスタンスの生成の回避

Avoid Policy Instance 

OPT.JAVA.J2EE.AvoidPolicyInstance 

AvoidPolicyInstance:java.security.Policyのインスタンスの生成の回避

Avoid Set Policy 

OPT.JAVA.J2EE.AvoidSetPolicy 

AvoidSetPolicy:Policy.setPolicy()の呼び出し回避

Avoid Alter Check Security Manager 

OPT.JAVA.J2SE.AvoidAlterCheckSecurityManager 

AvoidAlterCheckSecurityManager:SecurityManagerのcheck*メソッドの上書き回避

Avoid Catch Security Exception 

OPT.JAVA.J2SE.AvoidCatchSecurityException 

AvoidCatchSecurityException:Java.lang.SecurityExceptionの例外キャッチの回避

Avoid Static Public No Final Field 

OPT.JAVA.J2SE.AvoidStaticPublicNoFinalField 

AvoidStaticPublicNoFinalField:finalではないpublic staticフィールドの回避

Avoid Using J A X R P C 

OPT.JAVA.JAX.AvoidUsingJAXRPC 

AvoidUsingJAXRPC:JAX-RPCの使用回避

Include A P IVersion Number Into URL 

OPT.JAVA.JAX.IncludeAPIVersionNumberIntoURL 

IncludeAPIVersionNumberIntoURL:API バージョン番号をURLに含める

Use Default Value Annotation 

OPT.JAVA.JAX.UseDefaultValueAnnotation 

UseDefaultValueAnnotation:リクエストを処理するときに @DefaultValueアノテーションの使用

Use Generic Entity 

OPT.JAVA.JAX.UseGenericEntity 

UseGenericEntity:インスタンスのリストを返す際にはGenericEntityの使用

Use JSON Responses 

OPT.JAVA.JAX.UseJSONResponses 

UseJSONResponses:REST アプリケーションではJSONレスポンスの使用

Use Proper Return Types And Response Codes 

OPT.JAVA.JAX.UseProperReturnTypesAndResponseCodes 

UseProperReturnTypesAndResponseCodes:適切なリターン形式で、適切なレスポンスコードを含める

P S T 

OPT.JAVA.JDBC.PST 

PST:同様のリクエストに対しては、Statementの代わりにPreparedStatementの使用

R R W D 

OPT.JAVA.JDBC.RRWD 

RRWD:処理の終了時にJDBCリソースを閉じる

S E L E C T 

OPT.JAVA.JDBC.SELECT 

SELECT:SELECT *を使ったSQL文の回避

Javadoc T O D O 

OPT.JAVA.JDOC.JavadocTODO 

JavadocTODO:本番環境のコードでのTODOコメントの回避

Javadoc Throws Rule 

OPT.JAVA.JDOC.JavadocThrowsRule 

JavadocThrowsRule:publicメソッドとprotectedメソッドのJavadocコメントに@throwsタグを使用

Call Super Set Up From Set Up 

OPT.JAVA.JUNIT_JAVA.CallSuperSetUpFromSetUp 

CallSuperSetUpFromSetUp:常にJUnit TestCaseのsetUpメソッドからsuper.setUp()の呼び出し

Call Super Tear Down From Tear Down 

OPT.JAVA.JUNIT_JAVA.CallSuperTearDownFromTearDown 

CallSuperTearDownFromTearDown:常にJUnit TestCaseのtearDown()メソッドからsuper.tearDown()の呼び出し

Invoke Suite As Static Public 

OPT.JAVA.JUNIT_JAVA.InvokeSuiteAsStaticPublic 

InvokeSuiteAsStaticPublic:常にJunit.framework.TestCase.suite()をpublic staticメソッドとして宣言

I A C B 

OPT.JAVA.LOOP.IACB 

IACB:配列のコピーにはループを使用する代わりにSystem.arraycopy()の使用

L I N T 

OPT.JAVA.LOOP.LINT 

LINT:ループ内では整数型のインデックス変数の使用

Avoid Call Run From Servlet 

OPT.JAVA.MAN.AvoidCallRunFromServlet 

AvoidCallRunFromServlet:サーブレットからjava.lang.Runnable.run()の呼び出し回避

Avoid Confused Multiplication 

OPT.JAVA.MAT.AvoidConfusedMultiplication 

AvoidConfusedMultiplication:紛らわしい乗算の回避

Avoid Modulus One 

OPT.JAVA.MAT.AvoidModulusOne 

AvoidModulusOne:1に等しいモジュラス値(剰余値)の回避

Avoid Static Call Math 

OPT.JAVA.MAT.AvoidStaticCallMath 

AvoidStaticCallMath:java.lang.Mathのstaticメソッドの定数への呼び出し回避

Check Variable Odd Value 

OPT.JAVA.MAT.CheckVariableOddValue

CheckVariableOddValue:変数の奇数判定方法(var % 2 == 1の使用)

Avoid Number Instance With New 

OPT.JAVA.MEM.AvoidNumberInstanceWithNew 

AvoidNumberInstanceWithNew:newを使用した数値のインスタンス作成の回避

Avoid Run Finalization 

OPT.JAVA.MEM.AvoidRunFinalization 

AvoidRunFinalization:java.lang.Runtime.runFinalization()の呼び出し回避

Avoid Return Null Enumeration 

OPT.JAVA.NULL.AvoidReturnNullEnumeration 

AvoidReturnNullEnumeration:nullを返す代わりに空の列挙型を返す

Avoid Return Null Iterator 

OPT.JAVA.NULL.AvoidReturnNullIterator 

AvoidReturnNullIterator:nullではなく空のiteratorを返す

Null Dereference 

OPT.JAVA.NullDereference 

NullDereference:NULLポインタの参照禁止

D N C S S 

OPT.JAVA.PB.DNCSS 

DNCSS:ComponentListener.componentResized()でsetSize()の呼び出し禁止

Empty pages 

OPT.JAVA.PB.ISEM 

ISEM:varString.equals(定数)またはvarString.equalsIgnoreCase(定数)の呼び出し回避

J U I N 

OPT.JAVA.PB.JUIN 

JUIN:エラーを伴うインクリメント演算子の回避

M ASP 

OPT.JAVA.PB.MASP 

MASP:シリアライズ可能なクラスのreadResolve()およびwriteReplace()メソッドにはprotectedの宣言

MVC 

OPT.JAVA.PB.MVC 

MVC:クラス内の変数と同じ名前のローカル変数の回避

Num Max Class By Package 

OPT.JAVA.PB.NumMaxClassByPackage 

NumMaxClassByPackage:パッケージ/名前空間ごとの過剰なクラス数の回避

R F F B 

OPT.JAVA.PB.RFFB 

RFFB:finallyブロックからの復帰

U E I 

OPT.JAVA.PB.UEI 

UEI:オブジェクトの比較にequals()の使用

U O M E 

OPT.JAVA.PB.UOME 

UOME:不用なメソッドの上書き禁止

Avoid Dump Stack 

OPT.JAVA.PERF.AvoidDumpStack 

AvoidDumpStack:本番環境のコードでのThread.dumpStack()の使用回避

Avoid System 

OPT.JAVA.PERF.AvoidSystem 

AvoidSystem:本番環境のコードでのSystem.outやSystem.errの使用回避

Avoid Call Connection From Servlet 

OPT.JAVA.RECBAS.AvoidCallConnectionFromServlet 

AvoidCallConnectionFromServlet:サーブレットのfinalize()メソッドからjava.sql.Connectionの呼び出し回避

Avoid Call Net From Servlet 

OPT.JAVA.RECBAS.AvoidCallNetFromServlet 

AvoidCallNetFromServlet:サーブレットのfinalize()メソッドからのjava.net.*の呼び出し回避

Avoid Call Omg From Servlet 

OPT.JAVA.RECBAS.AvoidCallOmgFromServlet 

AvoidCallOmgFromServlet:サーブレットのfinalize()メソッドからのorg.omg.*の呼び出し回避

Avoid Call Result Set From Servlet 

OPT.JAVA.RECBAS.AvoidCallResultSetFromServlet 

AvoidCallResultSetFromServlet:サーブレットのfinalize()メソッドからjava.sql.ResultSetの呼び出し回避

Avoid Call Statement From Servlet 

OPT.JAVA.RECBAS.AvoidCallStatementFromServlet 

AvoidCallStatementFromServlet:サーブレットのfinalize()メソッドからjava.sql.Statementの呼び出し回避

Avoid Date Matrix 

OPT.JAVA.RECBASJ2SE.AvoidDateMatrix 

AvoidDateMatrix:Date型の2次元配列の使用回避

Avoid Call Jar From Servlet 

OPT.JAVA.RENDESC.AvoidCallJarFromServlet 

AvoidCallJarFromServlet:サーブレットからのjava.util.jar.*の呼び出し回避

Avoid Call Rmi From Servlet 

OPT.JAVA.RENDESC.AvoidCallRmiFromServlet 

AvoidCallRmiFromServlet:サーブレットからのjava.rmi.*の呼び出し回避

A D GC 

OPT.JAVA.RGM.ADGC 

ADGC:java.util.Dateまたはjava.util.GregorianCalendarの使用回避

A F P 

OPT.JAVA.RGM.AFP 

AFP:メソッドやコンストラクタのパラメータの修正の回避

A R N 

OPT.JAVA.RGM.ARN 

ARN:nullの代わりに長さ0の配列を返す

B L K D O W H L 

OPT.JAVA.RGM.BLKDOWHL 

BLKDOWHL:「do-while」ステートメントには中括弧ブロックの使用

B L K F O R 

OPT.JAVA.RGM.BLKFOR 

BLKFOR:「for」文には中括弧ブロックの使用

B L K W H L 

OPT.JAVA.RGM.BLKWHL 

BLKWHL:「while」文には中括弧ブロックの使用

C L N C 

OPT.JAVA.RGM.CLNC 

CLNC:clone()メソッドでのコンストラクタの使用回避

Make your clone() method final for security 

OPT.JAVA.RGM.CLONE 

CLONE:すべてのclone()メソッドでsuper.clone()の呼び出し

D U I D 

OPT.JAVA.RGM.DUID 

DUID:すべてのSerializableクラスにserialVersionUIDの作成

Dont Use Assert 

OPT.JAVA.RGM.DontUseAssert 

DontUseAssert:Assertの使用およびAssertionErrorの起動の禁止

F F 

OPT.JAVA.RGM.FF 

FF:定数フィールドはprivateかつfinalとして宣言

F L V 

OPT.JAVA.RGM.FLV 

FLV:定数のローカル変数はfinalとして宣言

H M F 

OPT.JAVA.RGM.HMF 

HMF:メソッドのローカル変数やパラメータに、クラスのフィールドと同じ名前を付けない

P C I F 

OPT.JAVA.RGM.PCIF 

PCIF:条件文とインクリメント文によるforループの宣言

P C I F2 

OPT.JAVA.RGM.PCIF2 

PCIF2:forブロックで条件文を1つだけ使う

P C I F3 

OPT.JAVA.RGM.PCIF3 

PCIF3:明示的な条件文とインクリメント/デクリメント文による「for」ループの使用

P C T O R 

OPT.JAVA.RGM.PCTOR 

PCTOR:publicでないクラスではpublicコンストラクタの宣言禁止

P S F A 

OPT.JAVA.RGM.PSFA 

PSFA:public static final配列フィールドの使用回避

U S T 

OPT.JAVA.RGM.UST 

UST:Stringの解析にはindexOf()やsubstring()の代わりにStringTokenizerを使用

C IP A 

OPT.JAVA.RGME.CIPA 

CIPA:定数配列からの大きな配列初期化の回避

O O M E 

OPT.JAVA.RGME.OOME 

OOME:大きな配列の初期化でOutOfMemoryErrorを例外キャッチする

U N C 

OPT.JAVA.RGOR.UNC 

UNC:その変数が実装するインターフェースや、その変数を継承する基底クラスに変数をキャストすることは禁止

Use Service Locator Pattern 

OPT.JAVA.RGOR.UseServiceLocatorPattern 

UseServiceLocatorPattern:「Service Locator」パターンの適用

Avoid Packages 

OPT.JAVA.RGP.AvoidPackages 

AvoidPackages:特定のパッケージのインポート禁止

L N S P 

OPT.JAVA.RGP.LNSP 

LNSP:行区切り文字のハードコードの禁止

No Absolute Paths 

OPT.JAVA.RGP.NoAbsolutePaths 

NoAbsolutePaths:絶対パスを使用禁止

Make your clone() method final for security 

OPT.JAVA.RGS.CLONE 

CLONE:セキュリティのためにclone()メソッドはfinalに宣言

Do not compare class objects with getName() or getSimpleName() methods 

OPT.JAVA.RGS.CMP 

CMP:getName()またはgetSimpleName()メソッドを使用するクラスオブジェクトの比較禁止

Define inner classes as private 

OPT.JAVA.RGS.INNER 

INNER:内部クラスはprivateで定義

Inner classes should be protected or private 

OPT.JAVA.RGS.PKG 

PKG:内部クラスは「protected」または「private」にする

Avoid EJB AWT Swing 

OPT.JAVA.SEC_JAVA.AvoidEJBAWTSwing 

AvoidEJBAWTSwing:EJBの不適切な実装:AWT Swingの使用

Avoid EJB JVM Shutdown 

OPT.JAVA.SEC_JAVA.AvoidEJBJVMShutdown 

AvoidEJBJVMShutdown:J2EEの不適切な実装:System.exit()の使用

Avoid EJB Java Io 

OPT.JAVA.SEC_JAVA.AvoidEJBJavaIo 

AvoidEJBJavaIo:EJBの不適切な実装:Java I/Oの使用

Avoid EJB Redirect Streams 

OPT.JAVA.SEC_JAVA.AvoidEJBRedirectStreams 

AvoidEJBRedirectStreams:EJBの入力、出力、エラーのストリームの変更回避

Avoid EJB Set Class Loader 

OPT.JAVA.SEC_JAVA.AvoidEJBSetClassLoader 

AvoidEJBSetClassLoader:EJBでコンテキストのClassLoaderの設定回避

Avoid EJB Set Security Manager 

OPT.JAVA.SEC_JAVA.AvoidEJBSetSecurityManager 

AvoidEJBSetSecurityManager:EJBでシステムのSecurityManager の設定回避

Avoid EJB Synchronization Primitives 

OPT.JAVA.SEC_JAVA.AvoidEJBSynchronizationPrimitives 

AvoidEJBSynchronizationPrimitives:EJBでの同期プリミティブの使用回避

Avoid J2EE Direct Database Connection 

OPT.JAVA.SEC_JAVA.AvoidJ2EEDirectDatabaseConnection 

AvoidJ2EEDirectDatabaseConnection:J2EEの不適切な実装:Connectionの直接管理

Avoid J2EE Explicit Socket 

OPT.JAVA.SEC_JAVA.AvoidJ2EEExplicitSocket 

AvoidJ2EEExplicitSocket:J2EEの不適切な実装:Socketの直接使用

Avoid J2EE Explicit Thread Management 

OPT.JAVA.SEC_JAVA.AvoidJ2EEExplicitThreadManagement 

AvoidJ2EEExplicitThreadManagement:J2EEの不適切な実装:Threadの直接使用

Avoid J2EE Leftover Debug Code 

OPT.JAVA.SEC_JAVA.AvoidJ2EELeftoverDebugCode 

AvoidJ2EELeftoverDebugCode:J2EEアプリケーションに残されたデバッグコード

Avoid J2EE Non Serializable Objects Stored 

OPT.JAVA.SEC_JAVA.AvoidJ2EENonSerializableObjectsStored 

AvoidJ2EENonSerializableObjectsStored:J2EEアプリケーションで、セッションに格納されたシリアライズ不可能なオブジェクトの回避

Avoid Native Calls Rule 

OPT.JAVA.SEC_JAVA.AvoidNativeCallsRule 

AvoidNativeCallsRule:Javaからのネイティブ(JNI)コード呼び出しの回避

Detail Error Leak Rule 

OPT.JAVA.SEC_JAVA.DetailErrorLeakRule 

DetailErrorLeakRule:クライアントへの詳細なエラー情報の送信禁止

Execution After Redirect

OPT.JAVA.SEC_JAVA.ExecutionAfterRedirect 

ExecutionAfterRedirect:リダイレクト処理後のコードの実行(EAR)

Potential Infinite Loop

OPT.JAVA.SEC_JAVA.PotentialInfiniteLoop 

PotentialInfiniteLoop:到達不可能な終了条件を持つルール(無限ループ)

Unchecked Input In Loop Condition

OPT.JAVA.SEC_JAVA.UncheckedInputInLoopCondition 

UncheckedInputInLoopCondition:ループ条件における未チェックの入力

Avoid Assign Repeated Value 

OPT.JAVA.SENT.AvoidAssignRepeatedValue 

AvoidAssignRepeatedValue:すでに代入された値を変数に代入しない

Avoid Call Get Resource Rule 

OPT.JAVA.SENT.AvoidCallGetResourceRule 

AvoidCallGetResourceRule:this.getClass.getResourceの呼び出し回避

Avoid Compare Float Point 

OPT.JAVA.SENT.AvoidCompareFloatPoint 

AvoidCompareFloatPoint:浮動小数点の比較の回避

Implement Externalizable 

OPT.JAVA.SERI.ImplementExternalizable 

ImplementExternalizable:Externalizableを実装するすべてのクラスには、パラメーターのないコンストラクタが必要

Private Read Write Objects 

OPT.JAVA.SERI.PrivateReadWriteObjects 

PrivateReadWriteObjects:externalizable/serializableクラスで、オプションのreadObjectとwriteObjectをprivateとして宣言

Avoid Implement Single Thread Model 

OPT.JAVA.SERV.AvoidImplementSingleThreadModel 

AvoidImplementSingleThreadModel:サーブレットでのjavax.servlet.SingleThreadModelインターフェースの実装の回避

Avoid Large Syncronised Blocks 

OPT.JAVA.SERV.AvoidLargeSyncronisedBlocks 

AvoidLargeSyncronisedBlocks:6つ以上のステートメントを持つ同期ブロックの回避

Avoid Constructor Injection By Name 

OPT.JAVA.SPRING.AvoidConstructorInjectionByName 

AvoidConstructorInjectionByName:名前によるコンストラクタインジェクションの回避

Avoid Hardcoding Properties Into XML 

OPT.JAVA.SPRING.AvoidHardcodingPropertiesIntoXML 

AvoidHardcodingPropertiesIntoXML:XML記述子へのプロパティのハードコーディングを避け、代わりに外部に定義

Avoid Loading Multiple XML Configuration Files 

OPT.JAVA.SPRING.AvoidLoadingMultipleXMLConfigurationFiles 

AvoidLoadingMultipleXMLConfigurationFiles:複数のXML設定ファイルの読み込みの回避

Avoid Too Deep Hierarchy In Jobs 

OPT.JAVA.SPRING.AvoidTooDeepHierarchyInJobs 

AvoidTooDeepHierarchyInJobs:ジョブの深すぎる階層の回避

Avoid Too Deep Hierarchy In Steps 

OPT.JAVA.SPRING.AvoidTooDeepHierarchyInSteps 

AvoidTooDeepHierarchyInSteps:深すぎるステップ階層の回避

Avoid Using Version Numbers Within Spring Schema Names 

OPT.JAVA.SPRING.AvoidUsingVersionNumbersWithinSpringSchemaNames 

AvoidUsingVersionNumbersWithinSpringSchemaNames:Springスキーマ名でのバージョン番号の使用回避

Disable XML Validation In Production 

OPT.JAVA.SPRING.DisableXMLValidationInProduction 

DisableXMLValidationInProduction:本番環境でのXML検証を無効にする

Enforces JSON Responses 

OPT.JAVA.SPRING.EnforcesJSONResponses 

EnforcesJSONResponses:REST アプリケーションではJSONレスポンスの使用

Prefer Repository Rest Resource Annotation 

OPT.JAVA.SPRING.PreferRepositoryRestResourceAnnotation 

PreferRepositoryRestResourceAnnotation:RestResourceの代わりにRepositoryRestResourceアノテーションの使用

Setup Commit Interval For Chunk Processing 

OPT.JAVA.SPRING.SetupCommitIntervalForChunkProcessing 

SetupCommitIntervalForChunkProcessing:チャンク処理の適切なコミット間隔の設定

Use Annotations To Create Controllers 

OPT.JAVA.SPRING.UseAnnotationsToCreateControllers 

UseAnnotationsToCreateControllers:アノテーションだけでコントローラの作成

Use Java Based Configuration Instead XML Config 

OPT.JAVA.SPRING.UseJavaBasedConfigurationInsteadXMLConfig 

UseJavaBasedConfigurationInsteadXMLConfig:XMLベースの設定の代わりにJavaベースの設定の使用

Use Lazy Initialized Singleton Beans 

OPT.JAVA.SPRING.UseLazyInitializedSingletonBeans 

UseLazyInitializedSingletonBeans:遅延初期化シングルトンBeanの使用

Use Thread Safe Multi Threading Steps 

OPT.JAVA.SPRING.UseThreadSafeMultiThreadingSteps 

UseThreadSafeMultiThreadingSteps:スレッドセーフなマルチスレッド処理の使用

A D L R 

OPT.JAVA.STR.ADLR 

ADLR:リテラルの重複の回避

Avoid String Concat 

OPT.JAVA.STR.AvoidStringConcat

AvoidStringConcat:「+」または「+=」を使用した文字列連結の回避

L S T R 

OPT.JAVA.STR.LSTR 

LSTR:1文字の文字列をループ内で連結しない

N T U L C 

OPT.JAVA.STR.NTULC 

NTULC:toUpperCase.equalsとtoLowerCase.equalsのどちらも使用しない

S B 

OPT.JAVA.STR.SB 

SB:StringBuffer/StringBuilderは明示的な初期サイズでインスタンス化

U C T M 

OPT.JAVA.STR.UCTM 

UCTM:不必要な時間変換の回避

U S B 

OPT.JAVA.STR.USB

USB:文字列の連結演算子「+」の使用回避

F I E L D S 

OPT.JAVA.STRUTS.FIELDS 

FIELDS:ActionFormを継承するフォームBeanの各フィールドにはgetterとsetterを用意

F O R M 

OPT.JAVA.STRUTS.FORM 

フォーム:フォームBeanでは、getterとsetterの使用

I N S T 

OPT.JAVA.STRUTS.INST 

INST:Actionクラスのインスタンス変数の回避

Case With Return 

OPT.JAVA.SWITCH.CaseWithReturn 

CaseWithReturn:すべてのCASE文はbreak文で終わることが必要

Avoid Map Set In URL 

OPT.JAVA.VELOC.AvoidMapSetInURL 

AvoidMapSetInURL:java.net.URLオブジェクトのMapメソッドとSetメソッドの回避

Avoid String Equals 

OPT.JAVA.VELOC.AvoidStringEquals 

AvoidStringEquals:String.equals()を使用して系列の長さをチェックしない

Avoid URL Methods 

OPT.JAVA.VELOC.AvoidURLMethods 

AvoidURLMethods:java.net.URLのequals()とhashCode()の使用回避

Transient For System Resources 

OPT.JAVA.J2SE.TransientForSystemResources 

TransientForSystemResources:システムリソースを持つフィールドにはtransient修飾子を付ける

Check HTTP Methods 

OPT.JAVA.JAX.CheckHTTPMethods 

CheckHTTPMethods:リクエストの送信に使われるHTTPメソッドの確認

Avoid Total Memory Debug 

OPT.JAVA.PERF.AvoidTotalMemoryDebug 

AvoidTotalMemoryDebug:Runtime.totalMemory()によるデバッグの回避

Avoid Trace Method Calls Debug 

OPT.JAVA.PERF.AvoidTraceMethodCallsDebug 

AvoidTraceMethodCallsDebug:Runtime.traceMethodCalls()によるデバッグの回避

Hardcoded Username Password

OPT.JAVA.SEC_JAVA.HardcodedUsernamePassword 

HardcodedUsernamePassword:ハードコードされた資格情報の使用

Password In Configuration File

OPT.JAVA.SEC_JAVA.PasswordInConfigurationFile 

PasswordInConfigurationFile:設定ファイルでの認証情報の使用

Plaintext Storage Of Password

OPT.JAVA.SEC_JAVA.PlaintextStorageOfPassword 

PlaintextStorageOfPassword:パスワードの平文保存

Serializable Class Containing Sensitive Data

OPT.JAVA.SEC_JAVA.SerializableClassContainingSensitiveData 

SerializableClassContainingSensitiveData:機密データを含むシリアライズ可能クラスの検出

Weak Password Hashing 

OPT.JAVA.SEC_JAVA.WeakPasswordHashing 

WeakPasswordHashing:脆弱なパスワードのハッシュ化