Bad Get way

0
Mendix application communicated between two apps via app service. In prodution envinorment one app service always give 502 bad getway error. any idea how to detect the root cause for this.     Thanks Sandip
asked
3 answers
0

Advanced stacktrace:
at com.mendix.modules.microflowengine.MicroflowUtil.processException(MicroflowUtil.java:146)

Caused by:
The server sent HTTP status code 502: Bad Gateway
at com.sun.xml.ws.transport.http.client.HttpTransportPipe.checkStatusCode(HttpTransportPipe.java:358)
at com.sun.xml.ws.transport.http.client.HttpTransportPipe.createResponsePacket(HttpTransportPipe.java:307)
at com.sun.xml.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:265)
at com.sun.xml.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:184)
at com.sun.xml.ws.transport.DeferredTransportPipe.processRequest(DeferredTransportPipe.java:137)
at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:641)
at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:600)
at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:585)
at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:482)
at com.sun.xml.ws.client.Stub.process(Stub.java:323)
at com.sun.xml.ws.client.dispatch.DispatchImpl.doInvoke(DispatchImpl.java:192)
at com.sun.xml.ws.client.dispatch.DispatchImpl.invoke(DispatchImpl.java:218)
at com.mendix.integration.webservices.call.MetroDispatcher.$anonfun$dispatchAsMessage$2(MetroDispatcher.scala:61)
at com.mendix.integration.util.PrivilegedUtil$$anon$1.run(PrivilegedUtil.scala:12)
at java.security.AccessController.doPrivileged(Native Method)
at com.mendix.integration.util.PrivilegedUtil$.withPrivileged(PrivilegedUtil.scala:11)
at com.mendix.integration.webservices.call.MetroDispatcher.dispatchAsMessage(MetroDispatcher.scala:61)
at com.mendix.integration.webservices.call.MetroDispatcher.$anonfun$dispatch$1(MetroDispatcher.scala:39)
at com.mendix.integration.util.AutoCloseableUtil$.using(AutoCloseableUtil.scala:10)
at com.mendix.integration.webservices.call.MetroDispatcher.dispatch(MetroDispatcher.scala:32)
at com.mendix.integration.webservices.call.WebserviceCaller.dispatch(WebserviceCaller.scala:44)
at com.mendix.integration.webservices.call.WebserviceCaller.callWithRequestStream(WebserviceCaller.scala:28)
at com.mendix.integration.webservices.call.WebserviceCaller.call(WebserviceCaller.scala:23)
at com.mendix.integration.webservices.WebserviceModuleImpl.callWebservice(WebserviceModuleImpl.scala:65)
at com.mendix.integration.actions.microflow.WebServiceCallAction.execute(WebServiceCallAction.scala:92)
at com.mendix.modules.microflowengine.microflow.impl.MicroflowObject.execute(MicroflowObject.java:47)
at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAfterBreakingIfNecessary(MicroflowImpl.java:201)
at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAction(MicroflowImpl.java:157)
at com.mendix.systemwideinterfaces.core.UserAction.execute(UserAction.java:46)
at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.doCall(CoreActionHandlerImpl.scala:79)
at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.call(CoreActionHandlerImpl.scala:57)
at com.mendix.core.actionmanagement.CoreAction.call(CoreAction.java:55)
at com.mendix.basis.actionmanagement.ActionManagerBase$1.execute(ActionManagerBase.java:150)
at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:32)
at com.mendix.basis.actionmanagement.ActionManagerBase.executeSync(ActionManagerBase.java:155)
at com.mendix.basis.component.InternalCoreBase.executeSync(InternalCoreBase.java:493)
at com.mendix.modules.microflowengine.actions.SubMicroflowAction.execute(SubMicroflowAction.scala:51)
at com.mendix.modules.microflowengine.microflow.impl.MicroflowObject.execute(MicroflowObject.java:47)
at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAfterBreakingIfNecessary(MicroflowImpl.java:201)
at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAction(MicroflowImpl.java:157)
at com.mendix.systemwideinterfaces.core.UserAction.execute(UserAction.java:46)
at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.doCall(CoreActionHandlerImpl.scala:79)
at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.call(CoreActionHandlerImpl.scala:57)
at com.mendix.core.actionmanagement.CoreAction.call(CoreAction.java:55)
at com.mendix.basis.actionmanagement.ActionManagerBase$1.execute(ActionManagerBase.java:150)
at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:32)
at com.mendix.basis.actionmanagement.ActionManagerBase.executeSync(ActionManagerBase.java:155)
at com.mendix.basis.component.InternalCoreBase.executeSync(InternalCoreBase.java:493)
at com.mendix.modules.microflowengine.actions.SubMicroflowAction.execute(SubMicroflowAction.scala:51)
at com.mendix.modules.microflowengine.microflow.impl.MicroflowObject.execute(MicroflowObject.java:47)
at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAfterBreakingIfNecessary(MicroflowImpl.java:201)
at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAction(MicroflowImpl.java:157)
at com.mendix.systemwideinterfaces.core.UserAction.execute(UserAction.java:46)
at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.doCall(CoreActionHandlerImpl.scala:79)
at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.call(CoreActionHandlerImpl.scala:57)
at com.mendix.core.actionmanagement.CoreAction.call(CoreAction.java:55)
at com.mendix.basis.actionmanagement.ActionManagerBase$1.execute(ActionManagerBase.java:150)
at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:32)
at com.mendix.basis.actionmanagement.ActionManagerBase.executeSync(ActionManagerBase.java:155)
at com.mendix.basis.component.InternalCoreBase.executeSync(InternalCoreBase.java:493)
at com.mendix.modules.microflowengine.actions.SubMicroflowAction.execute(SubMicroflowAction.scala:51)
at com.mendix.modules.microflowengine.microflow.impl.MicroflowObject.execute(MicroflowObject.java:47)
at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAfterBreakingIfNecessary(MicroflowImpl.java:201)
at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAction(MicroflowImpl.java:157)
at com.mendix.systemwideinterfaces.core.UserAction.execute(UserAction.java:46)
at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.doCall(CoreActionHandlerImpl.scala:79)
at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.call(CoreActionHandlerImpl.scala:57)
at com.mendix.core.actionmanagement.CoreAction.call(CoreAction.java:55)
at com.mendix.basis.actionmanagement.ActionManagerBase$1.execute(ActionManagerBase.java:150)
at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:32)
at com.mendix.basis.actionmanagement.ActionManagerBase.executeSync(ActionManagerBase.java:155)
at com.mendix.basis.component.InternalCoreBase.execute(InternalCoreBase.java:383)
at com.mendix.integration.webservices.publish.handling.WebServiceCallBodyProcessor.executeMicroflow(WebServiceCallBodyProcessor.scala:85)
at com.mendix.integration.webservices.publish.handling.WebServiceActionMonitor$.$anonfun$run$1(WebServiceActionMonitor.scala:23)
at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
at com.mendix.basis.actionmanagement.IMonitoredAction$$anon$1.execute(IMonitoredAction.scala:47)
at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:32)
at com.mendix.basis.actionmanagement.IMonitoredAction.monitor(IMonitoredAction.scala:49)
at com.mendix.basis.actionmanagement.IMonitoredAction.monitor$(IMonitoredAction.scala:25)
at com.mendix.integration.webservices.publish.handling.WebServiceMonitoredAction.monitor(WebServiceActionMonitor.scala:28)
at com.mendix.integration.webservices.publish.handling.WebServiceActionMonitor$.run(WebServiceActionMonitor.scala:21)
at com.mendix.integration.webservices.publish.handling.WebServiceCallBodyProcessor.executeOperation(WebServiceCallBodyProcessor.scala:43)
at com.mendix.integration.webservices.publish.handling.WebserviceCallHandler.$anonfun$handleSoapRequest$4(WebserviceCallHandler.scala:77)
at com.mendix.integration.webservices.publish.handling.WebserviceCallHandler.$anonfun$handleSoapRequest$4$adapted(WebserviceCallHandler.scala:69)
at scala.Option.fold(Option.scala:175)
at com.mendix.integration.webservices.publish.handling.WebserviceCallHandler.$anonfun$handleSoapRequest$2(WebserviceCallHandler.scala:69)
at com.mendix.integration.webservices.publish.handling.WebserviceCallHandler.$anonfun$handleSoapRequest$2$adapted(WebserviceCallHandler.scala:68)
at scala.Option.fold(Option.scala:175)
at com.mendix.integration.webservices.publish.handling.WebserviceCallHandler.handleSoapRequest(WebserviceCallHandler.scala:68)
at com.mendix.integration.webservices.publish.handling.WebserviceCallHandler.processRequest(WebserviceCallHandler.scala:45)
at com.mendix.integration.webservices.WebserviceModuleImpl.handleWebserviceCall(WebserviceModuleImpl.scala:77)
at com.mendix.integration.requesthandlers.WebserviceRequestHandler.processRequest(WebserviceRequestHandler.scala:12)
at com.mendix.externalinterface.connector.RequestHandler.doProcessRequest(RequestHandler.java:40)
at com.mendix.external.connector.MxRuntimeConnector$1.execute(MxRuntimeConnector.java:72)
at com.mendix.external.connector.MxRuntimeConnector$1.execute(MxRuntimeConnector.java:69)
at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:32)
at com.mendix.external.connector.MxRuntimeConnector.processRequest(MxRuntimeConnector.java:75)
at com.mendix.basis.impl.MxRuntimeImpl.processRequest(MxRuntimeImpl.java:909)
at com.mendix.m2ee.appcontainer.server.handler.RuntimeHandler.service(RuntimeHandler.java:42)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:867)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:542)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1588)
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1345)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1557)
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1247)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
at org.eclipse.jetty.server.Server.handle(Server.java:502)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
at java.lang.Thread.run(Thread.java:748)

answered
0

the Strange thing is the action on the receiving side is completed as expected and when the time to handle the response its give 502.

answered
0

I think you need to check the path based access restrictions  https://docs.mendix.com/developerportal/deploy/environments-details#4-4-path-based-access-restrictions

We had a similar issue with /rest/ not being configured and got weird responses although the rest endpoint was triggered. Perhaps this is similar with app services. 

answered