1 19 25 26 package org.netbeans.modules.j2ee.sun.share.configbean; 27 28 import java.util.Map ; 29 import java.util.HashMap ; 30 31 import javax.enterprise.deploy.spi.DConfigBean ; 32 import javax.enterprise.deploy.spi.DConfigBeanRoot ; 33 import javax.enterprise.deploy.spi.DeploymentConfiguration ; 34 import javax.enterprise.deploy.spi.exceptions.ConfigurationException ; 35 import javax.enterprise.deploy.model.DDBean ; 36 import javax.enterprise.deploy.model.DDBeanRoot ; 37 import junit.framework.*; 38 import org.netbeans.modules.schema2beans.BaseBean; 39 40 import org.netbeans.modules.j2ee.sun.share.configbean.customizers.ejbmodule.*; 41 42 46 public class EjbJarRootTest extends TestCase { 47 48 49 public void testGetDConfigBean() { 50 EjbJarRoot ejr = new EjbJarRoot(); 51 MockDDBeanRoot t = new MockDDBeanRoot(); 52 t.setXpath("/ejb-jar"); 53 t.setRoot(t); 54 SunONEDeploymentConfiguration dc = 55 new SunONEDeploymentConfiguration(null,null); 56 try { 57 ejr.init(t, dc, null); 58 } 59 catch (ConfigurationException ce) { 60 fail("why did I get I get a ConfigurationException here"); 61 } 62 MockDDBean mock = new MockDDBean(); 63 DConfigBean dcb = null; 64 try { 65 dcb = ejr.getDConfigBean(mock); 66 fail("bean with no xpath accepted"); 67 } 68 catch (ConfigurationException ce) { 69 } 71 try { 72 mock.setXpath(EjbJarRoot.SECURITY_ROLE_XPATH); 75 mock.setRoot(t); 76 DConfigBean dcb1 = ejr.getDConfigBean(mock); 77 assertNotNull(dcb1); 78 assertTrue( dcb1 != dcb ); 79 SecurityRoleMapping srm = (SecurityRoleMapping) dcb; 80 mock = new MockDDBean(); 81 mock.setXpath(EjbJarRoot.ENTITY_XPATH); 82 mock.setRoot(t); 83 Map pairs = new HashMap (); 84 String retVal[] = new String [1]; 85 retVal[0] = EntityEjbDCBFactory.BEAN; 86 pairs.put(EntityEjbDCBFactory.PERSISTENCE_TYPE_KEY, retVal); 87 mock.setText(pairs); 88 DConfigBean dcb2 = ejr.getDConfigBean(mock); 89 assertNotNull(dcb2); 90 assertTrue(dcb2!=dcb1); 91 EntityEjb ent = (EntityEjb) dcb2; 92 EntityEjbCustomizer entCust = new EntityEjbCustomizer(); 93 try { 94 ent.setRefreshPeriodInSeconds("20"); 95 ent.setCommitOption("foo"); 96 ent.setIsReadOnlyBean(Boolean.FALSE); 97 ent.setJndiName("ejb/testJNDIName"); 98 ent.setPassByReference(Boolean.FALSE); 99 ent.setPrincipalName("PrincipalOne"); 100 } catch (java.beans.PropertyVetoException pve) { 101 pve.printStackTrace(); 102 fail("got an exception"); 103 } 104 entCust.setObject(ent); 105 entCust.validateEntries(); 106 entCust.getErrors(); 107 108 mock = new MockDDBean(); 109 mock.setXpath(EjbJarRoot.SESSION_XPATH); 110 mock.setRoot(t); 111 pairs = new HashMap (); 112 retVal[0] = SessionEjbDCBFactory.STATELESS; 113 pairs.put(SessionEjbDCBFactory.SESSION_TYPE_KEY, retVal); 114 mock.setText(pairs); 115 DConfigBean dcb3 = ejr.getDConfigBean(mock); 116 assertNotNull(dcb3); 117 assertTrue(dcb3!=dcb2); 118 StatelessEjb less = (StatelessEjb) dcb; 119 StatelessEjbCustomizer lessCust = new StatelessEjbCustomizer(); 120 lessCust.setObject(less); 121 lessCust.getErrors(); 122 mock = new MockDDBean(); 123 mock.setXpath(EjbJarRoot.MD_XPATH); 124 mock.setRoot(t); 125 DConfigBean dcb4 = ejr.getDConfigBean(mock); 126 assertNotNull(dcb4); 127 assertTrue(dcb4!=dcb3); 128 MDEjb mdb = (MDEjb) dcb4; 129 MDEjbCustomizer mdbCust = new MDEjbCustomizer(); 130 mdbCust.setObject(mdb); 131 mock = new MockDDBean(); 132 mock.setXpath(EjbJarRoot.ENTITY_XPATH); 133 mock.setRoot(t); 134 pairs = new HashMap (); 135 retVal[0] = EntityEjbDCBFactory.CONTAINER; 136 pairs.put(EntityEjbDCBFactory.PERSISTENCE_TYPE_KEY, retVal); 137 mock.setText(pairs); 138 DConfigBean dcb5 = ejr.getDConfigBean(mock); 139 assertNotNull(dcb5); 140 assertTrue(dcb2!=dcb5); 141 CmpEntityEjb cmp = (CmpEntityEjb) dcb5; 142 try { 143 cmp.setConsistency("foo"); 144 cmp.setSchema("bar"); 145 cmp.setTableName("baz"); 146 } catch (java.beans.PropertyVetoException pve) { 147 pve.printStackTrace(); 148 fail("got an exception"); 149 } 150 CmpEntityEjbCustomizer cmpCust = new CmpEntityEjbCustomizer(); 151 cmpCust.setObject(dcb5); 152 cmpCust.getErrors(); 153 mock = new MockDDBean(); 154 mock.setXpath(EjbJarRoot.SESSION_XPATH); 155 mock.setRoot(t); 156 pairs = new HashMap (); 157 retVal[0] = SessionEjbDCBFactory.STATEFUL; 158 pairs.put(SessionEjbDCBFactory.SESSION_TYPE_KEY, retVal); 159 mock.setText(pairs); 160 DConfigBean dcb6 = ejr.getDConfigBean(mock); 161 assertNotNull(dcb6); 162 assertTrue(dcb3!=dcb6); 163 StatefulEjb ful = (StatefulEjb) dcb6; 164 StatefulEjbCustomizer fulCust = new StatefulEjbCustomizer(); 165 fulCust.setObject(ful); 166 mock = new MockDDBean(); 167 mock.setXpath(EjbJarRoot.SESSION_XPATH); 168 mock.setRoot(t); 169 pairs = new HashMap (); 170 retVal[0] = "statefull"; 171 pairs.put(SessionEjbDCBFactory.SESSION_TYPE_KEY, retVal); 172 mock.setText(pairs); 173 try { 174 DConfigBean dcb7 = ejr.getDConfigBean(mock); 175 fail("illegal session-type accepted"); 176 } 177 catch (ConfigurationException ce) { 178 assertEquals("","Unknown session-type (Value: 'statefull')",ce.getMessage()); 179 } 180 mock = new MockDDBean(); 181 mock.setXpath(EjbJarRoot.ENTITY_XPATH); 182 mock.setRoot(t); 183 pairs = new HashMap (); 184 retVal[0] = "statefull"; 185 pairs.put(EntityEjbDCBFactory.PERSISTENCE_TYPE_KEY, retVal); 186 mock.setText(pairs); 187 try { 188 DConfigBean dcb8 = ejr.getDConfigBean(mock); 189 fail("illegal session-type accepted"); 190 } 191 catch (ConfigurationException ce) { 192 assertEquals("","Unknown persistence-type (Value: 'statefull')",ce.getMessage()); 193 } 194 } 195 catch (ConfigurationException ce) { 196 ce.printStackTrace(); 197 fail(ce.getMessage()); 198 } 199 200 } 201 202 public EjbJarRootTest(java.lang.String testName) { 203 super(testName); 204 } 205 206 } 207 | Popular Tags |