You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "joungdal.nam (JIRA)" <ji...@apache.org> on 2017/10/02 06:17:00 UTC

[jira] [Assigned] (IGNITE-6531) Need to add a 'required' field to the SpringResource annotation.

     [ https://issues.apache.org/jira/browse/IGNITE-6531?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

joungdal.nam reassigned IGNITE-6531:
------------------------------------

    Assignee: joungdal.nam

> Need to add a 'required' field to the SpringResource annotation.
> ----------------------------------------------------------------
>
>                 Key: IGNITE-6531
>                 URL: https://issues.apache.org/jira/browse/IGNITE-6531
>             Project: Ignite
>          Issue Type: Improvement
>          Components: spring
>    Affects Versions: 2.3
>            Reporter: joungdal.nam
>            Assignee: joungdal.nam
>            Priority: Minor
>
> In my test environment, only the client is used(setForceServerMode(true)). Operating environments use clients and servers.
> Sometimes Injection is not required in the test environment.
> NoSuchBeanDefinitionException is not generated by specifying a value of false.
> public @interface SpringResource {
> 	
> 	/**
> 	 * Declares whether the annotated dependency is required.
> 	 * <p>Defaults to {@code true}.
> 	 */
> 	boolean required() default true;
> ..
>         if (!StringUtils.isEmpty(beanName)) {
>         	try {
>         		bean = springCtx.getBean(beanName);
>         	} catch(NoSuchBeanDefinitionException ne) {
>         		if(annotation.required()) {
>         			throw ne;
>         		}
>         	}
>         }
>         else {
>         	try {
>         		bean = springCtx.getBean(beanCls);
>         	} catch(NoSuchBeanDefinitionException ne) {
>         		if(annotation.required()) {
>         			throw ne;
>         		}
>         	}
>         }



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)