I've been battling with this bug for since yesterday. I have checked the build path and classpath and they are the same, I've got these 2 declirations in my components <target name="classpath"> <path id="local.class.path"> <fileset dir="${ofbiz.dir}/specialpurpose/subscriptions/lib" includes="*.jar"/> <fileset dir="${ofbiz.dir}/specialpurpose/subscriptions/build/lib" includes="*.jar"/>
It all seems to be in order. If I call this method from a JUnit test, run from within eclipse, is passes no problem, if I run the server I get this exception. Also I have two other libraries that this component uses & I just added it as a user library in eclipse & in the components lib referenced in the build.xml and it works without a problem. I've tried moving jars around resorting to trial and error when logic seemed to fail me & no luck yet. I've tried cleaning and rebuilding the whole web app several times with no change. NoSuchMethodError means that the class was found, but a referenced method in that class is not found. The most typical cause of this is accessing a wrong version of class/library. Since the problem only manifests when running on the server, older integrations with the google api's exist in the system, I suppose for a class like com.google.common.collect.ImmutableMultimap it's quite likely that an older version of the class exists somewhere in another library but how do I find it, it's like looking for a needle in a hay stack "a different version this library could wired into server's system classloader (which would be ahead of whatever is bundled in your webapp)." - how would I check what's in the server's system classloader on ofbiz? I'd like some advice about how to get closer to the problem so I can try find the bug, how does one debug classpath issues is there anywhere else the classpath is defened besides the build file? Any suggestions on how to pin point the problem would be appreciated. Exception: java.lang.NoSuchMethodError [java] Message: com.google.common.collect.ImmutableMultimap.of()Lcom/google/common/collect/ImmutableMultimap; [java] ---- stack trace --------------------------------------------------------------- [java] java.lang.NoSuchMethodError: com.google.common.collect.ImmutableMultimap.of()Lcom/google/common/collect/ImmutableMultimap; [java] com.google.gdata.util.common.net.UriParameterMap.<clinit>(UriParameterMap.java:78) [java] com.google.gdata.client.Service.computeQueryMap(Service.java:2190) [java] com.google.gdata.client.Service.access$000(Service.java:94) [java] com.google.gdata.client.Service$ClientStreamProperties.<init>(Service.java:1839) [java] com.google.gdata.client.Service$ClientOutputProperties.<init>(Service.java:1986) [java] com.google.gdata.client.Service.writeRequestData(Service.java:2029) [java] com.google.gdata.client.Service.insert(Service.java:1408) [java] com.google.gdata.client.GoogleService.insert(GoogleService.java:599) [java] com.google.gdata.client.appsforyourdomain.AppsForYourDomainService.insert(AppsForYourDomainService.java:100) [java] za.co.venturenet.api.googleapps.GoogleAppsServices.createUser(GoogleAppsServices.java:437) [java] za.co.venturenet.api.googleapps.GoogleAppsServices.createUser(GoogleAppsServices.java:336) [java] za.co.venturenet.api.googleapps.GoogleAppsFacade.createNewVenturenetUser(GoogleAppsFacade.java:158) -- Regards, Justin Venture-Net Research & Development