我想通过反射调用以下方法,但我无法指定正确的签名:
public void executeRule(List<Node> params, SomethingStrangeFound callMeBack) throws IOException
{
...
}
我试过这样的事情:
Class partypes[] = new Class[2];
partypes[0] = Class.forName("java.util.List");
partypes[1] = Class.forName("vp.SomethingStrangeFound");
Method meth = cls.getMethod("executeRule", partypes);
它不起作用,因为当它必须是“List<Node>”时我使用“java.util.List”,但我不知道如何指定它。
如果我只使用“java.util.List”,调用 cls.getMethod(“executeRule”,partypes) 时会出现以下错误:
NoSuchMethodException: vp.RuleWebXmlContextParamFacesPortletRenderStyles.executeRule(java.util.List, vp.SomethingStrangeFound)
有什么帮助吗?
PS 在调试时,我看到“List<Node>”通过以下方式解决:(Ljava/util/List<Lorg/w3c/dom/Node;>;Lit/vp/SomethingStrangeFound;)V
但这对我没有帮助。