cancel
Showing results for 
Search instead for 
Did you mean: 

Error when calling custom @On event handler

gregorw
Active Contributor

Hello CAP Experts, Hi iinside,

after I've made a NodeJS CAP / Cloud SDK talking to an OData Service served from my OnPremise ABAP developer edition, I try to do the same with Java. I've created the project: epmbp-consumer-app-java. The Endpoints that provide data from the database just work fine. But as soon as I call the endpoint:

http://localhost:8080/odata/v4/CatalogService/EPMBusinessPartners

I receive the following error message:

{"error": {"code": "INTERNAL_SERVER_ERROR","message": "class com.sap.cds.services.ServiceException tried to access method 'java.lang.Throwable org.slf4j.helpers.MessageFormatter.getThrowableCandidate(java.lang.Object[])' (com.sap.cds.services.ServiceException and org.slf4j.helpers.MessageFormatter are in unnamed module of loader 'app')","details": []}}

In the console I see this errors:

2020-02-29 18:27:47.536 ERROR 55667 --- [nio-8080-exec-3] c.s.c.a.o.v.p.impl.DataProvider          : class com.sap.cds.services.ServiceException tried to access method 'java.lang.Throwable org.slf4j.helpers.MessageFormatter.getThrowableCandidate(java.lang.Object[])' (com.sap.cds.services.ServiceException and org.slf4j.helpers.MessageFormatter are in unnamed module of loader 'app')


java.lang.IllegalAccessError: class com.sap.cds.services.ServiceException tried to access method 'java.lang.Throwable org.slf4j.helpers.MessageFormatter.getThrowableCandidate(java.lang.Object[])' (com.sap.cds.services.ServiceException and org.slf4j.helpers.MessageFormatter are in unnamed module of loader 'app')
        at com.sap.cds.services.ServiceException.<init>(ServiceException.java:65) ~[cds-services-api-1.3.0.jar:na]
        at com.sap.cds.services.ServiceException.<init>(ServiceException.java:40) ~[cds-services-api-1.3.0.jar:na]
        at com.sap.cds.services.impl.ContextualizedServiceException.<init>(ContextualizedServiceException.java:36) ~[cds-services-impl-1.3.0.jar:na]
        at com.sap.cds.services.impl.ServiceImpl.dispatch(ServiceImpl.java:205) ~[cds-services-impl-1.3.0.jar:na]
        at com.sap.cds.services.impl.persistence.PersistenceServiceImpl.dispatch(PersistenceServiceImpl.java:82) ~[cds-services-impl-1.3.0.jar:na]
        at com.sap.cds.services.impl.ServiceImpl.emit(ServiceImpl.java:127) ~[cds-services-impl-1.3.0.jar:na]
        at com.sap.cds.services.impl.cds.CdsServiceBaseImpl.run(CdsServiceBaseImpl.java:44) ~[cds-services-impl-1.3.0.jar:na]
        at com.sap.cds.services.impl.cds.CdsDefaultOnHandler.defaultRead(CdsDefaultOnHandler.java:22) ~[cds-services-impl-1.3.0.jar:na]
        at com.sap.cds.services.impl.handlerregistry.HandlerRegistryTools.invoke(HandlerRegistryTools.java:149) ~[cds-services-impl-1.3.0.jar:na]
        at com.sap.cds.services.impl.handlerregistry.HandlerRegistryTools.lambda$register$2(HandlerRegistryTools.java:118) ~[cds-services-impl-1.3.0.jar:na]
        at com.sap.cds.services.impl.ServiceImpl.dispatch(ServiceImpl.java:184) ~[cds-services-impl-1.3.0.jar:na]
        at com.sap.cds.services.impl.ServiceImpl.emit(ServiceImpl.java:127) ~[cds-services-impl-1.3.0.jar:na]
        at com.sap.cds.services.impl.cds.CdsServiceBaseImpl.run(CdsServiceBaseImpl.java:44) ~[cds-services-impl-1.3.0.jar:na]
        at com.sap.cds.services.impl.cds.CdsServiceBaseImpl.run(CdsServiceBaseImpl.java:34) ~[cds-services-impl-1.3.0.jar:na]
        at com.sap.cds.adapter.odata.v4.CdsODataHandlers.get(CdsODataHandlers.java:88) ~[cds-adapter-odata-v4-1.3.0.jar:na]
        at com.sap.cds.adapter.odata.v4.processors.impl.DataProvider.lambda$processQueryRequest$2(DataProvider.java:133) ~[cds-adapter-odata-v4-1.3.0.jar:na]
        at com.sap.cds.services.impl.runtime.CdsRuntimeImpl.runInRequestContext(CdsRuntimeImpl.java:154) ~[cds-services-impl-1.3.0.jar:na]
        at com.sap.cds.adapter.odata.v4.processors.impl.DataProvider.processQueryRequest(DataProvider.java:124) ~[cds-adapter-odata-v4-1.3.0.jar:na]
        at com.sap.cds.adapter.odata.v4.processors.impl.DataProvider.processRequestsBasedOnMethods(DataProvider.java:104) ~[cds-adapter-odata-v4-1.3.0.jar:na]
        at com.sap.cds.adapter.odata.v4.processors.impl.DataProvider.lambda$processChangesetRequest$0(DataProvider.java:84) ~[cds-adapter-odata-v4-1.3.0.jar:na]
        at com.sap.cds.adapter.odata.v4.handlers.ODataProcessorHandler.lambda$runInReqContextIfNecessary$2(ODataProcessorHandler.java:731) ~[cds-adapter-odata-v4-1.3.0.jar:na]
        at com.sap.cds.services.impl.runtime.CdsRuntimeImpl.runInChangeSetContext(CdsRuntimeImpl.java:163) ~[cds-services-impl-1.3.0.jar:na]
        at com.sap.cds.adapter.odata.v4.handlers.ODataProcessorHandler.runInReqContextIfNecessary(ODataProcessorHandler.java:730) ~[cds-adapter-odata-v4-1.3.0.jar:na]
        at com.sap.cds.adapter.odata.v4.processors.impl.DataProvider.processChangesetRequest(DataProvider.java:90) ~[cds-adapter-odata-v4-1.3.0.jar:na]
        at com.sap.cds.adapter.odata.v4.processors.impl.GenericODataProcessor.readEntityCollectionInternal(GenericODataProcessor.java:309) ~[cds-adapter-odata-v4-1.3.0.jar:na]
        at com.sap.cds.adapter.odata.v4.processors.impl.GenericODataProcessor.readEntityCollection(GenericODataProcessor.java:277) ~[cds-adapter-odata-v4-1.3.0.jar:na]
        at com.sap.cds.adapter.odata.v4.processors.impl.GenericODataProcessor.readEntityCollection(GenericODataProcessor.java:76) ~[cds-adapter-odata-v4-1.3.0.jar:na]
        at org.apache.olingo.server.core.ODataDispatcher.handleEntityCollectionDispatching(ODataDispatcher.java:529) ~[odata-v4-lib-1.3.0.jar:na]
        at org.apache.olingo.server.core.ODataDispatcher.handleEntityDispatching(ODataDispatcher.java:511) ~[odata-v4-lib-1.3.0.jar:na]
        at org.apache.olingo.server.core.ODataDispatcher.handleResourceDispatching(ODataDispatcher.java:152) ~[odata-v4-lib-1.3.0.jar:na]
        at org.apache.olingo.server.core.ODataDispatcher.dispatch(ODataDispatcher.java:118) ~[odata-v4-lib-1.3.0.jar:na]
        at org.apache.olingo.server.core.ODataHandlerImpl.processInternal(ODataHandlerImpl.java:170) ~[odata-v4-lib-1.3.0.jar:na]
        at org.apache.olingo.server.core.ODataHandlerImpl.process(ODataHandlerImpl.java:86) ~[odata-v4-lib-1.3.0.jar:na]
        at org.apache.olingo.server.core.ODataHttpHandlerImpl.process(ODataHttpHandlerImpl.java:75) ~[odata-v4-lib-1.3.0.jar:na]
        at org.apache.olingo.server.core.ODataHttpHandlerImpl.process(ODataHttpHandlerImpl.java:89) ~[odata-v4-lib-1.3.0.jar:na]
        at com.sap.cds.adapter.odata.v4.CdsODataV4Servlet.service(CdsODataV4Servlet.java:111) ~[cds-adapter-odata-v4-1.3.0.jar:na]
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at com.sap.cds.framework.spring.config.adapter.ServletAdapterRestController.handleRequest(ServletAdapterRestController.java:28) ~[cds-framework-spring-boot-1.3.0.jar:na]
        at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:52) ~[spring-webmvc-5.2.3.RELEASE.jar:5.2.3.RELEASE]
        at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040) ~[spring-webmvc-5.2.3.RELEASE.jar:5.2.3.RELEASE]
        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943) ~[spring-webmvc-5.2.3.RELEASE.jar:5.2.3.RELEASE]
        at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) ~[spring-webmvc-5.2.3.RELEASE.jar:5.2.3.RELEASE]
        at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) ~[spring-webmvc-5.2.3.RELEASE.jar:5.2.3.RELEASE]
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:634) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) ~[spring-webmvc-5.2.3.RELEASE.jar:5.2.3.RELEASE]
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) ~[tomcat-embed-websocket-9.0.31.jar:9.0.31]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.2.3.RELEASE.jar:5.2.3.RELEASE]
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.3.RELEASE.jar:5.2.3.RELEASE]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.2.3.RELEASE.jar:5.2.3.RELEASE]
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.3.RELEASE.jar:5.2.3.RELEASE]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.2.3.RELEASE.jar:5.2.3.RELEASE]
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.3.RELEASE.jar:5.2.3.RELEASE]
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:367) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1639) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]
        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.31.jar:9.0.31]
        at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]

Hope someone can help me to get this fixed.

Best regards
Gregor

CC: henning.heitkoetter

Palak
Product and Topic Expert
Product and Topic Expert
0 Kudos

gregorw Even I am facing the same issue while starting my java application. Can you plwase tell me what was the exact issue.

View Entire Topic
gregorw
Active Contributor

I fixed this issue by comparing with cloud-cap-walkthroughs - exercise1.

maxstreifeneder
Product and Topic Expert
Product and Topic Expert
0 Kudos

what was the exact difference?

Palak
Product and Topic Expert
Product and Topic Expert
0 Kudos

What was the issue? Even I am facing the same issue