Hi, 

Looks like one of your jars that has binding of jaxws is competing with the 
Java native implementation.
You need to include only needed jars.
At least dfp-playground works with the Java library with jaxws on 
appengine. 

Can you please refer to its 
pom.xml<https://code.google.com/p/google-api-ads-java/source/browse/pom.xml?repo=dfp-playground>
 first?
At least you need to change the dfp part to adwords like this. 

  <dependency>
    <groupId>com.google.api-ads</groupId>
    <artifactId>dfp-appengine</artifactId>
  <version>1.18.0</version> | v   <dependency>
    <groupId>com.google.api-ads</groupId>
    <artifactId>adwords-appengine</artifactId>
  <version>1.18.0</version>

Best,
- Takeshi

On Sunday, December 8, 2013 9:09:10 AM UTC-8, Anders H wrote:
>
>
> I am running the GetAccountHierarchy.java example on App Engine with 
> JAX-WS. The application is created using Apache Maven for dependencies and 
> the imported jaxws classes are from adwords-appengine-1.22.0.jar.
>
> When running the app on appspot I get an exception that doesn't tell me 
> much about what could be the problem. 
>
> This is the piece of code that throws the exception:
>     // Get the ServicedAccountService.
>     ManagedCustomerServiceInterface managedCustomerService =
>          adWordsServices.get(session, 
> ManagedCustomerServiceInterface.class);
>
> This is the exception:
> 2013-12-08 11:55:53.087
>
> com.sun.xml.bind.v2.runtime.reflect.Accessor$FieldReflection <init>: Unable 
> to make javax.xml.ws.wsaddressing.W3CEndpointReference.address accessible.
> java.lang.SecurityException: java.lang.IllegalAccessException: Reflection is 
> not allowed on private javax.xml.ws.wsaddressing.W3CEndpointReference$Address 
> javax.xml.ws.wsaddressing.W3CEndpointReference.address
>       at 
> com.google.appengine.runtime.Request.process-44627206b54ccbe5(Request.java)
>       at 
> com.sun.xml.bind.v2.runtime.reflect.Accessor$FieldReflection.<init>(Accessor.java:243)
>       at 
> com.sun.xml.bind.AccessorFactoryImpl.createFieldAccessor(AccessorFactoryImpl.java:66)
>       at 
> com.sun.xml.bind.v2.model.impl.RuntimeClassInfoImpl.createFieldSeed(RuntimeClassInfoImpl.java:252)
>       at 
> com.sun.xml.bind.v2.model.impl.RuntimeClassInfoImpl.createFieldSeed(RuntimeClassInfoImpl.java:81)
>       at 
> com.sun.xml.bind.v2.model.impl.ClassInfoImpl.findFieldProperties(ClassInfoImpl.java:405)
>       at 
> com.sun.xml.bind.v2.model.impl.ClassInfoImpl.getProperties(ClassInfoImpl.java:308)
>       at 
> com.sun.xml.bind.v2.model.impl.RuntimeClassInfoImpl.getProperties(RuntimeClassInfoImpl.java:176)
>       at 
> com.sun.xml.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.java:243)
>       at 
> com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:100)
>       at 
> com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:81)
>       at 
> com.sun.xml.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.java:209)
>       at 
> com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:95)
>       at 
> com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:81)
>       at 
> com.sun.xml.bind.v2.model.impl.ModelBuilder.getTypeInfo(ModelBuilder.java:315)
>       at 
> com.sun.xml.bind.v2.model.impl.ModelBuilder.getTypeInfo(ModelBuilder.java:330)
>       at 
> com.sun.xml.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet(JAXBContextImpl.java:466)
>       at 
> com.sun.xml.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:302)
>       at 
> com.sun.xml.bind.v2.runtime.JAXBContextImpl$JAXBContextBuilder.build(JAXBContextImpl.java:1140)
>       at 
> com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:154)
>       at 
> com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:121)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.lang.reflect.Method.invoke(Method.java:606)
>       at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:253)
>       at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:240)
>       at javax.xml.bind.ContextFinder.find(ContextFinder.java:453)
>       at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:637)
>       at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:584)
>       at com.sun.xml.ws.spi.ProviderImpl$2.run(ProviderImpl.java:220)
>       at com.sun.xml.ws.spi.ProviderImpl$2.run(ProviderImpl.java:218)
>       at java.security.AccessController.doPrivileged(AccessController.java:34)
>       at 
> com.sun.xml.ws.spi.ProviderImpl.getEPRJaxbContext(ProviderImpl.java:217)
>       at com.sun.xml.ws.spi.ProviderImpl.<clinit>(ProviderImpl.java:88)
>       at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>       at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
>       at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>       at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
>       at java.lang.Class.newInstance(Class.java:370)
>       at javax.xml.ws.spi.FactoryFinder.newInstance(FactoryFinder.java:49)
>       at javax.xml.ws.spi.FactoryFinder.find(FactoryFinder.java:134)
>       at javax.xml.ws.spi.Provider.provider(Provider.java:127)
>       at javax.xml.ws.Service.<init>(Service.java:77)
>       at 
> com.google.api.ads.adwords.jaxws.v201309.mcm.ManagedCustomerService.<init>(ManagedCustomerService.java:42)
>       at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>       at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
>       at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>       at java.lang.reflect.Constructor.newInstance(Constructor.java:33)
>       at 
> com.google.api.ads.common.lib.soap.jaxws.JaxWsHandler.createSoapClient(JaxWsHandler.java:185)
>       at 
> com.google.api.ads.common.lib.soap.jaxws.JaxWsHandler.createSoapClient(JaxWsHandler.java:1)
>       at 
> com.google.api.ads.common.lib.factory.helper.BaseAdsServiceClientFactoryHelper.createSoapClient(BaseAdsServiceClientFactoryHelper.java:106)
>       at 
> com.google.api.ads.common.lib.factory.helper.BaseAdsServiceClientFactoryHelper.createAdsServiceClient(BaseAdsServiceClientFactoryHelper.java:71)
>       at 
> com.google.api.ads.common.lib.factory.AdsServiceClientFactory.getServiceClient(AdsServiceClientFactory.java:73)
>       at 
> com.google.api.ads.common.lib.factory.BaseAdsServiceClientFactory.getServiceClientAsInterface(BaseAdsServiceClientFactory.java:79)
>       at 
> com.google.api.ads.common.lib.factory.BaseServices.get(BaseServices.java:60)
>       at jaxwsdemo.GetAccountHierarchy.runExample(GetAccountHierarchy.java:84)
>       at jaxwsdemo.GetAccountHierarchy.main(GetAccountHierarchy.java:78)
>       at adwapi.RunExample.doGet(RunExample.java:39)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>       at 
> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
>       at 
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
>       at 
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>       at 
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>       at 
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>       at 
> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
>       at 
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
>       at 
> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>       at 
> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
>       at 
> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
>       at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
>       at 
> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>       at org.mortbay.jetty.Server.handle(Server.java:326)
>       at 
> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
>       at 
> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
>       at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
>       at 
> com.google.tracing.TraceContext$TraceContextRunnable.runInContext(TraceContext.java:435)
>       at 
> com.google.tracing.TraceContext$TraceContextRunnable$1.run(TraceContext.java:442)
>       at 
> com.google.tracing.CurrentContext.runInContext(CurrentContext.java:186)
>       at 
> com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:306)
>       at 
> com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:298)
>       at 
> com.google.tracing.TraceContext$TraceContextRunnable.run(TraceContext.java:439)
>       at java.lang.Thread.run(Thread.java:724)
> Caused by: java.lang.IllegalAccessException: Reflection is not allowed on 
> private javax.xml.ws.wsaddressing.W3CEndpointReference$Address 
> javax.xml.ws.wsaddressing.W3CEndpointReference.address
>       ... 83 more
>
> I have really been struggling to get AdWords API to work on App Engine, so I 
> really hope that someone can help with this problem.
>
> Thanks,
> Anders
>
>

-- 
-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
Also find us on our blog and discussion group:
http://googleadsdeveloper.blogspot.com
http://groups.google.com/group/adwords-api
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~

You received this message because you are subscribed to the Google
Groups "AdWords API Forum" group.
To post to this group, send email to adwords-api@googlegroups.com
To unsubscribe from this group, send email to
adwords-api+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/adwords-api?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"AdWords API Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to adwords-api+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to