How can I call my web service that I created following these

Posted by Daniel Ruiz on 03-Dec-2016 17:05

This is the link of the previous thread:

https://community.progress.com/community_groups/openedge_general/f/26/t/28301

In which part of the address bar path should I include the name of my service?

This is the name of my file .war.

Posted by Roy Ellis on 05-Dec-2016 13:08

Please note, that if you only have Progress Developer Studio on your local machine, the default database license will not allow remote connections to the database.  By default the development database will allow direct connections and TCP based connections but only from the localhost.

So yes, check to see if the remote agent.log shows an error about not being able to connect and this would be the reason why.

To verify use a client from the remote machine and try to connect to the database to see the error interactively.

Regards, Roy

Posted by Irfan on 05-Dec-2016 12:31

If its the case with database then please look at the agent log. You can find the log in <PASOE Instance>/logs/<PASOE Intstance>.agent.log.

Posted by Sanjeva Manchala on 03-Dec-2016 23:56

Hi Daniel,
 
You can access the web application with following details:
http://<host>:<port>/<WebApp-Name>/<transport>/<ServiceURI>/<ResourceURI>
For REST/Data Object (REST) services transport is rest, for Web services (WebSpeed and Data Object Web Handler) transport is web.
 
From the screenshot, we can see that WebApp name is MedicionesSucursal and Service name is MedicionesSucursalService and service is of type Data Object REST. So the sample URI should be like the following:
http://localhost:8810/MedicionesSucursal/rest/MedicionesSucursalService/<ResourceURI>
 
You can also access the Service based on the Sample URI from the Edit Service dialog. (Right click on Service under Defined Services node from PDSOE’s Web App project and click Edit..., then click Next)
 
 
Hope this helps,
Sanjeev.
 

Posted by Roy Ellis on 06-Dec-2016 07:01

Hi Daniel,

again, please look for errors in the oepas1.agent.log file. Errors returned to the client/browser will not help us determine the problem.  You should find the oepas1.agent.log file in the instance's logs directory (example: oepas1/logs).

Thank you, Roy

Posted by Roy Ellis on 06-Dec-2016 08:47

Hi Daniel,

okay, now we can see the problems.  

Your PASOE instance is not starting.  

There are a couple of problems:

1) port 8811 is already in use, this is the HTTPS port, but you should fix it so we don't see this error any longer

    a) to change the port number run tcman.bat config psc.as.https.port=<new-https-port>

    b) restart PASOE

2) You are missing a file:  

    a) File located at MedicionesSucursalService.restoe does not exist in the archive. returning null.

3) I believe the missing file is causing this error:

    a)  org.apache.cxf.interceptor.Fault: null while invoking public void Servicio.ervicio__ReadServicio_GET

This tells me your REST application is not correctly deployed.  You should be seeing a medicionessSCH.agent.log file, but we are never launching the agent because of the errors above.  

Please verify your REST application is correctly deployed and change your HTTPS port and try again.  

BTW:  if you run "tcman.bat clean" after stopping PASOE, it will remove all the log files, making debugging easier with each restart.

Let us know what you find, Roy

All Replies

Posted by Ricardo Perdigao on 03-Dec-2016 17:43

Hi Daniel,

it should be something like:

http://<<host_or_ip>>:8810/MedicionesSucursalService

If that does not work, please press Manage Web Applications (first screen you've posted), login with Tomcat/Tomcat and send us a print screen.  That way I can check if your Service is deployed to Tomcat and double check the name.

Warm Regards,

Ricardo Perdigao

Posted by Sanjeva Manchala on 03-Dec-2016 23:56

Hi Daniel,
 
You can access the web application with following details:
For REST/Data Object (REST) services transport is rest, for Web services (WebSpeed and Data Object Web Handler) transport is web.
 
From the screenshot, we can see that WebApp name is MedicionesSucursal and Service name is MedicionesSucursalService and service is of type Data Object REST. So the sample URI should be like the following:
 
You can also access the Service based on the Sample URI from the Edit Service dialog. (Right click on Service under Defined Services node from PDSOE’s Web App project and click Edit..., then click Next)
 
 
Hope this helps,
Sanjeev.
 

Posted by Daniel Ruiz on 05-Dec-2016 12:07

Hi, thank you very much for your help Sanjaeev and Ricardo.

I have two PAS  for Openedge servers, one is a local server where i also have the Progress Developer Studio and the other is a centralized remote server which only has the Pacific Application Server installed, I can access both through port 8810.

 

Local for Development

My the database is hosted on my local server. 

Local ip 10.101.102.131


Remote for Production

The remote connection does not throw anything, it seems that I can not access my local database.

Remote ip 10.101.102.201

I enter the route to web service

It lasts half a minute processing and at the end throws this result

I think the connection to my database causes the error.

However the server does register a connection

Thank you again for your help :).

Posted by Irfan on 05-Dec-2016 12:31

If its the case with database then please look at the agent log. You can find the log in <PASOE Instance>/logs/<PASOE Intstance>.agent.log.

Posted by Roy Ellis on 05-Dec-2016 13:08

Please note, that if you only have Progress Developer Studio on your local machine, the default database license will not allow remote connections to the database.  By default the development database will allow direct connections and TCP based connections but only from the localhost.

So yes, check to see if the remote agent.log shows an error about not being able to connect and this would be the reason why.

To verify use a client from the remote machine and try to connect to the database to see the error interactively.

Regards, Roy

Posted by Daniel Ruiz on 05-Dec-2016 16:24

I switched the database connection path to a production server

The server shows me this information:

The server encountered an unexpected condition, which prevented it from fulfilling the request. 

Posted by Roy Ellis on 06-Dec-2016 07:01

Hi Daniel,

again, please look for errors in the oepas1.agent.log file. Errors returned to the client/browser will not help us determine the problem.  You should find the oepas1.agent.log file in the instance's logs directory (example: oepas1/logs).

Thank you, Roy

Posted by Daniel Ruiz on 06-Dec-2016 08:13

Hi

I found the logs folder which has the following logs with data:

-catalina.out
-localhost.2016-12-05.log
-localhost_access_log.2016-12-05.txt
-medicionesSCH.2016-12-06.log

catalina.out

dic 05, 2016 3:13:52 PM org.apache.coyote.AbstractProtocol init
Información: Initializing ProtocolHandler ["http-bio-8811"]
dic 05, 2016 3:13:52 PM org.apache.coyote.AbstractProtocol init
Grave: Failed to initialize end point associated with ProtocolHandler ["http-bio-8811"]
java.net.BindException: Address already in use: JVM_Bind <null>:8811
at org.apache.tomcat.util.net.JIoEndpoint.bind(JIoEndpoint.java:413)
at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:649)
at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:434)
at org.apache.coyote.http11.AbstractHttp11JsseProtocol.init(AbstractHttp11JsseProtocol.java:119)
at org.apache.catalina.connector.Connector.initInternal(Connector.java:978)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.core.StandardService.initInternal(StandardService.java:559)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:821)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.startup.Catalina.load(Catalina.java:638)
at org.apache.catalina.startup.Catalina.load(Catalina.java:663)
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 org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:280)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:454)
Caused by: java.net.BindException: Address already in use: JVM_Bind
at java.net.DualStackPlainSocketImpl.bind0(Native Method)
at java.net.DualStackPlainSocketImpl.socketBind(DualStackPlainSocketImpl.java:106)
at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:376)
at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:190)
at java.net.ServerSocket.bind(ServerSocket.java:376)
at java.net.ServerSocket.<init>(ServerSocket.java:237)
at java.net.ServerSocket.<init>(ServerSocket.java:181)
at javax.net.ssl.SSLServerSocket.<init>(SSLServerSocket.java:136)
at sun.security.ssl.SSLServerSocketImpl.<init>(SSLServerSocketImpl.java:107)
at sun.security.ssl.SSLServerSocketFactoryImpl.createServerSocket(SSLServerSocketFactoryImpl.java:84)
at org.apache.tomcat.util.net.jsse.JSSESocketFactory.createSocket(JSSESocketFactory.java:219)
at org.apache.tomcat.util.net.JIoEndpoint.bind(JIoEndpoint.java:400)
... 17 more

localhost.2016-12-05.log

dic 05, 2016 3:54:12 PM org.apache.catalina.core.StandardWrapperValve invoke
Grave: Servlet.service() para servlet OERestAdapter lanzó excepción
java.lang.RuntimeException:
org.apache.cxf.interceptor.Fault: null while invoking public void Servicio.ervicio__ReadServicio_GET(java.lang.String)
with params [com.progress.adapters.rest.message.impl.RestRequestMessageImpl@32bfd7b9].
at org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:115)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:322)
at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:211)
at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:213)
at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:154)
at org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:130)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:221)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doGet(AbstractHTTPServlet.java:146)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:197)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at com.progress.appserv.adapters.rest.OERestAdapterFilter.doFilter(OERestAdapterFilter.java:138)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at com.progress.appserv.oeabl.OEAblServletFilter.doFilter(OEAblServletFilter.java:72)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at ch.qos.logback.classic.selector.servlet.LoggerContextFilter.doFilter(LoggerContextFilter.java:70)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at com.progress.appserv.services.security.OEClientPrincipalFilter.doFilter(OEClientPrincipalFilter.java:355)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at com.progress.appserv.services.security.OECORSFilter.doFilter(OECORSFilter.java:369)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:343)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:260)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.valves.StuckThreadDetectionValve.invoke(StuckThreadDetectionValve.java:221)
at org.apache.catalina.valves.CrawlerSessionManagerValve.invoke(CrawlerSessionManagerValve.java:180)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:957)
at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:271)
at org.apache.catalina.valves.RequestFilterValve.process(RequestFilterValve.java:334)
at org.apache.catalina.valves.RemoteAddrValve.invoke(RemoteAddrValve.java:119)
at org.apache.catalina.valves.RequestFilterValve.process(RequestFilterValve.java:334)
at org.apache.catalina.valves.RemoteHostValve.invoke(RemoteHostValve.java:119)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:744)
Caused by: org.apache.cxf.interceptor.Fault: null while invoking public void Servicio.ervicio__ReadServicio_GET(java.lang.String) with params [com.progress.adapters.rest.message.impl.RestRequestMessageImpl@32bfd7b9].
at org.apache.cxf.service.invoker.AbstractInvoker.createFault(AbstractInvoker.java:166)
at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:140)
at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:167)
at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:94)
at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58)
at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:94)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:262)
... 66 more
Caused by: java.lang.NullPointerException
at com.progress.appserv.adapters.rest.RestBindingStrategy.getProcedureBinding(RestBindingStrategy.java:396)
at com.progress.appserv.adapters.rest.RestBindingStrategy.doExecuteIn(RestBindingStrategy.java:216)
at com.progress.adapters.v2.binding.strategy.impl.BaseCamelProcessorStrategy.doExecute(BaseCamelProcessorStrategy.java:53)
at com.progress.adapters.v2.binding.strategy.impl.NestedBindingStrategy.execute(NestedBindingStrategy.java:40)
at com.progress.adapters.v2.binding.strategy.impl.NestedBindingStrategy.executeForward(NestedBindingStrategy.java:99)
at com.progress.adapters.v2.binding.strategy.impl.NestedBindingStrategy.execute(NestedBindingStrategy.java:53)
at com.progress.caf.camel.component.cxf.jaxrs.PrgRsInvoker.executeInBindingStrategy(PrgRsInvoker.java:224)
at com.progress.caf.camel.component.cxf.jaxrs.PrgRsInvoker.syncInvoke(PrgRsInvoker.java:160)
at com.progress.caf.camel.component.cxf.jaxrs.PrgRsInvoker.performInvocation(PrgRsInvoker.java:76)
at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96)
... 71 more

localhost_access_log.2016-12-05.txt

10.101.102.131 - - [05/Dec/2016:15:25:04 -0600] "GET /MedicionesSucursal/rest/MedicionesSucursalService/Servicio HTTP/1.1" 500 2223 16
10.101.102.131 - - [05/Dec/2016:15:25:04 -0600] "GET /MedicionesSucursal/static/commonStyle.css HTTP/1.1" 304 - 0
10.101.102.131 - - [05/Dec/2016:15:25:04 -0600] "GET /MedicionesSucursal/static/images/progress-oe.png HTTP/1.1" 304 - 0
10.101.102.131 - - [05/Dec/2016:15:25:04 -0600] "GET /MedicionesSucursal/static/images/pas-logo.svg HTTP/1.1" 304 - 0
10.101.102.131 - - [05/Dec/2016:15:25:37 -0600] "GET /MedicionesSucursal/rest/MedicionesSucursalService/S HTTP/1.1" 404 - 15
10.101.102.131 - - [05/Dec/2016:15:33:23 -0600] "GET /MedicionesSucursal/rest/MedicionesSucursalService/Servicio HTTP/1.1" 500 2223 13
10.101.102.131 - - [05/Dec/2016:15:33:23 -0600] "GET /MedicionesSucursal/static/commonStyle.css HTTP/1.1" 304 - 1
10.101.102.131 - - [05/Dec/2016:15:33:23 -0600] "GET /MedicionesSucursal/static/images/progress-oe.png HTTP/1.1" 304 - 1
10.101.102.131 - - [05/Dec/2016:15:33:23 -0600] "GET /MedicionesSucursal/static/images/pas-logo.svg HTTP/1.1" 304 - 1
0:0:0:0:0:0:0:1 - - [05/Dec/2016:15:33:58 -0600] "GET /manager HTTP/1.1" 404 889 10

medicionesSCH.2016-12-06.log

07:46:00.832/59954625 [catalina-exec-4] WARN c.p.caf.archive.StagingDirectory - File located at MedicionesSucursalService.restoe does not exist in the archive. returning null.
07:46:00.836/59954629 [catalina-exec-4] WARN c.p.caf.archive.StagingDirectory - File located at MedicionesSucursalService.restoe does not exist in the archive. returning null.
07:46:00.838/59954631 [catalina-exec-4] WARN o.a.cxf.phase.PhaseInterceptorChain - Application Servicio has thrown exception, unwinding now
org.apache.cxf.interceptor.Fault: null while invoking public void Servicio.ervicio__ReadServicio_GET(java.lang.String) with params [com.progress.adapters.rest.message.impl.RestRequestMessageImpl@40d169b3].
at org.apache.cxf.service.invoker.AbstractInvoker.createFault(AbstractInvoker.java:166) ~[cxf-2.6.2.jar:2.6.2]
at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:140) ~[cxf-2.6.2.jar:2.6.2]
at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:167) ~[cxf-2.6.2.jar:2.6.2]
at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:94) ~[cxf-2.6.2.jar:2.6.2]
at org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58) ~[cxf-2.6.2.jar:2.6.2]
at org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:94) ~[cxf-2.6.2.jar:2.6.2]
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:262) ~[cxf-2.6.2.jar:2.6.2]
at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121) [cxf-2.6.2.jar:2.6.2]
at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:211) [cxf-2.6.2.jar:2.6.2]
at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:213) [cxf-2.6.2.jar:2.6.2]
at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:154) [cxf-2.6.2.jar:2.6.2]
at org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:130) [cxf-2.6.2.jar:2.6.2]
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:221) [cxf-2.6.2.jar:2.6.2]
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doGet(AbstractHTTPServlet.java:146) [cxf-2.6.2.jar:2.6.2]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:624) [servlet-api.jar:na]
at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:197) [cxf-2.6.2.jar:2.6.2]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) [catalina.jar:7.0.62]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.62]
at com.progress.appserv.adapters.rest.OERestAdapterFilter.doFilter(OERestAdapterFilter.java:138) [oerest.11.6.0.jar:na]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.62]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.62]
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) [tomcat7-websocket.jar:7.0.62]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.62]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.62]
at com.progress.appserv.oeabl.OEAblServletFilter.doFilter(OEAblServletFilter.java:72) [oeablservice.11.6.0.jar:na]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.62]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.62]
at ch.qos.logback.classic.selector.servlet.LoggerContextFilter.doFilter(LoggerContextFilter.java:70) [logback-classic-1.0.13.jar:na]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.62]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.62]
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330) [spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118) [spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84) [spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) [spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113) [spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) [spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at com.progress.appserv.services.security.OEClientPrincipalFilter.doFilter(OEClientPrincipalFilter.java:355) [oesecurity.11.6.0.jar:na]
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) [spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113) [spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) [spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54) [spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) [spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) [spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) [spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at com.progress.appserv.services.security.OECORSFilter.doFilter(OECORSFilter.java:369) [oesecurity.11.6.0.jar:na]
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) [spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192) [spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160) [spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:343) [spring-web-3.2.4.RELEASE.jar:3.2.4.RELEASE]
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:260) [spring-web-3.2.4.RELEASE.jar:3.2.4.RELEASE]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.62]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.62]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) [catalina.jar:7.0.62]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) [catalina.jar:7.0.62]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) [catalina.jar:7.0.62]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) [catalina.jar:7.0.62]
at org.apache.catalina.valves.StuckThreadDetectionValve.invoke(StuckThreadDetectionValve.java:221) [catalina.jar:7.0.62]
at org.apache.catalina.valves.CrawlerSessionManagerValve.invoke(CrawlerSessionManagerValve.java:180) [catalina.jar:7.0.62]
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:957) [catalina.jar:7.0.62]
at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:271) [catalina.jar:7.0.62]
at org.apache.catalina.valves.RequestFilterValve.process(RequestFilterValve.java:334) [catalina.jar:7.0.62]
at org.apache.catalina.valves.RemoteAddrValve.invoke(RemoteAddrValve.java:119) [catalina.jar:7.0.62]
at org.apache.catalina.valves.RequestFilterValve.process(RequestFilterValve.java:334) [catalina.jar:7.0.62]
at org.apache.catalina.valves.RemoteHostValve.invoke(RemoteHostValve.java:119) [catalina.jar:7.0.62]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) [catalina.jar:7.0.62]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423) [catalina.jar:7.0.62]
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079) [tomcat-coyote.jar:7.0.62]
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620) [tomcat-coyote.jar:7.0.62]
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316) [tomcat-coyote.jar:7.0.62]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_45]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_45]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-coyote.jar:7.0.62]
at java.lang.Thread.run(Thread.java:744) [na:1.7.0_45]
Caused by: java.lang.NullPointerException: null
at com.progress.appserv.adapters.rest.RestBindingStrategy.getProcedureBinding(RestBindingStrategy.java:396) ~[oerest.11.6.0.jar:na]
at com.progress.appserv.adapters.rest.RestBindingStrategy.doExecuteIn(RestBindingStrategy.java:216) ~[oerest.11.6.0.jar:na]
at com.progress.adapters.v2.binding.strategy.impl.BaseCamelProcessorStrategy.doExecute(BaseCamelProcessorStrategy.java:53) ~[1padapters-framework.jar:1.5.1.0 (1.5.1.x@9194)]
at com.progress.adapters.v2.binding.strategy.impl.NestedBindingStrategy.execute(NestedBindingStrategy.java:40) ~[1padapters-framework.jar:1.5.1.0 (1.5.1.x@9194)]
at com.progress.adapters.v2.binding.strategy.impl.NestedBindingStrategy.executeForward(NestedBindingStrategy.java:99) ~[1padapters-framework.jar:1.5.1.0 (1.5.1.x@9194)]
at com.progress.adapters.v2.binding.strategy.impl.NestedBindingStrategy.execute(NestedBindingStrategy.java:53) ~[1padapters-framework.jar:1.5.1.0 (1.5.1.x@9194)]
at com.progress.caf.camel.component.cxf.jaxrs.PrgRsInvoker.executeInBindingStrategy(PrgRsInvoker.java:224) ~[1padapters-camel-prgrs.jar:1.5.1.0 (1.5.1.x@9194)]
at com.progress.caf.camel.component.cxf.jaxrs.PrgRsInvoker.syncInvoke(PrgRsInvoker.java:160) ~[1padapters-camel-prgrs.jar:1.5.1.0 (1.5.1.x@9194)]
at com.progress.caf.camel.component.cxf.jaxrs.PrgRsInvoker.performInvocation(PrgRsInvoker.java:76) ~[1padapters-camel-prgrs.jar:1.5.1.0 (1.5.1.x@9194)]
at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96) ~[cxf-2.6.2.jar:2.6.2]
... 71 common frames omitted
07:46:00.840/59954633 [catalina-e

Posted by Roy Ellis on 06-Dec-2016 08:47

Hi Daniel,

okay, now we can see the problems.  

Your PASOE instance is not starting.  

There are a couple of problems:

1) port 8811 is already in use, this is the HTTPS port, but you should fix it so we don't see this error any longer

    a) to change the port number run tcman.bat config psc.as.https.port=<new-https-port>

    b) restart PASOE

2) You are missing a file:  

    a) File located at MedicionesSucursalService.restoe does not exist in the archive. returning null.

3) I believe the missing file is causing this error:

    a)  org.apache.cxf.interceptor.Fault: null while invoking public void Servicio.ervicio__ReadServicio_GET

This tells me your REST application is not correctly deployed.  You should be seeing a medicionessSCH.agent.log file, but we are never launching the agent because of the errors above.  

Please verify your REST application is correctly deployed and change your HTTPS port and try again.  

BTW:  if you run "tcman.bat clean" after stopping PASOE, it will remove all the log files, making debugging easier with each restart.

Let us know what you find, Roy

Posted by Daniel Ruiz on 06-Dec-2016 12:10

Thanks for your valuable help, I was finally able to generate the REST service [:D]

The changes I made were as follows:

  • The port number was changed to 8501
  • I downloaded directly from the official Tomcat page the missing binary name tcnative-1.dll
  • I changed the line of my class:
    • @program FILE(name="Servicio.cls", module="AppServer")
    • por
    • @program FILE(name="rest.Servicio.cls", module="AppServer").

  • I re-exported my project MeasuresSucursal as WEB application
  • My r-code file of Servicio was generated

  • Replace the old files located in my openedge folder with the new compiled files.
  • Fixed database connection error, port was 2500, not 2600.
  • The war file was redone.
  • The instance was restarted and this was the result:

Posted by Roy Ellis on 06-Dec-2016 12:36

Hi Daniel,

Thank you for sharing the fix with everyone!

Great job, Roy

This thread is closed