0

I've just developed a Springboot server that works fine locally and in a "fully pasted" version on Cloud Shell but gives me the following error after the deployment on Appengine Standard:

com.sun.xml.internal.ws.wsdl.parser.InaccessibleWSDLException: 2 counts of InaccessibleWSDLException.

at com.sun.xml.internal.ws.wsdl.parser.RuntimeWSDLParser.tryWithMex(RuntimeWSDLParser.java:260) ~[na:1.8.0_112-google-v7]
at com.sun.xml.internal.ws.wsdl.parser.RuntimeWSDLParser.parse(RuntimeWSDLParser.java:231) ~[na:1.8.0_112-google-v7]
at com.sun.xml.internal.ws.wsdl.parser.RuntimeWSDLParser.parse(RuntimeWSDLParser.java:194) ~[na:1.8.0_112-google-v7]
at com.sun.xml.internal.ws.wsdl.parser.RuntimeWSDLParser.parse(RuntimeWSDLParser.java:163) ~[na:1.8.0_112-google-v7]
at com.sun.xml.internal.ws.client.WSServiceDelegate.parseWSDL(WSServiceDelegate.java:348) ~[na:1.8.0_112-google-v7]
at com.sun.xml.internal.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:306) ~[na:1.8.0_112-google-v7]
at com.sun.xml.internal.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:215) ~[na:1.8.0_112-google-v7]
at com.sun.xml.internal.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:196) ~[na:1.8.0_112-google-v7]
at com.sun.xml.internal.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:192) ~[na:1.8.0_112-google-v7]
at com.sun.xml.internal.ws.spi.ProviderImpl.createServiceDelegate(ProviderImpl.java:104) ~[na:1.8.0_112-google-v7]
at javax.xml.ws.Service.<init>(Service.java:77) ~[na:1.8.0_112-google-v7]
at am.ik.aws.apa.jaxws.AWSECommerceService.<init>(AWSECommerceService.java:60) ~[aws-apa-0.9.5.jar:na]
at am.ik.aws.apa.AwsApaRequesterImpl.preparePort(AwsApaRequesterImpl.java:100) ~[aws-apa-0.9.5.jar:na]
at am.ik.aws.apa.AwsApaRequesterImpl.itemSearch(AwsApaRequesterImpl.java:138) ~[aws-apa-0.9.5.jar:na]
at com.davidmar.azendpoint.AmazonEndpoint.Controller.MainController.getListResponseEntity(MainController.java:97) ~[classes/:na]
at com.davidmar.azendpoint.AmazonEndpoint.Controller.MainController.getItalyAPI(MainController.java:74) ~[classes/:na]

I've searched for a long time on Google but haven't solved it yet. Any help?

Threads I've checked: one , two, three

  • Going by https://stackoverflow.com/a/19250531/9705485 I'd guess that the wsdls your code is looking for are stored outside the code and that location is accessible to you locally but not on google cloud – Ryan Dawson Aug 01 '18 at 15:22
  • Yeah but it wouldn't work also on the Cloud Shell version... But it does. Anyway thanks for making the problem more specific. Maybe I will figure something out from your advice. – david.mar22 Aug 01 '18 at 16:13
  • Ah sorry I misread that part – Ryan Dawson Aug 01 '18 at 16:24
  • I suspect the location of that wsdl is the one in https://github.com/making/aws-apa/blob/master/src/main/java/am/ik/aws/apa/jaxws/AWSECommerceService.java#L33 Maybe you can add a bit of test code to check if that location is accessible from inside appengine. It doesn't look like the location can be parameterised in that class so and it's not your code so not sure you can override except by copy-paste and putting your own version of that class on your classpath as source to override the one in the library. But I suspect now that would just move the problem rather than fix it... – Ryan Dawson Aug 01 '18 at 16:45
  • I suspect this because it seems like outbound requests are special in app engine https://cloud.google.com/appengine/docs/standard/java/outbound-requests – Ryan Dawson Aug 01 '18 at 16:46
  • It seems others have hit basically this before https://stackoverflow.com/questions/43870044/webservice-couldnot-able-to-call-client But the docs suggest you should be able to use java.net.URL with java8 and from your stacktrace you are using java8 so it is not as simple as that and is presumably related to this webservice client call in particular – Ryan Dawson Aug 01 '18 at 17:02
  • That AWSECommerceService is extending javax.xml.ws.Service and your stacktrace goes into that superclass which according to https://stackoverflow.com/a/21626001/9705485 doesn't work on gae (or at least didn't 4 years ago) – Ryan Dawson Aug 01 '18 at 17:07
  • Less definitive but more recent and pointing in the same direction is https://groups.google.com/forum/#!topic/google-appengine/CMCq3I_n0uA Perhaps you can grab the wsdl and generate a new client using apache axis and use that? – Ryan Dawson Aug 01 '18 at 17:12

0 Answers0