1 23 package com.sun.enterprise.tools.verifier.tests.ejb.session; 24 25 import com.sun.enterprise.tools.verifier.tests.ejb.EjbTest; 26 import com.sun.enterprise.deployment.*; 27 import com.sun.enterprise.tools.verifier.*; 28 import com.sun.enterprise.tools.verifier.tests.ejb.EjbCheck; 29 import com.sun.enterprise.tools.verifier.tests.*; 30 31 36 public class TransactionTypeNullForContainerTX extends EjbTest implements EjbCheck { 37 38 39 48 public Result check(EjbDescriptor descriptor) { 49 50 Result result = getInitializedResult(); 51 ComponentNameConstructor compName = getVerifierContext().getComponentNameConstructor(); 52 53 if (descriptor instanceof EjbSessionDescriptor) { 54 String transactionType = descriptor.getTransactionType(); 55 if (EjbDescriptor.BEAN_TRANSACTION_TYPE.equals(transactionType)) { 56 try { 61 if (descriptor.getMethodContainerTransactions().size() > 0) { 62 result.addErrorDetails(smh.getLocalString 66 ("tests.componentNameConstructor", 67 "For [ {0} ]", 68 new Object [] {compName.toString()})); 69 result.failed(smh.getLocalString 70 (getClass().getName() + ".failed", 71 "Error: Session Beans [ {0} ] with [ {1} ] managed \n" + 72 "transaction demarcation should not have container \n" + 73 "transactions defined.", 74 new Object [] {descriptor.getName(),transactionType})); 75 } else { 76 result.addGoodDetails(smh.getLocalString 79 ("tests.componentNameConstructor", 80 "For [ {0} ]", 81 new Object [] {compName.toString()})); 82 result.passed(smh.getLocalString 83 (getClass().getName() + ".passed", 84 "This session bean [ {0} ] is [ {1} ] managed and correctly declares no container transactions.", 85 new Object [] {descriptor.getName(),transactionType})); 86 } 87 return result; 88 } catch (NullPointerException e) { 89 result.addGoodDetails(smh.getLocalString 92 ("tests.componentNameConstructor", 93 "For [ {0} ]", 94 new Object [] {compName.toString()})); 95 result.passed(smh.getLocalString 96 (getClass().getName() + ".passed", 97 "This session bean [ {0} ] is [ {1} ] managed and correctly declares no container transactions.", 98 new Object [] {descriptor.getName(),transactionType})); 99 return result; 100 } 101 102 } else { 103 result.addNaDetails(smh.getLocalString 106 ("tests.componentNameConstructor", 107 "For [ {0} ]", 108 new Object [] {compName.toString()})); 109 result.notApplicable(smh.getLocalString 110 (getClass().getName() + ".notApplicable1", 111 "Session bean [ {0} ], expected [ {1} ] managed, but called with [ {2} ] managed.", 112 new Object [] {descriptor.getName(),EjbDescriptor.BEAN_TRANSACTION_TYPE, EjbDescriptor.CONTAINER_TRANSACTION_TYPE})); 113 return result; 114 } 115 } else { 116 result.addNaDetails(smh.getLocalString 117 ("tests.componentNameConstructor", 118 "For [ {0} ]", 119 new Object [] {compName.toString()})); 120 result.notApplicable(smh.getLocalString 121 (getClass().getName() + ".notApplicable", 122 "[ {0} ] expected {1} \n bean, but called with {2} bean.", 123 new Object [] {getClass(),"Session","Entity"})); 124 return result; 125 } 126 } 127 } 128 | Popular Tags |