public void generateResponse(HttpServletResponse response, ArtifactResolveRequest artifactResolveRequest) throws SamlParseException {
        try {
            final var context = new MessageContext();
            final var signType = determineSignType(artifactResolveRequest.getSamlSession());
            String entityId = determineEntityId(signType);

            context.setMessage(buildArtifactResponse(artifactResolveRequest, entityId, signType));

            SAMLBindingSupport.setRelayState(context, artifactResolveRequest.getSamlSession().getRelayState());

            final var encoder = new HTTPSOAP11Encoder();
            encoder.setMessageContext(context);
            encoder.setHttpServletResponse(response);

            encoder.prepareContext();
            encoder.initialize();
            encoder.encode();

        } catch (MessageEncodingException e) {
            throw new SamlParseException("ArtifactResolveRequest soap11 decode exception", e);
        } catch (ComponentInitializationException e) {
            throw new SamlParseException("ArtifactResolveRequest initialization exception", e);
        } catch (ValidationException e) {
            throw new SamlParseException("Failed to sign request", e);
        } catch (InstantiationException | ArtifactBuildException e) {
            throw new SamlParseException("Failed to build artifact response", e);
        } catch (BvdException e) {
            throw new SamlParseException("Failed to connect to BVD", e);
        }
    }
@Test
    void generateResponseCombiConnect() throws SamlParseException, MetadataException {
        MockHttpServletResponse response = new MockHttpServletResponse();
        artifactResponseService.generateResponse(response, getArtifactResolveRequest("success", true,false,  SAML_COMBICONNECT, EncryptionType.BSN, ENTRANCE_ENTITY_ID));

        verify(bvdMetadataServiceMock, times(0)).generateMetadata();
    }