diff options
| author | Thomas <> | 2021-07-07 09:31:43 +0200 | 
|---|---|---|
| committer | Thomas <> | 2021-07-07 09:31:43 +0200 | 
| commit | cbf1d0408519d0763a1a87b733c16a1ba5d022ba (patch) | |
| tree | 6a714ea861f3d6687e4105a075124cc98eab8074 /connector/src/main/java | |
| parent | 249e3805da249afafe164ae7dc43884ba3777727 (diff) | |
| download | National_eIDAS_Gateway-cbf1d0408519d0763a1a87b733c16a1ba5d022ba.tar.gz National_eIDAS_Gateway-cbf1d0408519d0763a1a87b733c16a1ba5d022ba.tar.bz2 National_eIDAS_Gateway-cbf1d0408519d0763a1a87b733c16a1ba5d022ba.zip | |
add HTML template for additional eID information
Diffstat (limited to 'connector/src/main/java')
2 files changed, 2 insertions, 208 deletions
| diff --git a/connector/src/main/java/at/asitplus/eidas/specific/connector/config/StaticResourceConfiguration.java b/connector/src/main/java/at/asitplus/eidas/specific/connector/config/StaticResourceConfiguration.java deleted file mode 100644 index a1e953f1..00000000 --- a/connector/src/main/java/at/asitplus/eidas/specific/connector/config/StaticResourceConfiguration.java +++ /dev/null @@ -1,207 +0,0 @@ -/* - * Copyright 2019 A-SIT Plus GmbH - * AT-specific eIDAS Connector has been developed in a cooperation between EGIZ, - * A-SIT Plus GmbH, A-SIT, and Graz University of Technology. - * - * Licensed under the EUPL, Version 1.2 or - as soon they will be approved by - * the European Commission - subsequent versions of the EUPL (the "License"); - * You may not use this work except in compliance with the License. - * You may obtain a copy of the License at: - * https://joinup.ec.europa.eu/news/understanding-eupl-v12 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * This product combines work with different licenses. See the "NOTICE" text - * file for details on the various modules and licenses. - * The "NOTICE" text file is part of the distribution. Any derivative works - * that you distribute must include a readable copy of the "NOTICE" text file. - */ - -package at.asitplus.eidas.specific.connector.config; - -import java.net.MalformedURLException; -import java.util.List; - -import org.apache.commons.lang3.StringUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.context.support.ReloadableResourceBundleMessageSource; -import org.springframework.web.servlet.config.annotation.EnableWebMvc; -import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; -import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; -import org.thymeleaf.templateresolver.FileTemplateResolver; - -import at.asitplus.eidas.specific.connector.MsEidasNodeConstants; -import at.gv.egiz.eaaf.core.api.idp.IConfiguration; -import at.gv.egiz.eaaf.core.api.logging.IMessageSourceLocation; -import at.gv.egiz.eaaf.core.impl.utils.FileUtils; - -/** - * Spring configurator for Web resources. - *  - * @author tlenz - * - */ -@Configuration -@EnableWebMvc -public class StaticResourceConfiguration implements WebMvcConfigurer { -  private static final Logger log = LoggerFactory.getLogger(StaticResourceConfiguration.class); -  private static final String[] CLASSPATH_RESOURCE_LOCATIONS = { -      "/" -  }; - -  private static final String DEFAULT_MESSAGE_SOURCE = "classpath:properties/status_messages"; - -  @Autowired -  private IConfiguration basicConfig; - -  @Override -  public void addResourceHandlers(ResourceHandlerRegistry registry) { -    final String staticResources = basicConfig.getBasicConfiguration( -        MsEidasNodeConstants.PROP_CONFIG_WEBCONTENT_STATIC_PATH); -    try { -      if (StringUtils.isNotEmpty(staticResources)) { -        String absPath = FileUtils.makeAbsoluteUrl(staticResources, basicConfig -            .getConfigurationRootDirectory()); -        if (!absPath.endsWith("/")) { -          absPath += "/"; -        } - -        registry.addResourceHandler("/static/**").addResourceLocations(absPath); -        log.info("Add Ressourcefolder: " + absPath + " for static Web content"); - -      } else { -        log.debug("No Ressourcefolder for static Web content"); -      } - -    } catch (final MalformedURLException e) { -      log.warn("Can NOT initialize ressourcefolder for static Web content", e); - -    } - -    registry.addResourceHandler("/**").addResourceLocations(CLASSPATH_RESOURCE_LOCATIONS); - -  } - -  /** -   * Get a message source with only internal message properties. -   * -   * @param ressourceLocations List of source-locations -   * @return -   */ -  @Bean -  public ReloadableResourceBundleMessageSource internalMessageSource( -      @Autowired(required = false) final List<IMessageSourceLocation> ressourceLocations) { -    final ReloadableResourceBundleMessageSource messageSource = -        new ReloadableResourceBundleMessageSource(); - -    // add default message source -    messageSource.setBasename(DEFAULT_MESSAGE_SOURCE); - -    if (ressourceLocations != null) { -      // load more message sources -      for (final IMessageSourceLocation el : ressourceLocations) { -        if (el.getMessageSourceLocation() != null) { -          for (final String source : el.getMessageSourceLocation()) { -            messageSource.addBasenames(source); -            log.debug("Add additional messageSources: {}", el.getMessageSourceLocation().toArray()); - -          } -        } -      } -    } - -    messageSource.setDefaultEncoding("UTF-8"); -    return messageSource; - -  } - -  /** -   * Get full message source with internal and external message-properties files. -   * -   * @param ressourceLocations List of source-locations -   * @return -   */ -  @Bean -  public ReloadableResourceBundleMessageSource messageSource( -      @Autowired(required = false) final List<IMessageSourceLocation> ressourceLocations) { -    final ReloadableResourceBundleMessageSource messageSource = -        new ReloadableResourceBundleMessageSource(); -    messageSource.setDefaultEncoding("UTF-8"); -    messageSource.setParentMessageSource(internalMessageSource(ressourceLocations)); - -    final String staticResources = basicConfig -        .getBasicConfiguration(MsEidasNodeConstants.PROP_CONFIG_WEBCONTENT_PROPERTIES_PATH); -    try { -      if (StringUtils.isNotEmpty(staticResources)) { -        final String absPath = -            FileUtils.makeAbsoluteUrl(staticResources, basicConfig.getConfigurationRootDirectory()); -        messageSource.setBasename(absPath); - -      } else { -        log.debug("No Ressourcefolder for dynamic Web content templates"); - -      } - -    } catch (final MalformedURLException e) { -      log.warn("Can NOT initialize ressourcefolder for dynamic Web content templates", e); - -    } - -    return messageSource; - -  } -     -  /** -   * Get a Tyhmeleaf Template-Resolver with external configuration path. -   * -   * @return -   */ -  @Bean(name = "templateResolver") -  public FileTemplateResolver templateResolver() { -    final String staticResources = basicConfig -        .getBasicConfiguration(MsEidasNodeConstants.PROP_CONFIG_WEBCONTENT_TEMPLATES_PATH); -    try { -      if (StringUtils.isNotEmpty(staticResources)) { -        String absPath = -            FileUtils.makeAbsoluteUrl(staticResources, basicConfig.getConfigurationRootDirectory()); -        if (!absPath.endsWith("/")) { -          absPath += "/"; - -        } - -        if (absPath.startsWith("file:")) { -          absPath = absPath.substring("file:".length()); - -        } - -        final FileTemplateResolver viewResolver = new FileTemplateResolver(); -        viewResolver.setPrefix(absPath); -        viewResolver.setSuffix(".html"); -        viewResolver.setTemplateMode("HTML"); -        viewResolver.setCacheable(false); - -        log.info("Add Ressourcefolder: {} for dynamic Web content templates", absPath); -        return viewResolver; - -      } else { -        log.debug("No Ressourcefolder for dynamic Web content templates"); - -      } - -    } catch (final MalformedURLException e) { -      log.warn("Can NOT initialize ressourcefolder for dynamic Web content templates", e); - -    } - -    throw new RuntimeException("Can NOT initialize HTML template resolver"); - -  } -} diff --git a/connector/src/main/java/at/asitplus/eidas/specific/connector/controller/ProcessEngineSignalController.java b/connector/src/main/java/at/asitplus/eidas/specific/connector/controller/ProcessEngineSignalController.java index 1bf1ad67..6e2879a8 100644 --- a/connector/src/main/java/at/asitplus/eidas/specific/connector/controller/ProcessEngineSignalController.java +++ b/connector/src/main/java/at/asitplus/eidas/specific/connector/controller/ProcessEngineSignalController.java @@ -46,7 +46,8 @@ import at.gv.egiz.eaaf.core.impl.idp.controller.AbstractProcessEngineSignalContr  public class ProcessEngineSignalController extends AbstractProcessEngineSignalController {    @RequestMapping(value = {  -      MsEidasNodeConstants.ENDPOINT_COUNTRYSELECTION +          MsEidasNodeConstants.ENDPOINT_COUNTRYSELECTION, +          MsEidasNodeConstants.ENDPOINT_OTHER_LOGIN_METHOD_SELECTION        },        method = { RequestMethod.POST, RequestMethod.GET })    public void performGenericAuthenticationProcess(HttpServletRequest req, HttpServletResponse resp) | 
