Issue
How can I load a Spring resource contents and use it to set a bean property or pass it as an argument constructor?
The resource contains free text.
Solution
<bean id="contents" class="org.apache.commons.io.IOUtils" factory-method="toString">
<constructor-arg value="classpath:path/to/resource.txt" type="java.io.InputStream" />
</bean>
This solution requires Apache Commons IO.
Another solution, suggested by @Parvez, without Apache Commons IO dependency is
<bean id="contents" class="java.lang.String">
<constructor-arg>
<bean class="org.springframework.util.FileCopyUtils" factory-method="copyToByteArray">
<constructor-arg value="classpath:path/to/resource.txt" type="java.io.InputStream" />
</bean>
</constructor-arg>
</bean>
Answered By - Adrian Ber