You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@aries.apache.org by "Pablo Gomez (JIRA)" <ji...@apache.org> on 2016/03/31 15:00:28 UTC
[jira] [Created] (ARIES-1515) TCPServer fails to retrive method
@reflection when using interfaced arguments
Pablo Gomez created ARIES-1515:
----------------------------------
Summary: TCPServer fails to retrive method @reflection when using interfaced arguments
Key: ARIES-1515
URL: https://issues.apache.org/jira/browse/ARIES-1515
Project: Aries
Issue Type: Bug
Reporter: Pablo Gomez
The following TCPServer.java
private Object invoke(String methodName, Object[] args)
throws NoSuchMethodException, IllegalAccessException, InvocationTargetException {
Class<?>[] parameterTypesAr = getTypes(args);
Method method = service.getClass().getMethod(methodName, parameterTypesAr);
try {
return method.invoke(service, args);
} catch (Throwable e) {
return e;
}
}
bases the signature method on the argument's object implementation. However, this fails if the Service interface uses an interface in signature e.g. java.util.List
can't see a real straight forward solution, cause trying to match the signature with the interfaces extracted alike getType does, e.g doing an arg.getClass().getInterfaces() could be a mess, as there could be many interfaces.
As I note I do not have this problem with the CXF-WS transport so perhaps whatever is done there could be applied here
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)