Autowire by name so alias works. Uncomment all strategies, mark for autowiring and lazy loading.

Also tidy up XML internal documentation.
This commit is contained in:
Mark H. Wood
2022-09-21 13:00:41 -04:00
parent b4b67c4322
commit 24c1d44e94
3 changed files with 35 additions and 24 deletions

View File

@@ -569,6 +569,10 @@
<version>2.0.7</version> <version>2.0.7</version>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
<dependency>
<groupId>javax.annotation</groupId>
<artifactId>javax.annotation-api</artifactId>
</dependency>
</dependencies> </dependencies>
</project> </project>

View File

@@ -17,6 +17,7 @@ import java.net.URISyntaxException;
import java.sql.SQLException; import java.sql.SQLException;
import java.util.Date; import java.util.Date;
import java.util.UUID; import java.util.UUID;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.JsonNode;
@@ -72,7 +73,7 @@ public class RequestItemRepository
@Autowired(required = true) @Autowired(required = true)
protected RequestItemConverter requestItemConverter; protected RequestItemConverter requestItemConverter;
@Autowired(required = true) @Resource(name = "requestItemAuthorExtractor")
protected RequestItemAuthorExtractor requestItemAuthorExtractor; protected RequestItemAuthorExtractor requestItemAuthorExtractor;
@Autowired(required = true) @Autowired(required = true)

View File

@@ -6,21 +6,22 @@
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd" http://www.springframework.org/schema/context/spring-context-2.5.xsd"
default-autowire-candidates="*Service,*DAO,javax.sql.DataSource"> default-autowire-candidates="*Service,*DAO,javax.sql.DataSource"
default-lazy-init="true">
<description> <description>
Strategies for determining who receives Request Copy emails. Strategies for determining who receives Request Copy emails.
A copy request "strategy" class produces a list of addresses to which a A copy request "strategy" class produces a list of addresses
request email should be sent. Each strategy gets its addresses from a to which a request email should be sent. Each strategy gets
different source. Select the one that meets your need, or use the its addresses from a different source. Select the one that
CombiningRequestItemStrategy to meld the lists from two or more other meets your need, or use the CombiningRequestItemStrategy to
strategies. meld the lists from two or more other strategies.
</description> </description>
<context:annotation-config /> <!-- allows us to use Spring annotations in beans --> <context:annotation-config /> <!-- allows us to use Spring annotations in beans -->
<!-- Select the implementation to be used. --> <!-- Select the implementation to be used. -->
<alias alias='org.dspace.app.requestitem.RequestItemAuthorExtractor' <alias alias='requestItemAuthorExtractor'
name='org.dspace.app.requestitem.RequestItemMetadataStrategy'/> name='org.dspace.app.requestitem.RequestItemMetadataStrategy'/>
<!-- Get recipients from an item metadata field. --> <!-- Get recipients from an item metadata field. -->
@@ -28,13 +29,12 @@
id="org.dspace.app.requestitem.RequestItemMetadataStrategy" id="org.dspace.app.requestitem.RequestItemMetadataStrategy"
autowire-candidate="true"> autowire-candidate="true">
<!-- <!--
Uncomment these properties if you want lookup in metadata the email Uncomment these properties if you want lookup in metadata
and the name of the author to contact for request copy. the email and the name of the author to contact for request copy.
If you don't configure that or if the requested item doesn't have If you don't configure that or if the requested item doesn't have
these metadata, the submitter data are used as fail over. these metadata, the submitter data are used as fail over.
--> -->
<!-- <!--
<property name="emailMetadata" <property name="emailMetadata"
value="schema.element.qualifier" /> value="schema.element.qualifier" />
<property name="fullNameMetadata" <property name="fullNameMetadata"
@@ -43,30 +43,36 @@
</bean> </bean>
<!-- HelpDesk to instead get RequestItem emails--> <!-- HelpDesk to instead get RequestItem emails-->
<!--
<bean class="org.dspace.app.requestitem.RequestItemHelpdeskStrategy" <bean class="org.dspace.app.requestitem.RequestItemHelpdeskStrategy"
id="org.dspace.app.requestitem.RequestItemHelpdeskStrategy"/> id="org.dspace.app.requestitem.RequestItemHelpdeskStrategy"
--> autowire-candidate="true"/>
<!-- Send request emails to administrators of an Item's owning Collection. -->
<!--
<bean class='org.dspace.app.requestitem.CollectionAdministratorsRequestItemStrategy' <bean class='org.dspace.app.requestitem.CollectionAdministratorsRequestItemStrategy'
id='org.dspace.app.requestitem.CollectionAdministratorsRequestItemStrategy'/> id='org.dspace.app.requestitem.CollectionAdministratorsRequestItemStrategy'
--> autowire-candidate="true">
<description>
Send request emails to administrators of an Item's owning
Collection.
</description>
</bean>
<!-- Execute multiple strategies and concatenate their lists of recipients.
Mail will go to all members of the combined list. -->
<!--
<bean class='org.dspace.app.requestitem.CombiningRequestItemStrategy' <bean class='org.dspace.app.requestitem.CombiningRequestItemStrategy'
id='org.dspace.app.requestitem.CombiningRequestItemStrategy' id='org.dspace.app.requestitem.CombiningRequestItemStrategy'
autowire='no'> autowire-candidate="true">
<description>
Execute multiple strategies and concatenate their lists of
recipients. Mail will go to all members of the combined list.
</description>
<constructor-arg> <constructor-arg>
<description>A list of references to RequestItemAuthorExtractor beans</description> <description>
A list of RequestItemAuthorExtractor beans
</description>
<list> <list>
<!-- Example:
<ref bean='org.dspace.app.requestitem.RequestItemMetadataStrategy'/> <ref bean='org.dspace.app.requestitem.RequestItemMetadataStrategy'/>
<ref bean='org.dspace.app.requestitem.CollectionAdministratorsRequestItemStrategy'/> <ref bean='org.dspace.app.requestitem.CollectionAdministratorsRequestItemStrategy'/>
-->
</list> </list>
</constructor-arg> </constructor-arg>
</bean> </bean>
-->
</beans> </beans>