I installed the true connector on ubuntu20.04(Azure VM 8 GB 2 VCPUs) as given in steps.
After that I am able to run GetSelf description request and Artifiact POST Request from Postman successfully with the default configuaration.
Now I am trying to change the configuration in .env for the following:
- MULTIPART_ECC=mixed
- VALIDATE_SELF_DESCRIPTION=true
- CONSUMER_MULTIPART_EDGE=mixed
- PROVIDER_MULTIPART_EDGE=mixed
Rest is the default configuration.
I am not sure, if I am doing it right. If not, please provide some link where I can try the test around data sovereignty, e.g., using a clearing house and Identity provider, usage control. There is a lot of information and I am getting lost in it., following the information.
.env file dump is given below
COMPOSE_PROJECT_NAME=trueconnector
#DB AES PASSWORD
AES_SECRET_KEY=${AES_SECRET_KEY}
BROKER_URL=https://broker.ids.isst.fraunhofer.de/infrastructure
#TLS settings
KEYSTORE_NAME=ssl-server.jks
KEY_PASSWORD=changeit
KEYSTORE_PASSWORD=changeit
ALIAS=execution-core-container
#TRUSTORE (used also by IDSCP2)
TRUSTORE_NAME=truststoreEcc.jks
TRUSTORE_PASSWORD=allpassword
CACHE_TOKEN=false
FETCH_TOKEN_ON_STARTUP=false
REST Communication type between ECC - mixed | form | http-header
MULTIPART_ECC=mixed
Enable WSS between ECC
WS_ECC=false
Enable IDSCPv2 between ECC - set WS_ECC=false
IDSCP2=false
EXTRACT_PAYLOAD_FROM_RESPONSE=true
VALIDATE_SELF_DESCRIPTION=true
PROVIDER Configuration
PROVIDER_ECC_SELF_DESCRIPTION_URL=https://ecc-provider
PROVIDER_DAPS_KEYSTORE_NAME=
PROVIDER_DAPS_KEYSTORE_PASSWORD=
PROVIDER_DAPS_KEYSTORE_ALIAS=
PROVIDER_PORT=8090
mixed | form | http-header
PROVIDER_MULTIPART_EDGE=mixed
PROVIDER_DATA_APP_ENDPOINT=https://be-dataapp-provider:8083/data
In case of WSS configuration
#PROVIDER_DATA_APP_ENDPOINT=https://be-dataapp-provider:9000/incoming-data-app/routerBodyBinary
PROVIDER_WS_EDGE=false
PROVIDER_ISSUER_CONNECTOR_URI=http://w3id.org/engrd/connector/provider
PROVIDER_DATA_APP_FIREWALL=true
PROVIDER_ECC_FIREWALL=true
CONSUMER Configuration
CONSUMER_ECC_SELF_DESCRIPTION_URL=https://ecc-consumer
CONSUMER_DAPS_KEYSTORE_NAME=
CONSUMER_DAPS_KEYSTORE_PASSWORD=
CONSUMER_DAPS_KEYSTORE_ALIAS=
CONSUMER_PORT=8091
mixed | form | http-header
CONSUMER_MULTIPART_EDGE=mixed
CONSUMER_DATA_APP_ENDPOINT=https://be-dataapp-consumer:8083/data
CONSUMER_WS_EDGE=false
CONSUMER_ISSUER_CONNECTOR_URI=http://w3id.org/engrd/connector/consumer
CONSUMER_DATA_APP_FIREWALL=true
CONSUMER_ECC_FIREWALL=true
==================================
Error it throws on the console is given as follows:
cc-consumer | 16-04-2024 12:06:22.784 [qtp1787398266-59] INFO i.e.i.b.s.i.SendDataToBusinessLogicServiceImpl - Forwarding Message: Body: binary
ecc-provider | 16-04-2024 12:06:23.329 [qtp461920269-70] INFO i.e.i.b.p.c.ConnectorHealthCheckProcessor - Performing health check!
ecc-provider | 16-04-2024 12:06:23.338 [qtp461920269-70] INFO i.e.i.b.p.c.ConnectorHealthCheckProcessor - Connector health: true
ecc-provider | 16-04-2024 12:06:23.366 [qtp461920269-70] INFO i.e.i.m.p.MultipartMessageProcessor - Boundary from the multipart message is: --5345cf87-9977-4ae1-a13e-59a649c128c1
ecc-provider | 16-04-2024 12:06:23.444 [qtp461920269-70] ERROR o.a.c.p.FatalFallbackErrorHandler - Exception occurred while trying to handle previously thrown exception on exchangeId: 48BE74488A6D9C4-0000000000000000 using: [null]. The previous and the new exception will be logged in the following.
ecc-provider | 16-04-2024 12:06:23.454 [qtp461920269-70] ERROR o.a.c.p.FatalFallbackErrorHandler - --> Previous exception on exchangeId: 48BE74488A6D9C4-0000000000000000
ecc-provider | java.lang.NullPointerException: null
ecc-provider | at it.eng.idsa.multipart.processor.MultipartMessageProcessor.fillMultipartMessage(MultipartMessageProcessor.java:442)
ecc-provider | at it.eng.idsa.multipart.processor.MultipartMessageProcessor.lambda$createMultipartMessage$13(MultipartMessageProcessor.java:355)
ecc-provider | at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(Unknown Source)
ecc-provider | at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(Unknown Source)
ecc-provider | at java.base/java.util.stream.AbstractPipeline.copyInto(Unknown Source)
ecc-provider | at java.base/java.util.stream.ForEachOps$ForEachTask.compute(Unknown Source)
ecc-provider | at java.base/java.util.concurrent.CountedCompleter.exec(Unknown Source)
ecc-provider | at java.base/java.util.concurrent.ForkJoinTask.doExec(Unknown Source)
ecc-provider | at java.base/java.util.concurrent.ForkJoinTask.doInvoke(Unknown Source)
ecc-provider | at java.base/java.util.concurrent.ForkJoinTask.invoke(Unknown Source)
ecc-provider | at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateParallel(Unknown Source)
ecc-provider | at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateParallel(Unknown Source)
ecc-provider | at java.base/java.util.stream.AbstractPipeline.evaluate(Unknown Source)
ecc-provider | at java.base/java.util.stream.ReferencePipeline.forEach(Unknown Source)
ecc-provider | at java.base/java.util.stream.ReferencePipeline$Head.forEach(Unknown Source)
ecc-provider | at it.eng.idsa.multipart.processor.MultipartMessageProcessor.createMultipartMessage(MultipartMessageProcessor.java:350)
ecc-provider | at it.eng.idsa.multipart.processor.MultipartMessageProcessor.parseMultipartMessage(MultipartMessageProcessor.java:125)
ecc-provider | at it.eng.idsa.multipart.processor.MultipartMessageProcessor.parseMultipartMessage(MultipartMessageProcessor.java:81)
ecc-provider | at it.eng.idsa.businesslogic.processor.receiver.ReceiverParseReceivedConnectorRequestProcessor.process(ReceiverParseReceivedConnectorRequestProcessor.java:113)
ecc-provider | at it.eng.idsa.businesslogic.processor.receiver.ReceiverParseReceivedConnectorRequestProcessor$$FastClassBySpringCGLIB$$405b7a2c.invoke()
ecc-provider | at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
ecc-provider | at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:793)
ecc-provider | at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
ecc-provider | at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)
ecc-provider | at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:64)
ecc-provider | at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)
ecc-provider | at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)
ecc-provider | at org.springframework.aop.framework.adapter.AfterReturningAdviceInterceptor.invoke(AfterReturningAdviceInterceptor.java:57)
ecc-provider | at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)
ecc-provider | at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)
ecc-provider | at org.springframework.aop.framework.adapter.MethodBeforeAdviceInterceptor.invoke(MethodBeforeAdviceInterceptor.java:58)
ecc-provider | at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)
ecc-provider | at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)
ecc-provider | at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)
ecc-provider | at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
ecc-provider | at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)
ecc-provider | at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:708)
ecc-provider | at it.eng.idsa.businesslogic.processor.receiver.ReceiverParseReceivedConnectorRequestProcessor$$EnhancerBySpringCGLIB$$7aa74914.process()
ecc-provider | at org.apache.camel.support.processor.DelegateSyncProcessor.process(DelegateSyncProcessor.java:65)
ecc-provider | at org.apache.camel.processor.errorhandler.RedeliveryErrorHandler$RedeliveryTask.doRun(RedeliveryErrorHandler.java:818)
ecc-provider | at org.apache.camel.processor.errorhandler.RedeliveryErrorHandler$RedeliveryTask.run(RedeliveryErrorHandler.java:726)
ecc-provider | at org.apache.camel.impl.engine.DefaultReactiveExecutor$Worker.schedule(DefaultReactiveExecutor.java:181)
ecc-provider | at org.apache.camel.impl.engine.DefaultReactiveExecutor.scheduleMain(DefaultReactiveExecutor.java:59)
ecc-provider | at org.apache.camel.processor.Pipeline.process(Pipeline.java:175)
ecc-provider | at org.apache.camel.impl.engine.CamelInternalProcessor.process(CamelInternalProcessor.java:392)
ecc-provider | at org.apache.camel.component.jetty.CamelContinuationServlet.doService(CamelContinuationServlet.java:245)
ecc-provider | at org.apache.camel.http.common.CamelServlet.service(CamelServlet.java:130)
ecc-provider | at javax.servlet.http.HttpServlet.service(HttpServlet.java:623)
ecc-provider | at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:799)
ecc-provider | at org.eclipse.jetty.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1631)
ecc-provider | at org.apache.camel.component.jetty.MultiPartFilter.doFilter(MultiPartFilter.java:50)
ecc-provider | at org.apache.camel.component.jetty.CamelFilterWrapper.doFilter(CamelFilterWrapper.java:49)
ecc-provider | at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)
ecc-provider | at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)
ecc-provider | at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:548)
ecc-provider | at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
ecc-provider | at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1440)
ecc-provider | at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)
ecc-provider | at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501)
ecc-provider | at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)
ecc-provider | at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1355)
ecc-provider | at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
ecc-provider | at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
ecc-provider | at org.eclipse.jetty.server.Server.handle(Server.java:516)
ecc-provider | at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:487)
ecc-provider | at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:732)
ecc-provider | at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:479)
ecc-provider | at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:277)
ecc-provider | at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
ecc-provider | at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
ecc-provider | at org.eclipse.jetty.io.ssl.SslConnection$DecryptedEndPoint.onFillable(SslConnection.java:555)
ecc-provider | at org.eclipse.jetty.io.ssl.SslConnection.onFillable(SslConnection.java:410)
ecc-provider | at org.eclipse.jetty.io.ssl.SslConnection$2.succeeded(SslConnection.java:164)
ecc-provider | at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
ecc-provider | at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)
ecc-provider | at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:338)
ecc-provider | at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:315)
ecc-provider | at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:173)
ecc-provider | at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:131)
ecc-provider | at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:409)
ecc-provider | at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:883)
ecc-provider | at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1034)
ecc-provider | at java.base/java.lang.Thread.run(Unknown Source)
ecc-provider | 16-04-2024 12:06:23.466 [qtp461920269-70] ERROR o.a.c.p.FatalFallbackErrorHandler - --> New exception on exchangeId: 48BE74488A6D9C4-0000000000000000
ecc-provider | java.lang.NullPointerException: null
ecc-provider | at it.eng.idsa.multipart.processor.MultipartMessageProcessor.getMessageBoundaryFromMessage(MultipartMessageProcessor.java:462)
ecc-provider | at it.eng.idsa.multipart.processor.MultipartMessageProcessor.parseMultipartMessage(MultipartMessageProcessor.java:97)
ecc-provider | at it.eng.idsa.multipart.processor.MultipartMessageProcessor.parseMultipartMessage(MultipartMessageProcessor.java:81)
ecc-provider | at it.eng.idsa.businesslogic.processor.exception.ExceptionProcessorReceiver.process(ExceptionProcessorReceiver.java:31)
ecc-provider | at org.apache.camel.support.processor.DelegateSyncProcessor.process(DelegateSyncProcessor.java:65)
ecc-provider | at org.apache.camel.impl.engine.CamelInternalProcessor.process(CamelInternalProcessor.java:392)
ecc-provider | at org.apache.camel.processor.Pipeline$PipelineTask.run(Pipeline.java:104)
ecc-provider | at org.apache.camel.impl.engine.DefaultReactiveExecutor$Worker.schedule(DefaultReactiveExecutor.java:181)
ecc-provider | at org.apache.camel.impl.engine.DefaultReactiveExecutor.scheduleMain(DefaultReactiveExecutor.java:59)
ecc-provider | at org.apache.camel.processor.Pipeline.process(Pipeline.java:175)
ecc-provider | at org.apache.camel.impl.engine.CamelInternalProcessor.process(CamelInternalProcessor.java:392)
ecc-provider | at org.apache.camel.component.jetty.CamelContinuationServlet.doService(CamelContinuationServlet.java:245)
ecc-provider | at org.apache.camel.http.common.CamelServlet.service(CamelServlet.java:130)
ecc-provider | at javax.servlet.http.HttpServlet.service(HttpServlet.java:623)
ecc-provider | at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:799)
ecc-provider | at org.eclipse.jetty.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1631)
ecc-provider | at org.apache.camel.component.jetty.MultiPartFilter.doFilter(MultiPartFilter.java:50)
ecc-provider | at org.apache.camel.component.jetty.CamelFilterWrapper.doFilter(CamelFilterWrapper.java:49)
ecc-provider | at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)
ecc-provider | at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)
ecc-provider | at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:548)
ecc-provider | at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
ecc-provider | at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1440)
ecc-provider | at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)
ecc-provider | at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501)
ecc-provider | at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)
ecc-provider | at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1355)
ecc-provider | at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
ecc-provider | at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
ecc-provider | at org.eclipse.jetty.server.Server.handle(Server.java:516)
ecc-provider | at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:487)
ecc-provider | at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:732)
ecc-provider | at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:479)
ecc-provider | at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:277)
ecc-provider | at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
ecc-provider | at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
ecc-provider | at org.eclipse.jetty.io.ssl.SslConnection$DecryptedEndPoint.onFillable(SslConnection.java:555)
ecc-provider | at org.eclipse.jetty.io.ssl.SslConnection.onFillable(SslConnection.java:410)
ecc-provider | at org.eclipse.jetty.io.ssl.SslConnection$2.succeeded(SslConnection.java:164)
ecc-provider | at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
ecc-provider | at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)
ecc-provider | at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:338)
ecc-provider | at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:315)
ecc-provider | at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:173)
ecc-provider | at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:131)
ecc-provider | at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:409)
ecc-provider | at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:883)
ecc-provider | at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1034)
ecc-provider | at java.base/java.lang.Thread.run(Unknown Source)
ecc-consumer | 16-04-2024 12:06:23.568 [qtp1787398266-59] INFO i.e.i.b.s.i.SendDataToBusinessLogicServiceImpl - status code of the response message is: 500
ecc-consumer | 16-04-2024 12:06:23.569 [qtp1787398266-59] INFO i.e.i.b.s.i.SendDataToBusinessLogicServiceImpl - ...communication error - bad forwardTo URL https://ecc-provider:8889/data
ecc-consumer | 16-04-2024 12:06:23.596 [qtp1787398266-59] INFO i.e.i.b.s.i.RejectionMessageServiceImpl - Creating rejection message of reason https://w3id.org/idsa/code/BAD_PARAMETERS
ecc-consumer | 16-04-2024 12:06:24.093 [qtp1787398266-59] INFO i.e.i.m.p.MultipartMessageProcessor - Boundary from the multipart message is: --flIDHQOgeRgk2ETjhnxeKvIip9w3HLKaFqU
be-dataapp-consumer | 16-04-2024 12:06:24.406 [https-jsse-nio-8183-exec-2] INFO i.e.i.m.p.MultipartMessageProcessor - Boundary from the multipart message is: --T9XuEZtgv7jfVy565fDtl_60mxrg8OuzAPCo-z
be-dataapp-consumer | 16-04-2024 12:06:26.187 [https-jsse-nio-8183-exec-2] INFO i.e.i.dataapp.service.ProxyService - Response receiv