private void clearEmptyMappedName(JndiConsumer consumer) { if (consumer == null) return; List<JndiReference> refs = new ArrayList<JndiReference>(); refs.addAll(consumer.getEjbLocalRef()); refs.addAll(consumer.getEjbRef()); refs.addAll(consumer.getEnvEntry()); refs.addAll(consumer.getMessageDestinationRef()); refs.addAll(consumer.getPersistenceContextRef()); refs.addAll(consumer.getPersistenceUnitRef()); refs.addAll(consumer.getResourceEnvRef()); refs.addAll(consumer.getResourceRef()); refs.addAll(consumer.getServiceRef()); for (JndiReference ref : refs) { if (ref.getMappedName() != null && ref.getMappedName().length() == 0) ref.setMappedName(null); } } }
protected boolean willMergeEnvironment(JndiConsumer specDD, XmlObject plan) throws DeploymentException { return !specDD.getEjbRef().isEmpty() || !specDD.getEjbLocalRef().isEmpty(); }
protected boolean willMergeEnvironment(JndiConsumer specDD, XmlObject plan) { return !specDD.getResourceEnvRef().isEmpty() || !specDD.getMessageDestinationRef().isEmpty(); }
EjbLocalRef ejbLocalRef = annotatedApp.getEjbLocalRefMap().get(getJndiName(localRefName)); annotatedApp.getEjbLocalRef().add(ejbLocalRef); EjbRef ejbRef = annotatedApp.getEjbRefMap().get(getJndiName(remoteRefName)); annotatedApp.getEjbRef().add(ejbRef); EjbRef ejbRef = annotatedApp.getEjbRefMap().get(getJndiName(remoteRefName)); annotatedApp.getEjbRef().add(ejbRef);
merge(bean.getEnvEntryMap(), webApp.getEnvEntryMap()); merge(bean.getEjbRefMap(), webApp.getEjbRefMap()); merge(bean.getEjbLocalRefMap(), webApp.getEjbLocalRefMap()); merge(bean.getServiceRefMap(), webApp.getServiceRefMap()); merge(bean.getResourceRefMap(), webApp.getResourceRefMap()); merge(bean.getResourceEnvRefMap(), webApp.getResourceEnvRefMap()); merge(bean.getMessageDestinationRefMap(), webApp.getMessageDestinationRefMap()); merge(bean.getPersistenceContextRefMap(), webApp.getPersistenceContextRefMap()); merge(bean.getPersistenceUnitRefMap(), webApp.getPersistenceUnitRefMap()); mergeUserTransaction(bean.getResourceRefMap(), webApp.getResourceRefMap(), webApp); mergeUserTransaction(bean.getResourceEnvRefMap(), webApp.getResourceEnvRefMap(), webApp); mergeUserTransaction(webApp.getResourceRefMap(), bean.getResourceRefMap(), bean); mergeUserTransaction(webApp.getResourceEnvRefMap(), bean.getResourceEnvRefMap(), bean);
fail(consumer.getJndiConsumerName(), "resourceAnnotation.onClassWithNoName"); return; refName = member.getDeclaringClass().getName() + "/" + member.getName(); } else { fail(consumer.getJndiConsumerName(), "Unable to ascertain name of resourceAnnotation"); return; JndiReference reference = consumer.getEnvEntryMap().get(refName); if (reference == null) { boolean shouldReturn = false; if (EntityManager.class.isAssignableFrom(type)) { fail(consumer.getJndiConsumerName(), "resourceRef.onEntityManager", refName); shouldReturn = true; } else if (EntityManagerFactory.class.isAssignableFrom(type)) { fail(consumer.getJndiConsumerName(), "resourceRef.onEntityManagerFactory", refName); shouldReturn = true; ResourceEnvRef resourceEnvRef = consumer.getResourceEnvRefMap().get(refName); if (resourceEnvRef == null) { resourceEnvRef = new ResourceEnvRef(); resourceEnvRef.setName(refName); consumer.getResourceEnvRef().add(resourceEnvRef); final EnvEntry envEntry = new EnvEntry(); envEntry.setName(refName); consumer.getEnvEntry().add(envEntry);
public void parseWebDD(JndiConsumer annotatedWebAppDD, GerWebAppType webApp) { Collection<EjbRef> ejbRefs = annotatedWebAppDD.getEjbRef(); for (EjbRef ejbRef: ejbRefs) { String refName = ejbRef.getEjbRefName(); Collection<EjbLocalRef> ejbLocalRefs = annotatedWebAppDD.getEjbLocalRef(); for (EjbLocalRef ejbLocalRef: ejbLocalRefs) { String refName = ejbLocalRef.getEjbRefName(); Collection<ServiceRef> serviceRefs = annotatedWebAppDD.getServiceRef(); for (ServiceRef serviceRef: serviceRefs) { String refName = serviceRef.getServiceRefName(); Collection<ResourceRef> resourceRefs = annotatedWebAppDD.getResourceRef(); for (ResourceRef resourceRef: resourceRefs) { String refName = resourceRef.getResRefName(); Collection<ResourceEnvRef> resourceEnvRefs = annotatedWebAppDD.getResourceEnvRef(); for (ResourceEnvRef resourceEnvRef: resourceEnvRefs) { String refName = resourceEnvRef.getResourceEnvRefName();
private void pruneRefs(final JndiConsumer bean, final EjbDeployment ejbDeployment) { for (final ResourceRef ref : copy(bean.getResourceRef())) { if (ref.getResType().startsWith("javax.jms.")) { final ResourceLink resourceLink = ejbDeployment.getResourceLink(ref.getName()); ejbDeployment.getResourceLink().remove(resourceLink); bean.getResourceRef().remove(ref); } } for (final ResourceEnvRef ref : bean.getResourceEnvRef()) { final ResourceLink resourceLink = ejbDeployment.getResourceLink(ref.getName()); ejbDeployment.getResourceLink().remove(resourceLink); } bean.getResourceEnvRef().clear(); for (final MessageDestinationRef ref : bean.getMessageDestinationRef()) { final ResourceLink resourceLink = ejbDeployment.getResourceLink(ref.getName()); ejbDeployment.getResourceLink().remove(resourceLink); } bean.getMessageDestinationRef().clear(); bean.getPersistenceContextRef().clear(); bean.getPersistenceUnitRef().clear(); }
@Override protected boolean willMergeEnvironment(JndiConsumer specDD, XmlObject plan) { return !specDD.getServiceRef().isEmpty(); }
private void processJndiRefs(String moduleId, JndiConsumer jndiConsumer, AppResources appResources) throws OpenEJBException { for (ResourceRef ref : jndiConsumer.getResourceRef()) { for (JndiReference ref : jndiConsumer.getResourceEnvRef()) { for (MessageDestinationRef ref : jndiConsumer.getMessageDestinationRef()) {
Collection<PersistenceUnitRef> specPersistenceUnitRefsUntyped = specDD.getPersistenceUnitRef(); Map<String, GerPersistenceUnitRefType> gerPersistenceUnitRefsUntyped = getGerPersistenceUnitRefs(plan); for (Map.Entry<String, PersistenceUnitRef> entry : specDD.getPersistenceUnitRefMap().entrySet()) { try { String persistenceUnitRefName = entry.getKey(); Collection<PersistenceContextRef> specPersistenceContextRefsUntyped = specDD.getPersistenceContextRef(); Map<String, GerPersistenceContextRefType> gerPersistenceContextRefsUntyped = getGerPersistenceContextRefs(plan); for (Map.Entry<String, PersistenceContextRef> entry : specDD.getPersistenceContextRefMap().entrySet()) { try { String persistenceContextRefName = entry.getKey();
private void processPersistenceRefs(JndiConsumer component, DeploymentModule module, LinkResolver<PersistenceUnit> persistenceUnits, URI moduleURI) { String componentName = component.getJndiConsumerName(); ValidationContext validation = module.getValidation(); for (PersistenceRef ref : component.getPersistenceUnitRef()) { processPersistenceRef(persistenceUnits, ref, moduleURI, componentName, validation); } for (PersistenceRef ref : component.getPersistenceContextRef()) { processPersistenceRef(persistenceUnits, ref, moduleURI, componentName, validation); } }
fail(consumer.getJndiConsumerName(), "presistenceUnitAnnotation.onClassWithNoName", persistenceUnit.unitName()); return; PersistenceUnitRef persistenceUnitRef = consumer.getPersistenceUnitRefMap().get(refName); if (persistenceUnitRef == null) { persistenceUnitRef = new PersistenceUnitRef(); persistenceUnitRef.setPersistenceUnitName(persistenceUnit.unitName()); persistenceUnitRef.setPersistenceUnitRefName(refName); consumer.getPersistenceUnitRef().add(persistenceUnitRef); String jndiConsumerName = consumer.getJndiConsumerName(); String name = persistenceUnitRef.getName(); validationContext.fail(jndiConsumerName, "presistenceUnitAnnotation.onEntityManager", name); fail(consumer.getJndiConsumerName(), "presistenceUnitAnnotation.onNonEntityManagerFactory", persistenceUnitRef.getName()); } else {
fail(consumer.getJndiConsumerName(), "presistenceContextAnnotation.onClassWithNoName", persistenceContext.unitName()); return; PersistenceContextRef persistenceContextRef = consumer.getPersistenceContextRefMap().get(refName); if (persistenceContextRef == null) { persistenceContextRef = new PersistenceContextRef(); persistenceContextRef.setPersistenceContextType(PersistenceContextType.TRANSACTION); consumer.getPersistenceContextRef().add(persistenceContextRef); } else { if (persistenceContextRef.getPersistenceUnitName() == null || ("").equals(persistenceContextRef.getPersistenceUnitName())) { fail(consumer.getJndiConsumerName(), "presistenceContextAnnotation.onEntityManagerFactory", persistenceContextRef.getName()); } else if (!EntityManager.class.isAssignableFrom(type)) { fail(consumer.getJndiConsumerName(), "presistenceContextAnnotation.onNonEntityManager", persistenceContextRef.getName()); } else {
serviceRef = consumer.getServiceRefMap().get(refName); serviceRef.setServiceRefName(refName); consumer.getServiceRef().add(serviceRef);
private void apply(JndiConsumer bean, EnvEntry newEntry, String componentName) { EnvEntry entry = bean.getEnvEntryMap().get(newEntry.getName()); if (entry != null){ log.debug("envprops.override", componentName, entry.getName(), entry.getEnvEntryValue(), newEntry.getEnvEntryValue()); entry.setEnvEntryValue(newEntry.getEnvEntryValue()); return; } // Must not be an override, just add the new entry log.debug("envprops.add", componentName, newEntry.getName(), newEntry.getEnvEntryValue()); bean.getEnvEntry().add(newEntry); }
private static void addResource(final JndiConsumer consumer, final ResourceRef resourceRef) { final ResourceRef existing = consumer.getResourceRefMap().get(resourceRef.getKey()); if (existing != null) { existing.setMappedName(resourceRef.getMappedName()); } else { consumer.getResourceRef().add(resourceRef); } }
private void link(final JndiConsumer consumer) { final Map<String, String> links = new HashMap<String, String>(); add(links, BeanManager.class); add(links, Validator.class); add(links, ValidatorFactory.class); add(links, EJBContext.class, EntityContext.class, SessionContext.class, MessageDrivenContext.class); add(links, UserTransaction.class); add(links, TransactionManager.class); add(links, TransactionSynchronizationRegistry.class); add(links, TimerService.class); add(links, WebServiceContext.class); final List<JndiReference> refs = new ArrayList<JndiReference>(); refs.addAll(consumer.getResourceRef()); refs.addAll(consumer.getResourceEnvRef()); for (final JndiReference ref : refs) { final String link = links.get(ref.getType()); if (link == null) { continue; } if (ref.getName().equals(link)) { // make sure the user hasn't linked it to itself or anything else ref.setLookupName(null); continue; } ref.setLookupName(link); } }
for (Map.Entry<String, EjbRef> entry: specDD.getEjbRefMap().entrySet()) { injectionsMap.put(entry.getKey(), entry.getValue().getInjectionTarget()); for (Map.Entry<String, EjbLocalRef> entry: specDD.getEjbLocalRefMap().entrySet()) { Set<InjectionTarget> injectionTargets = injectionsMap.get(entry.getKey()); if (injectionTargets != null) {
protected boolean willMergeEnvironment(JndiConsumer specDD, XmlObject plan) { return !specDD.getResourceRef().isEmpty(); }