Hoping someone on the forum can provide guidance on how to resolve this issue.


What I'm trying to accomplish

Allow outsystems to consume a rest API that is not built on Outsystems.

What I've tried

1. After going through the training material, I created a "Consume Rest API" action

2. When I try to test the "consumption" API, Outsystems gives me a "Internal Server Error" (see screenshot below). Things to note:

Note: The API URL is that of a "test" API, has no associated authentication, or headers/body requirements. The API when called from Postman works just fine. Here's the link to the API in case you want to look at the sample response.


3. After creating the consumption API based off the sample response from Postman, I tried calling it from a screen action, but that did not work as well (expected, but I thought it was worth a shot). I turned on "Full" logging for this API from the Integration section in the "Factory" (admin) console, and it shows the following error (including full error stack).

Not sure what I'm doing wrong, because setting up the API has very minimal steps and I seem to have followed all the right steps, so any guidance here would be greatly appreciated!

FYI: Unfortunately, I cannot upload the actual OML file, since this is a production app, but I can create a smaller test app with this API and upload it if that's helpful.

jsonplaceholder.typicode.com: Name or service not known
java.net.UnknownHostException: jsonplaceholder.typicode.com: Name or service not known
   at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
   at java.net.InetAddress$2.lookupAllHostAddr(InetAddress.java:928)
   at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1323)
   at java.net.InetAddress.getAllByName0(InetAddress.java:1276)
   at java.net.InetAddress.getAllByName(InetAddress.java:1192)
   at java.net.InetAddress.getAllByName(InetAddress.java:1126)
   at org.apache.http.impl.conn.SystemDefaultDnsResolver.resolve(SystemDefaultDnsResolver.java:45)
   at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:111)
   at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:353)
   at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:380)
   at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236)
   at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)
   at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:88)
   at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
   at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184)
   at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
   at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:55)
   at osrefactorassemblylinesystems.actions.ActGetTodo.executeGetTodo(Unknown Source)
   at osrefactorassemblylinesystems.managedbean.flowas_wip.ScrnIssues_SP_IntegrationTest.preparation(Unknown Source)
   at osrefactorassemblylinesystems.managedbean.flowas_wip.ScrnIssues_SP_IntegrationTest.pageLoad(Unknown Source)
   at outsystems.hubedition.webwidgets.uicomponent.utils.ComponentUtils.invokeBeanPageLoad(Unknown Source)
   at outsystems.hubedition.webwidgets.uicomponent.os_controls.PageComponent.encodeBegin(Unknown Source)
   at javax.faces.component.UIComponent.encodeAll(UIComponent.java:928)
   at javax.faces.component.UIComponent.encodeAll(UIComponent.java:933)
   at com.sun.faces.application.ViewHandlerImpl.doRenderView(ViewHandlerImpl.java:268)
   at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:198)
   at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110)
   at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
   at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
   at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
   at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:280)
   at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:254)
   at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:136)
   at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:346)
   at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:25)
   at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:79)
   at outsystems.hubedition.webwidgets.BaseRequestStartupFilter.doFilter(Unknown Source)
   at osrefactorassemblylinesystems.RequestStartupFilter.doFilter(Unknown Source)
   at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:79)
   at outsystems.hubedition.webwidgets.filters.HttpContextFilter.doFilter(Unknown Source)
   at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:79)
   at outsystems.hubedition.webwidgets.filters.CacheControlFilter.doFilter(Unknown Source)
   at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:79)
   at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
   at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:79)
   at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3436)
   at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3402)
   at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
   at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
   at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:57)
   at weblogic.servlet.internal.WebAppServletContext.doSecuredExecute(WebAppServletContext.java:2285)
   at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2201)
   at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179)
   at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1572)
   at weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:255)
   at weblogic.work.ExecuteThread.execute(ExecuteThread.java:311)
   at weblogic.work.ExecuteThread.run(ExecuteThread.java:263)

Hi Arpit,


it looks fine for me. Please fine the below screenshot.