JBoss Java kodu inceleme kuralları

Java kod incelemesi kuralları kümesi altında, JBoss to WebSphere kod geçişi kategorisi birden çok kural içerir. Bir kuralla ilgili daha fazla bilgi edinmeyi öğrenmek için Ayrıntılı yardımın görüntülenmesibaşlıklı konuya bakın.

Kural Adı Hızlı Düzeltme Uygulanan İşlem
JBoss 'a özgü adlandırma arama dizgileri kullanma Hayır Bu kural, "java:jboss" ve "java:jdbc" gibi "java:" ile başlayan JBoss Application Server adlandırma arama dizgilerinin kullanımını saptar. "java:" ya da "java:/" ile başlayan dizgiler, içeriğin daha sonra JBoss Application Server değerleri içerebileceği için de saptınılır.
JBoss 'a özgü paketleri kullanma Hayır Bu kural, org.jbossile başlayan içe aktarılan sınıfları saptar. Bu sınıfların el ile geçirilmesi gerekir.
JBoss 'a özgü gönderme ya da alma zamanaşımı değişmezlerini kullanma Hayır Bu kural, JBoss Application Server bağlantı ve yanıt zamanaşımı değişmezlerini ( org.jboss.ws.timeoutgibi) saptar.
JBoss 'a özgü dizgi hazır bilgilerini kullanma Hayır Bu kural, diğer kurallar tarafından kapsamayan genel JBoss Application Server dizgillerini saptar.
JBoss uygulaması başlatma ya da kapatma mantığı için MBean 'leri kullanmayın Evet

Bu kural, uygulama başlatma ve kapatma mantığını çalıştırmak için MBean kayıt arabirimini gerçekleştiren sınıfları saptar.

Bu kural için sağlanan hızlı düzeltme, başlatma ve sona erdirme mantığını gerçekleştirmek üzere sınıfı ServletContextListener arabirimini gerçekleştirmeye dönüştürür.

Önemli: Kodunuz MBean 'leri sağlıyorsa ve bu, amaçlanan amaç için MBeanRegistration (MBeanRegistration) öğesini uyguladıysa, bu kuralı kapatmanız gerekir.
MBean'lerini diğer uygulama sunucularına geçir Hayır

This rule detects all invocations of the javax.management.ObjectName constructor that might be application-server specific and would need to be migrated for the application to run on WebSphere Application Server.

Portable JNDI özellik değerlerini kullan Hayır This rule detects the use of the constructor, javax.naming.InitialContext(Hashtable), specifying not to put any proprietary JBoss Application Server JNDI name values into the hash table.
JBoss 'a özgü JNDI özellik değerlerini kullanmayın Evet

Bu WebSphere Application Server geleneksel kuralı, bu JNDI özellik değerlerinin kullanımını algılar:

  • java.naming.factory.initial = org.jnp.interfaces. NamingContextFactory
  • java.naming.provider.url = jnp://localhost:1099

Bu değerler bulunursa, JNDI adlarını varsayılan portatif JNDI adı değerlerine değiştirmek için bir seçenek sağlanır.

  • java.naming.factory.initial = com.ibm.websphere.naming. WsnInitialContextFactory
  • java.naming.provider.url= corbaloc:iiop:localhost:2809
Kısıtlama: JNDI adı değerleri, bağlamın javax.naming. InitialContext(Hashtable) oluşturucusuyla kullanıma hazırlandığı aynı Java kaynak dosyasında olmalıdır.
JBoss 'a özgü gönderme ya da alma zamanaşımı değişmezlerini kullanma Hayır Bu WebSphere Application Server geleneksel kuralı, JBoss JAX-RPC ve JAX-WS zamanaşımı değişmezlerinin IBM web hizmeti zamanaşımı sabitlerine geçirileceğini saptar.
JBoss paketleri ve sınıfları WebSphere' de desteklenmez Hayır

Bu kural, Java kodu ve özellik dosyalarındaki JBoss dizgi hazır bilgilerinin kullanılmasını algılar. "jboss" içeren tüm dizgi hazır bilgileri işaretlenir. Bunun yerine Java EE ya da WebSphere Application Server tarafından sağlanan paketleri, sınıfları ve özellikleri kullanın.

Validate the result of concatenation with getRealPath("") Hayır

WebSphere geleneksel, getRealYolunda ("") sonda bir eğik çizgi ile biten bir Dizgi döndürür. Bu yöntem ile bitiştirmenin fazladan bir eğik çizgi eklemediğini doğrulayın.

Validate the result of concatenation with getRealPath("*/") Hayır

Liberty 'de ve WebSphere geleneksel, getRealYolu ("*/") sonda bir eğik çizgi ile biten bir Dizgi döndürür. Bu yöntem ile bitiştirmenin fazladan bir eğik çizgi eklemediğini doğrulayın.