grouper-users - Re: [grouper-users] NoSuchMethodError: convertToMultiKey
Subject: Grouper Users - Open Discussion List
List archive
- From: Ben Beecher <>
- To: Yoann Delattre <>
- Cc: " Mailing List" <>
- Subject: Re: [grouper-users] NoSuchMethodError: convertToMultiKey
- Date: Mon, 14 Sep 2020 12:40:26 -0400
convertToMultiKey appears in two places with different signatures. We were able to fix this by removing the SubjectHelper class file.
$ javap -classpath grouper.jar edu.internet2.middleware.grouper.subj.SubjectHelper
Compiled from "SubjectHelper.java"
public class edu.internet2.middleware.grouper.subj.SubjectHelper {
public edu.internet2.middleware.grouper.subj.SubjectHelper();
public static java.lang.String sourcesToIdsString(java.util.Collection<edu.internet2.middleware.subject.Source>);
public static org.apache.commons.collections.keyvalue.MultiKey convertToMultiKey(edu.internet2.middleware.subject.Subject);
$ javap -classpath /var/tomcat/grouperdev/webapps/grouper-ws/WEB-INF/classes/ edu.internet2.middleware.grouper.subj.SubjectHelper
Compiled from "SubjectHelper.java"
public class edu.internet2.middleware.grouper.subj.SubjectHelper {
public edu.internet2.middleware.grouper.subj.SubjectHelper();
public static java.lang.String sourcesToIdsString(java.util.Collection<edu.internet2.middleware.subject.Source>);
public static edu.internet2.middleware.grouperClient.collections.MultiKey convertToMultiKey(edu.internet2.middleware.subject.Subject);
$ rm SubjectHelper\$1.class
$ rm SubjectHelper.class
Ben
$ javap -classpath grouper.jar edu.internet2.middleware.grouper.subj.SubjectHelper
Compiled from "SubjectHelper.java"
public class edu.internet2.middleware.grouper.subj.SubjectHelper {
public edu.internet2.middleware.grouper.subj.SubjectHelper();
public static java.lang.String sourcesToIdsString(java.util.Collection<edu.internet2.middleware.subject.Source>);
public static org.apache.commons.collections.keyvalue.MultiKey convertToMultiKey(edu.internet2.middleware.subject.Subject);
$ javap -classpath /var/tomcat/grouperdev/webapps/grouper-ws/WEB-INF/classes/ edu.internet2.middleware.grouper.subj.SubjectHelper
Compiled from "SubjectHelper.java"
public class edu.internet2.middleware.grouper.subj.SubjectHelper {
public edu.internet2.middleware.grouper.subj.SubjectHelper();
public static java.lang.String sourcesToIdsString(java.util.Collection<edu.internet2.middleware.subject.Source>);
public static edu.internet2.middleware.grouperClient.collections.MultiKey convertToMultiKey(edu.internet2.middleware.subject.Subject);
$ rm SubjectHelper\$1.class
$ rm SubjectHelper.class
Ben
On Mon, Sep 14, 2020 at 10:35 AM Yoann Delattre <> wrote:
Hello,
Just ran into the same issue (2.4 latest patches). I think the problem came from this commit and the modification of the import for MultiKey class.
Any solution ?Thanks !
Regards,
Yoann.
Le 28/07/2020 à 21:00, Ben Beecher a écrit :
I am using Grouper 2.4 with all recent patches installed. I get an error when I try to call the GetSubjects method using the Web Service.
java.lang.NoSuchMethodError: edu.internet2.middleware.grouper.subj.SubjectHelper.convertToMultiKey(Ledu/internet2/middleware/subject/Subject;)Lorg/apache/commons/collections/keyvalue/MultiKey;
I see this source file contains getSubjects() which calls convertToMultiKey(subject)
grouper-ws/grouper-ws/src/grouper-ws/edu/internet2/middleware/grouper/ws/GrouperServiceLogic.java
I see that convertToMultiKey() is here in the Tomcat directory
$ grep convertToMultiKey /var/tomcat/grouperdev/webapps/grouper-ws/WEB-INF/classes/edu/internet2/middleware/grouper/subj/SubjectHelper.java
public static MultiKey convertToMultiKey(Subject subject) {
so it is strange that the method is not found by the Web Service. Any advice would be appreciated.
Ben Beecher
-----
Here is the stack trace
28-Jul-2020 14:32:41.674 SEVERE [ajp-nio-127.0.0.1-8009-exec-4] org.apache.catalina.core.StandardWrapperValve.invoke Servlet.service() for servlet [RestServlet] in context with path [/grouper-ws] threw exception [Servlet execution threw an exception] with root cause
java.lang.NoSuchMethodError: edu.internet2.middleware.grouper.subj.SubjectHelper.convertToMultiKey(Ledu/internet2/middleware/subject/Subject;)Lorg/apache/commons/collections/keyvalue/MultiKey;
at edu.internet2.middleware.grouper.ws.GrouperServiceLogic.getSubjects(GrouperServiceLogic.java:5077)
at edu.internet2.middleware.grouper.ws.coresoap.GrouperService.getSubjects(GrouperService.java:2668)
at edu.internet2.middleware.grouper.ws.rest.GrouperServiceRest.getSubjects(GrouperServiceRest.java:1433)
at edu.internet2.middleware.grouper.ws.rest.method.GrouperWsRestGet$8.service(GrouperWsRestGet.java:432)
at edu.internet2.middleware.grouper.ws.rest.method.GrouperRestHttpMethod$1.service(GrouperRestHttpMethod.java:57)
at edu.internet2.middleware.grouper.ws.rest.GrouperRestServlet.service(GrouperRestServlet.java:202)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at edu.internet2.middleware.grouper.ws.GrouperServiceJ2ee.doFilter(GrouperServiceJ2ee.java:969)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:610)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
at org.apache.coyote.ajp.AjpProcessor.service(AjpProcessor.java:479)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:806)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1498)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:748)
- Re: [grouper-users] NoSuchMethodError: convertToMultiKey, Yoann Delattre, 09/14/2020
- Re: [grouper-users] NoSuchMethodError: convertToMultiKey, Ben Beecher, 09/14/2020
- Re: [grouper-users] NoSuchMethodError: convertToMultiKey, Yoann Delattre, 09/18/2020
- Re: [grouper-users] NoSuchMethodError: convertToMultiKey, Yoann Delattre, 09/18/2020
- Re: [grouper-users] NoSuchMethodError: convertToMultiKey, Ben Beecher, 09/14/2020
Archive powered by MHonArc 2.6.19.