Error trying to get all client customer id's for a manager account in java

275 views
Skip to first unread message

mar...@wealthfront.com

unread,
Nov 11, 2015, 3:11:10 PM11/11/15
to AdWords API Forum
Hello,

I'm trying to make a simple request to get all client customer id's under a manager account using java. I create a valid AdwordsSession session and Credential credential, then try

AdWordsServices adwordsServices = new AdWordsServices();

This gives an error identical to the one here https://groups.google.com/forum/?hl=zh-CNgoogleMapsExamples#!topic/adwords-api/VIWpdpxUWmI :

java.lang.ExceptionInInitializerError
    at com.wealthfront.etl.emr.ads.adwords.AdwordsConnectorImpl.getCustomerIds(AdwordsConnectorImpl.java:84)
    at com.wealthfront.etl.emr.ads.adwords.AdwordsConnectorImplTest.getCustomerIds(AdwordsConnectorImplTest.java:28)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42)
    at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
    at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47)
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
    at org.junit.runner.JUnitCore.run(JUnitCore.java:157)
    at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:78)
    at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:212)
    at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:68)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:140)
Caused by: com.google.inject.CreationException: Guice creation errors:

1) Multibinder is not initialized
  at com.google.api.ads.adwords.axis.AdWordsAxisModule.configure(AdWordsAxisModule.java:44)
  while locating java.util.Set<java.util.Map$Entry<com.google.api.ads.adwords.lib.client.AdWordsServiceDescriptor$AdWordsSubProduct, com.google.inject.Provider<com.google.api.ads.common.lib.client.HeaderHandler<com.google.api.ads.adwords.lib.client.AdWordsSession, com.google.api.ads.adwords.lib.client.AdWordsServiceDescriptor>>>>
  at com.google.inject.multibindings.MapBinder$RealMapBinder$RealProviderMapProvider.initialize(MapBinder.java:461)
  at com.google.api.ads.adwords.axis.AdWordsAxisModule.configure(AdWordsAxisModule.java:44)

2) Multibinder is not initialized
  at com.google.api.ads.adwords.axis.AdWordsAxisModule.configure(AdWordsAxisModule.java:53)
  while locating java.util.Set<java.util.Map$Entry<com.google.api.ads.adwords.lib.client.AdWordsServiceDescriptor$AdWordsSubProduct, com.google.inject.Provider<java.lang.String>>>
  at com.google.inject.multibindings.MapBinder$RealMapBinder$RealProviderMapProvider.initialize(MapBinder.java:461)
  at com.google.api.ads.adwords.axis.AdWordsAxisModule.configure(AdWordsAxisModule.java:53)

3) Error injecting method, java.lang.NoSuchMethodError: com.google.inject.spi.ProviderInstanceBinding.getUserSuppliedProvider()Ljavax/inject/Provider;
  at com.google.inject.multibindings.Multibinder$RealMultibinder.initialize(Multibinder.java:324)
  at com.google.api.ads.adwords.axis.AdWordsAxisModule.configure(AdWordsAxisModule.java:44)
Caused by: java.lang.NoSuchMethodError: com.google.inject.spi.ProviderInstanceBinding.getUserSuppliedProvider()Ljavax/inject/Provider;
    at com.google.inject.multibindings.Indexer.visit(Indexer.java:139)
    at com.google.inject.multibindings.Indexer.visit(Indexer.java:43)
    at com.google.inject.internal.ProviderInstanceBindingImpl.acceptTargetVisitor(ProviderInstanceBindingImpl.java:62)
    at com.google.inject.multibindings.Multibinder$RealMultibinder.initialize(Multibinder.java:332)
    at com.google.inject.multibindings.Multibinder$RealMultibinder$$FastClassByGuice$$94efefc8.invoke(<generated>)
    at com.google.inject.internal.cglib.reflect.$FastMethod.invoke(FastMethod.java:53)
    at com.google.inject.internal.SingleMethodInjector$1.invoke(SingleMethodInjector.java:56)
    at com.google.inject.internal.SingleMethodInjector.inject(SingleMethodInjector.java:90)
    at com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:110)
    at com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjectorImpl.java:75)
    at com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjectorImpl.java:73)
    at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1024)
    at com.google.inject.internal.MembersInjectorImpl.injectAndNotify(MembersInjectorImpl.java:73)
    at com.google.inject.internal.Initializer$InjectableReference.get(Initializer.java:147)
    at com.google.inject.internal.Initializer.injectAll(Initializer.java:92)
    at com.google.inject.internal.InternalInjectorCreator.injectDynamically(InternalInjectorCreator.java:173)
    at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:109)
    at com.google.inject.Guice.createInjector(Guice.java:95)
    at com.google.inject.Guice.createInjector(Guice.java:72)
    at com.google.inject.Guice.createInjector(Guice.java:62)
    at com.google.api.ads.adwords.axis.factory.AdWordsServices.<clinit>(AdWordsServices.java:44)
    at com.wealthfront.etl.emr.ads.adwords.AdwordsConnectorImpl.getCustomerIds(AdwordsConnectorImpl.java:84)
    at com.wealthfront.etl.emr.ads.adwords.AdwordsConnectorImplTest.getCustomerIds(AdwordsConnectorImplTest.java:28)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42)
    at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
    at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47)
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
    at org.junit.runner.JUnitCore.run(JUnitCore.java:157)
    at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:78)
    at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:212)
    at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:68)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:140)

4) Error injecting method, java.lang.NoSuchMethodError: com.google.inject.spi.ProviderInstanceBinding.getUserSuppliedProvider()Ljavax/inject/Provider;
  at com.google.inject.multibindings.Multibinder$RealMultibinder.initialize(Multibinder.java:324)
  at com.google.api.ads.adwords.axis.AdWordsAxisModule.configure(AdWordsAxisModule.java:53)
Caused by: java.lang.NoSuchMethodError: com.google.inject.spi.ProviderInstanceBinding.getUserSuppliedProvider()Ljavax/inject/Provider;
    at com.google.inject.multibindings.Indexer.visit(Indexer.java:139)
    at com.google.inject.multibindings.Indexer.visit(Indexer.java:43)
    at com.google.inject.internal.ProviderInstanceBindingImpl.acceptTargetVisitor(ProviderInstanceBindingImpl.java:62)
    at com.google.inject.multibindings.Multibinder$RealMultibinder.initialize(Multibinder.java:332)
    at com.google.inject.multibindings.Multibinder$RealMultibinder$$FastClassByGuice$$94efefc8.invoke(<generated>)
    at com.google.inject.internal.cglib.reflect.$FastMethod.invoke(FastMethod.java:53)
    at com.google.inject.internal.SingleMethodInjector$1.invoke(SingleMethodInjector.java:56)
    at com.google.inject.internal.SingleMethodInjector.inject(SingleMethodInjector.java:90)
    at com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:110)
    at com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjectorImpl.java:75)
    at com.google.inject.internal.MembersInjectorImpl$1.call(MembersInjectorImpl.java:73)
    at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1024)
    at com.google.inject.internal.MembersInjectorImpl.injectAndNotify(MembersInjectorImpl.java:73)
    at com.google.inject.internal.Initializer$InjectableReference.get(Initializer.java:147)
    at com.google.inject.internal.Initializer.injectAll(Initializer.java:92)
    at com.google.inject.internal.InternalInjectorCreator.injectDynamically(InternalInjectorCreator.java:173)
    at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:109)
    at com.google.inject.Guice.createInjector(Guice.java:95)
    at com.google.inject.Guice.createInjector(Guice.java:72)
    at com.google.inject.Guice.createInjector(Guice.java:62)
    at com.google.api.ads.adwords.axis.factory.AdWordsServices.<clinit>(AdWordsServices.java:44)
    at com.wealthfront.etl.emr.ads.adwords.AdwordsConnectorImpl.getCustomerIds(AdwordsConnectorImpl.java:84)
    at com.wealthfront.etl.emr.ads.adwords.AdwordsConnectorImplTest.getCustomerIds(AdwordsConnectorImplTest.java:28)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42)
    at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
    at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47)
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
    at org.junit.runner.JUnitCore.run(JUnitCore.java:157)
    at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:78)
    at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:212)
    at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:68)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:140)


I tried the fix from the other post, but explicitly adding the guice dependencies to pom.xml did no resolve the issue. What might be the issue?

Thanks.

Umesh Dengale

unread,
Nov 11, 2015, 5:06:26 PM11/11/15
to AdWords API Forum
Hello,

Could you provide the dependencies from pom.xml and library version you are using (e.g. v201506 or v201509 etc.)? 

Thanks,
Umesh, AdWords API Team.

mar...@wealthfront.com

unread,
Nov 16, 2015, 3:59:41 PM11/16/15
to AdWords API Forum
Thanks for the reply, Umesh. I ultimately solved the issue on my own by excluding any dependency which used guice 3.0, using mvn dependency:tree -Dverbose -Dincludes=com.google.inject to identify them.
Reply all
Reply to author
Forward
0 new messages