INT-3820: Fix MethodInvokerHelper for the Proxy
JIRA: https://jira.spring.io/browse/INT-3820 Some Proxy may be based on the specif non-user classes and advised with the provided end-user interfaces. The best sample is `@Repository` from Spring Data projects. In this case the `MessagingMethodInvokerHelper` just missed the user interfaces to consider for the candidate methods or thrown an `Exception` like `NoSuchMethodError`. * Add `((Advised) targetObject).getProxiedInterfaces()` for the scanning algorithm * Move the `UniqueMethodFilter` to the internal `Set<Method>` to allow iteration and filtering for methods from the `targetClass` as well as from all those user interfaces * Add Spring JPA repository test-case * Polishing form some time-weak tests Revert MessagingMethodInvokerHelper INT-3820: Simple Proxy Interface Method Matching No-risk solution for INT-3820. Instead of considering all interfaces on the proxy, only look at proxy interfaces for a single matching method name if we find no candidate or fallback methods. Consider the complete solution for 4.3. Add `Message<?>` method distinguishing
This commit is contained in:
committed by
Gary Russell
parent
ca62f18a7b
commit
d8fc94602c
@@ -13,6 +13,7 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.springframework.integration.jms;
|
||||
|
||||
import static org.junit.Assert.assertFalse;
|
||||
@@ -401,6 +402,8 @@ public class OutboundGatewayFunctionTests {
|
||||
gateway.setCorrelationKey("JMSCorrelationID");
|
||||
gateway.setUseReplyContainer(true);
|
||||
gateway.setIdleReplyContainerTimeout(1, TimeUnit.SECONDS);
|
||||
gateway.setRequiresReply(true);
|
||||
gateway.setReceiveTimeout(10000);
|
||||
gateway.afterPropertiesSet();
|
||||
gateway.start();
|
||||
Executors.newSingleThreadExecutor().execute(new Runnable() {
|
||||
|
||||
Reference in New Issue
Block a user