private void addBinding(String source, String compTarget, String moduleTarget, EEModuleDescription moduleDescription, DeploymentUnit deploymentUnit) { final LookupInjectionSource injectionSource = new LookupInjectionSource(source); if (DeploymentTypeMarker.isType(WAR, deploymentUnit)) { moduleDescription.getBindingConfigurations().add(new BindingConfiguration(moduleTarget, injectionSource)); } else { if (DeploymentTypeMarker.isType(APPLICATION_CLIENT, deploymentUnit)) { moduleDescription.getBindingConfigurations().add(new BindingConfiguration(compTarget, injectionSource)); } for(ComponentDescription componentDescription : moduleDescription.getComponentDescriptions()) { if(componentDescription.getNamingMode() == ComponentNamingMode.CREATE) { componentDescription.getBindingConfigurations().add(new BindingConfiguration(compTarget, injectionSource)); } } } }
protected void processComponentConfig(final ComponentDescription componentDescription) throws DeploymentUnitProcessingException { if (!(componentDescription instanceof EJBComponentDescription)) { return; // Only process EJBs } // if the EJB is packaged in a .war, then we need to bind the java:comp/EJBContext only once for the entire module if (componentDescription.getNamingMode() != ComponentNamingMode.CREATE) { // get the module description final EEModuleDescription moduleDescription = componentDescription.getModuleDescription(); // the java:module/EJBContext binding configuration // Note that we bind to java:module/EJBContext since it's a .war. End users can still lookup java:comp/EJBContext // and that will internally get translated to java:module/EJBContext for .war, since java:comp == java:module in // a web ENC. So binding to java:module/EJBContext is OK. final BindingConfiguration ejbContextBinding = new BindingConfiguration("java:module/EJBContext", directEjbContextReferenceSource); moduleDescription.getBindingConfigurations().add(ejbContextBinding); } else { // EJB packaged outside of a .war. So process normally. // add the binding configuration to the component description final BindingConfiguration ejbContextBinding = new BindingConfiguration("java:comp/EJBContext", directEjbContextReferenceSource); componentDescription.getBindingConfigurations().add(ejbContextBinding); } }
private void registerRemoteBinding(final EJBComponentDescription componentDescription, final ViewDescription viewDescription, final String jndiName) { final EEModuleDescription moduleDescription = componentDescription.getModuleDescription(); final InjectedValue<ClassLoader> viewClassLoader = new InjectedValue<ClassLoader>(); moduleDescription.getBindingConfigurations().add(new BindingConfiguration(jndiName, new RemoteViewInjectionSource(null, moduleDescription.getEarApplicationName(), moduleDescription.getModuleName(), moduleDescription.getDistinctName(), componentDescription.getComponentName(), viewDescription.getViewClassName(), componentDescription.isStateful(), viewClassLoader, appclient))); componentDescription.getConfigurators().add(new ComponentConfigurator() { public void configure(DeploymentPhaseContext context, ComponentDescription description, ComponentConfiguration configuration) throws DeploymentUnitProcessingException { viewClassLoader.setValue(Values.immediateValue(configuration.getModuleClassLoader())); } }); } private void registerControlPointBinding(final EJBComponentDescription componentDescription, final ViewDescription viewDescription, final String jndiName, final DeploymentUnit deploymentUnit) {
@Override public void deploy(DeploymentPhaseContext phaseContext) throws DeploymentUnitProcessingException { final DeploymentUnit deploymentUnit = phaseContext.getDeploymentUnit(); if (DeploymentTypeMarker.isType(EAR, deploymentUnit)) { return; } final EEModuleDescription moduleDescription = deploymentUnit.getAttachment(Attachments.EE_MODULE_DESCRIPTION); if(moduleDescription == null) { return; } final String defaultDataSource = moduleDescription.getDefaultResourceJndiNames().getDataSource(); if(defaultDataSource == null) { return; } final LookupInjectionSource injectionSource = new LookupInjectionSource(defaultDataSource); if (DeploymentTypeMarker.isType(WAR, deploymentUnit)) { moduleDescription.getBindingConfigurations().add(new BindingConfiguration(MODULE_DEFAULT_DATASOURCE_JNDI_NAME, injectionSource)); } else { if (DeploymentTypeMarker.isType(APPLICATION_CLIENT, deploymentUnit)) { moduleDescription.getBindingConfigurations().add(new BindingConfiguration(COMP_DEFAULT_DATASOURCE_JNDI_NAME, injectionSource)); } for(ComponentDescription componentDescription : moduleDescription.getComponentDescriptions()) { if(componentDescription.getNamingMode() == ComponentNamingMode.CREATE) { componentDescription.getBindingConfigurations().add(new BindingConfiguration(COMP_DEFAULT_DATASOURCE_JNDI_NAME, injectionSource)); } } } }
@Override protected void processComponentConfig(DeploymentUnit deploymentUnit, DeploymentPhaseContext phaseContext, CompositeIndex index, ComponentDescription componentDescription) throws DeploymentUnitProcessingException { if (!(componentDescription instanceof EJBComponentDescription)) { return; // Only process EJBs } // if the EJB is packaged in a .war, then we need to bind the java:comp/TimerService only once for the entire module if (componentDescription.getNamingMode() != ComponentNamingMode.CREATE) { // get the module description final EEModuleDescription moduleDescription = componentDescription.getModuleDescription(); // the java:module/TimerService binding configuration // Note that we bind to java:module/TimerService since it's a .war. End users can still lookup java:comp/TimerService // and that will internally get translated to java:module/TimerService for .war, since java:comp == java:module in // a web ENC. So binding to java:module/TimerService is OK. final BindingConfiguration timerServiceBinding = new BindingConfiguration("java:module/TimerService", new TimerServiceBindingSource()); moduleDescription.getBindingConfigurations().add(timerServiceBinding); } else { // EJB packaged outside of a .war. So process normally. // add the binding configuration to the component description final BindingConfiguration timerServiceBinding = new BindingConfiguration("java:comp/TimerService", new TimerServiceBindingSource()); componentDescription.getBindingConfigurations().add(timerServiceBinding); } } }
@Override public final void deploy(DeploymentPhaseContext phaseContext) throws DeploymentUnitProcessingException { final DeploymentUnit deploymentUnit = phaseContext.getDeploymentUnit(); final DeploymentDescriptorEnvironment environment = deploymentUnit.getAttachment(Attachments.MODULE_DEPLOYMENT_DESCRIPTOR_ENVIRONMENT); final EEApplicationClasses applicationClasses = deploymentUnit.getAttachment(Attachments.EE_APPLICATION_CLASSES_DESCRIPTION); final Module module = deploymentUnit.getAttachment(org.jboss.as.server.deployment.Attachments.MODULE); final DeploymentReflectionIndex deploymentReflectionIndex = deploymentUnit.getAttachment(org.jboss.as.server.deployment.Attachments.REFLECTION_INDEX); final EEModuleDescription description = deploymentUnit.getAttachment(Attachments.EE_MODULE_DESCRIPTION); if (module == null || description == null) { return; } if (environment != null) { final List<BindingConfiguration> bindings = processDescriptorEntries(deploymentUnit, environment, description, null, module.getClassLoader(), deploymentReflectionIndex, applicationClasses); description.getBindingConfigurations().addAll(bindings); } for (final ComponentDescription componentDescription : description.getComponentDescriptions()) { if (componentDescription.getDeploymentDescriptorEnvironment() != null) { final List<BindingConfiguration> bindings = processDescriptorEntries(deploymentUnit, componentDescription.getDeploymentDescriptorEnvironment(), componentDescription, componentDescription, module.getClassLoader(), deploymentReflectionIndex, applicationClasses); componentDescription.getBindingConfigurations().addAll(bindings); } } for(final InterceptorEnvironment interceptorEnv : description.getInterceptorEnvironment().values()) { final List<BindingConfiguration> bindings = processDescriptorEntries(deploymentUnit, interceptorEnv.getDeploymentDescriptorEnvironment(), interceptorEnv, null, module.getClassLoader(), deploymentReflectionIndex, applicationClasses); interceptorEnv.getBindingConfigurations().addAll(bindings); } }
moduleDescription.getBindingConfigurations().add(new BindingConfiguration(jndiName, is));
final List<BindingConfiguration> bindingConfigurations = eeModuleDescription.getBindingConfigurations();
private void addBinding(String source, String compTarget, String moduleTarget, EEModuleDescription moduleDescription, DeploymentUnit deploymentUnit) { final LookupInjectionSource injectionSource = new LookupInjectionSource(source); if (DeploymentTypeMarker.isType(WAR, deploymentUnit)) { moduleDescription.getBindingConfigurations().add(new BindingConfiguration(moduleTarget, injectionSource)); } else { if (DeploymentTypeMarker.isType(APPLICATION_CLIENT, deploymentUnit)) { moduleDescription.getBindingConfigurations().add(new BindingConfiguration(compTarget, injectionSource)); } for(ComponentDescription componentDescription : moduleDescription.getComponentDescriptions()) { if(componentDescription.getNamingMode() == ComponentNamingMode.CREATE) { componentDescription.getBindingConfigurations().add(new BindingConfiguration(compTarget, injectionSource)); } } } }
private void addBinding(String source, String compTarget, String moduleTarget, EEModuleDescription moduleDescription, DeploymentUnit deploymentUnit) { final LookupInjectionSource injectionSource = new LookupInjectionSource(source); if (DeploymentTypeMarker.isType(WAR, deploymentUnit)) { moduleDescription.getBindingConfigurations().add(new BindingConfiguration(moduleTarget, injectionSource)); } else { if (DeploymentTypeMarker.isType(APPLICATION_CLIENT, deploymentUnit)) { moduleDescription.getBindingConfigurations().add(new BindingConfiguration(compTarget, injectionSource)); } for(ComponentDescription componentDescription : moduleDescription.getComponentDescriptions()) { if(componentDescription.getNamingMode() == ComponentNamingMode.CREATE) { componentDescription.getBindingConfigurations().add(new BindingConfiguration(compTarget, injectionSource)); } } } }
protected void processComponentConfig(final DeploymentUnit deploymentUnit, final DeploymentPhaseContext phaseContext, final CompositeIndex index, final ComponentDescription componentDescription) throws DeploymentUnitProcessingException { if (!(componentDescription instanceof EJBComponentDescription)) { return; // Only process EJBs } // if the EJB is packaged in a .war, then we need to bind the java:comp/EJBContext only once for the entire module if (componentDescription.getNamingMode() != ComponentNamingMode.CREATE) { // get the module description final EEModuleDescription moduleDescription = componentDescription.getModuleDescription(); // the java:module/EJBContext binding configuration // Note that we bind to java:module/EJBContext since it's a .war. End users can still lookup java:comp/EJBContext // and that will internally get translated to java:module/EJBContext for .war, since java:comp == java:module in // a web ENC. So binding to java:module/EJBContext is OK. final BindingConfiguration ejbContextBinding = new BindingConfiguration("java:module/EJBContext", directEjbContextReferenceSource); moduleDescription.getBindingConfigurations().add(ejbContextBinding); } else { // EJB packaged outside of a .war. So process normally. // add the binding configuration to the component description final BindingConfiguration ejbContextBinding = new BindingConfiguration("java:comp/EJBContext", directEjbContextReferenceSource); componentDescription.getBindingConfigurations().add(ejbContextBinding); } }
@Override public void deploy(DeploymentPhaseContext phaseContext) throws DeploymentUnitProcessingException { final DeploymentUnit deploymentUnit = phaseContext.getDeploymentUnit(); if (DeploymentTypeMarker.isType(EAR, deploymentUnit)) { return; } final EEModuleDescription moduleDescription = deploymentUnit.getAttachment(Attachments.EE_MODULE_DESCRIPTION); if(moduleDescription == null) { return; } final String defaultDataSource = moduleDescription.getDefaultResourceJndiNames().getDataSource(); if(defaultDataSource == null) { return; } final LookupInjectionSource injectionSource = new LookupInjectionSource(defaultDataSource); if (DeploymentTypeMarker.isType(WAR, deploymentUnit)) { moduleDescription.getBindingConfigurations().add(new BindingConfiguration(MODULE_DEFAULT_DATASOURCE_JNDI_NAME, injectionSource)); } else { if (DeploymentTypeMarker.isType(APPLICATION_CLIENT, deploymentUnit)) { moduleDescription.getBindingConfigurations().add(new BindingConfiguration(COMP_DEFAULT_DATASOURCE_JNDI_NAME, injectionSource)); } for(ComponentDescription componentDescription : moduleDescription.getComponentDescriptions()) { if(componentDescription.getNamingMode() == ComponentNamingMode.CREATE) { componentDescription.getBindingConfigurations().add(new BindingConfiguration(COMP_DEFAULT_DATASOURCE_JNDI_NAME, injectionSource)); } } } }
@Override public void deploy(DeploymentPhaseContext phaseContext) throws DeploymentUnitProcessingException { final DeploymentUnit deploymentUnit = phaseContext.getDeploymentUnit(); if (DeploymentTypeMarker.isType(EAR, deploymentUnit)) { return; } final EEModuleDescription moduleDescription = deploymentUnit.getAttachment(Attachments.EE_MODULE_DESCRIPTION); if(moduleDescription == null) { return; } final String defaultJMSConnectionFactory = moduleDescription.getDefaultResourceJndiNames().getJmsConnectionFactory(); if(defaultJMSConnectionFactory == null) { return; } final LookupInjectionSource injectionSource = new LookupInjectionSource(defaultJMSConnectionFactory); if (DeploymentTypeMarker.isType(WAR, deploymentUnit)) { moduleDescription.getBindingConfigurations().add(new BindingConfiguration(MODULE_DEFAULT_JMS_CONNECTION_FACTORY, injectionSource)); } else { if (DeploymentTypeMarker.isType(APPLICATION_CLIENT, deploymentUnit)) { moduleDescription.getBindingConfigurations().add(new BindingConfiguration(COMP_DEFAULT_JMS_CONNECTION_FACTORY, injectionSource)); } for(ComponentDescription componentDescription : moduleDescription.getComponentDescriptions()) { if(componentDescription.getNamingMode() == ComponentNamingMode.CREATE) { componentDescription.getBindingConfigurations().add(new BindingConfiguration(COMP_DEFAULT_JMS_CONNECTION_FACTORY,injectionSource)); } } } }
private void registerRemoteBinding(final EJBComponentDescription componentDescription, final ViewDescription viewDescription, final String jndiName) { final EEModuleDescription moduleDescription = componentDescription.getModuleDescription(); final InjectedValue<ClassLoader> viewClassLoader = new InjectedValue<ClassLoader>(); moduleDescription.getBindingConfigurations().add(new BindingConfiguration(jndiName, new RemoteViewInjectionSource(null, moduleDescription.getEarApplicationName(), moduleDescription.getModuleName(), moduleDescription.getDistinctName(), componentDescription.getComponentName(), viewDescription.getViewClassName(), componentDescription.isStateful(), viewClassLoader))); componentDescription.getConfigurators().add(new ComponentConfigurator() { public void configure(DeploymentPhaseContext context, ComponentDescription description, ComponentConfiguration configuration) throws DeploymentUnitProcessingException { viewClassLoader.setValue(Values.immediateValue(configuration.getModuleClassLoader())); } }); }
@Override public void deploy(DeploymentPhaseContext phaseContext) throws DeploymentUnitProcessingException { final DeploymentUnit deploymentUnit = phaseContext.getDeploymentUnit(); if (DeploymentTypeMarker.isType(EAR, deploymentUnit)) { return; } final EEModuleDescription moduleDescription = deploymentUnit.getAttachment(Attachments.EE_MODULE_DESCRIPTION); if(moduleDescription == null) { return; } final String defaultJMSConnectionFactory = moduleDescription.getDefaultResourceJndiNames().getJmsConnectionFactory(); if(defaultJMSConnectionFactory == null) { return; } final LookupInjectionSource injectionSource = new LookupInjectionSource(defaultJMSConnectionFactory); if (DeploymentTypeMarker.isType(WAR, deploymentUnit)) { moduleDescription.getBindingConfigurations().add(new BindingConfiguration(MODULE_DEFAULT_JMS_CONNECTION_FACTORY, injectionSource)); } else { if (DeploymentTypeMarker.isType(APPLICATION_CLIENT, deploymentUnit)) { moduleDescription.getBindingConfigurations().add(new BindingConfiguration(COMP_DEFAULT_JMS_CONNECTION_FACTORY, injectionSource)); } for(ComponentDescription componentDescription : moduleDescription.getComponentDescriptions()) { if(componentDescription.getNamingMode() == ComponentNamingMode.CREATE) { componentDescription.getBindingConfigurations().add(new BindingConfiguration(COMP_DEFAULT_JMS_CONNECTION_FACTORY,injectionSource)); } } } }
@Override protected void processComponentConfig(DeploymentUnit deploymentUnit, DeploymentPhaseContext phaseContext, CompositeIndex index, ComponentDescription componentDescription) throws DeploymentUnitProcessingException { if (!(componentDescription instanceof EJBComponentDescription)) { return; // Only process EJBs } if (componentDescription instanceof StatefulComponentDescription) { return; // TimerService isn't supported for Stateful session beans } // if the EJB is packaged in a .war, then we need to bind the java:comp/TimerService only once for the entire module if (componentDescription.getNamingMode() != ComponentNamingMode.CREATE) { // get the module description final EEModuleDescription moduleDescription = componentDescription.getModuleDescription(); // the java:module/TimerService binding configuration // Note that we bind to java:module/TimerService since it's a .war. End users can still lookup java:comp/TimerService // and that will internally get translated to java:module/TimerService for .war, since java:comp == java:module in // a web ENC. So binding to java:module/TimerService is OK. final BindingConfiguration timerServiceBinding = new BindingConfiguration("java:module/TimerService", new TimerServiceBindingSource()); moduleDescription.getBindingConfigurations().add(timerServiceBinding); } else { // EJB packaged outside of a .war. So process normally. // add the binding configuration to the component description final BindingConfiguration timerServiceBinding = new BindingConfiguration("java:comp/TimerService", new TimerServiceBindingSource()); componentDescription.getBindingConfigurations().add(timerServiceBinding); } } }
@Override public final void deploy(DeploymentPhaseContext phaseContext) throws DeploymentUnitProcessingException { final DeploymentUnit deploymentUnit = phaseContext.getDeploymentUnit(); final DeploymentDescriptorEnvironment environment = deploymentUnit.getAttachment(Attachments.MODULE_DEPLOYMENT_DESCRIPTOR_ENVIRONMENT); final EEApplicationClasses applicationClasses = deploymentUnit.getAttachment(Attachments.EE_APPLICATION_CLASSES_DESCRIPTION); final Module module = deploymentUnit.getAttachment(org.jboss.as.server.deployment.Attachments.MODULE); final DeploymentReflectionIndex deploymentReflectionIndex = deploymentUnit.getAttachment(org.jboss.as.server.deployment.Attachments.REFLECTION_INDEX); final EEModuleDescription description = deploymentUnit.getAttachment(Attachments.EE_MODULE_DESCRIPTION); if (module == null || description == null) { return; } if (environment != null) { final List<BindingConfiguration> bindings = processDescriptorEntries(deploymentUnit, environment, description, null, module.getClassLoader(), deploymentReflectionIndex, applicationClasses); description.getBindingConfigurations().addAll(bindings); } for (final ComponentDescription componentDescription : description.getComponentDescriptions()) { if (componentDescription.getDeploymentDescriptorEnvironment() != null) { final List<BindingConfiguration> bindings = processDescriptorEntries(deploymentUnit, componentDescription.getDeploymentDescriptorEnvironment(), componentDescription, componentDescription, module.getClassLoader(), deploymentReflectionIndex, applicationClasses); componentDescription.getBindingConfigurations().addAll(bindings); } } for(final InterceptorEnvironment interceptorEnv : description.getInterceptorEnvironment().values()) { final List<BindingConfiguration> bindings = processDescriptorEntries(deploymentUnit, interceptorEnv.getDeploymentDescriptorEnvironment(), interceptorEnv, null, module.getClassLoader(), deploymentReflectionIndex, applicationClasses); interceptorEnv.getBindingConfigurations().addAll(bindings); } }
@Override public final void deploy(DeploymentPhaseContext phaseContext) throws DeploymentUnitProcessingException { final DeploymentUnit deploymentUnit = phaseContext.getDeploymentUnit(); final DeploymentDescriptorEnvironment environment = deploymentUnit.getAttachment(Attachments.MODULE_DEPLOYMENT_DESCRIPTOR_ENVIRONMENT); final EEApplicationClasses applicationClasses = deploymentUnit.getAttachment(Attachments.EE_APPLICATION_CLASSES_DESCRIPTION); final Module module = deploymentUnit.getAttachment(org.jboss.as.server.deployment.Attachments.MODULE); final DeploymentReflectionIndex deploymentReflectionIndex = deploymentUnit.getAttachment(org.jboss.as.server.deployment.Attachments.REFLECTION_INDEX); final EEModuleDescription description = deploymentUnit.getAttachment(Attachments.EE_MODULE_DESCRIPTION); if (module == null || description == null) { return; } if (environment != null) { final List<BindingConfiguration> bindings = processDescriptorEntries(deploymentUnit, environment, description, null, module.getClassLoader(), deploymentReflectionIndex, applicationClasses); description.getBindingConfigurations().addAll(bindings); } for (final ComponentDescription componentDescription : description.getComponentDescriptions()) { if (componentDescription.getDeploymentDescriptorEnvironment() != null) { final List<BindingConfiguration> bindings = processDescriptorEntries(deploymentUnit, componentDescription.getDeploymentDescriptorEnvironment(), componentDescription, componentDescription, module.getClassLoader(), deploymentReflectionIndex, applicationClasses); componentDescription.getBindingConfigurations().addAll(bindings); } } for(final InterceptorEnvironment interceptorEnv : description.getInterceptorEnvironment().values()) { final List<BindingConfiguration> bindings = processDescriptorEntries(deploymentUnit, interceptorEnv.getDeploymentDescriptorEnvironment(), interceptorEnv, null, module.getClassLoader(), deploymentReflectionIndex, applicationClasses); interceptorEnv.getBindingConfigurations().addAll(bindings); } }
@Override public final void deploy(DeploymentPhaseContext phaseContext) throws DeploymentUnitProcessingException { final DeploymentUnit deploymentUnit = phaseContext.getDeploymentUnit(); final DeploymentDescriptorEnvironment environment = deploymentUnit.getAttachment(Attachments.MODULE_DEPLOYMENT_DESCRIPTOR_ENVIRONMENT); final EEApplicationClasses applicationClasses = deploymentUnit.getAttachment(Attachments.EE_APPLICATION_CLASSES_DESCRIPTION); final Module module = deploymentUnit.getAttachment(org.jboss.as.server.deployment.Attachments.MODULE); final DeploymentReflectionIndex deploymentReflectionIndex = deploymentUnit.getAttachment(org.jboss.as.server.deployment.Attachments.REFLECTION_INDEX); final EEModuleDescription description = deploymentUnit.getAttachment(Attachments.EE_MODULE_DESCRIPTION); if (module == null || description == null) { return; } if (environment != null) { final List<BindingConfiguration> bindings = processDescriptorEntries(deploymentUnit, environment, description, null, module.getClassLoader(), deploymentReflectionIndex, applicationClasses); description.getBindingConfigurations().addAll(bindings); } for (final ComponentDescription componentDescription : description.getComponentDescriptions()) { if (componentDescription.getDeploymentDescriptorEnvironment() != null) { final List<BindingConfiguration> bindings = processDescriptorEntries(deploymentUnit, componentDescription.getDeploymentDescriptorEnvironment(), componentDescription, componentDescription, module.getClassLoader(), deploymentReflectionIndex, applicationClasses); componentDescription.getBindingConfigurations().addAll(bindings); } } for(final InterceptorEnvironment interceptorEnv : description.getInterceptorEnvironment().values()) { final List<BindingConfiguration> bindings = processDescriptorEntries(deploymentUnit, interceptorEnv.getDeploymentDescriptorEnvironment(), interceptorEnv, null, module.getClassLoader(), deploymentReflectionIndex, applicationClasses); interceptorEnv.getBindingConfigurations().addAll(bindings); } }
final List<BindingConfiguration> bindingConfigurations = eeModuleDescription.getBindingConfigurations();