Nano Hash - криптовалюты, майнинг, программирование

Джерси: ошибка выдачи ContainerRequestFilter

Я использую dropwizard с трикотажем, я определил собственный поставщик ContainerRequestFilter следующим методом.

import javax.ws.rs.ext.Provider;

import java.io.IOException;
import java.util.List;

import javax.ws.rs.container.ContainerRequestContext;
import javax.ws.rs.container.ContainerRequestFilter;
import javax.ws.rs.core.MultivaluedMap;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

@Provider
public class CustomRequestFilter implements ContainerRequestFilter{

  private final static Logger logger = LoggerFactory.getLogger(CustomRequestFilter.class);

  @Override
  public void filter(ContainerRequestContext requestContext) throws IOException {


    MultivaluedMap<String,String> myHeaders = requestContext.getHeaders();
    List<String> appId = myHeaders.get("myHeader");
    logger.info(myHeader.get(0));
    logger.info("Hello Word, it is customRequestFilter");


  }

}

но система выдает ошибку

ERROR [2014-05-26 10:04:46,556] com.sun.jersey.server.impl.container.filter.FilterFactory: The filter, of type myPackage.CustomRequestFilter, MUST be of the type String, String[], Class<? extends 
com.sun.jersey.spi.container.ContainerRequestFilter>, or an instance of 
com.sun.jersey.spi.container.ContainerRequestFilter. The filter is ignored.
26.05.2014

Ответы:


1

Я думаю, что это просто вопрос использования правильного импорта. Попробуй это:

import java.util.List;

import javax.ws.rs.core.MultivaluedMap;
import javax.ws.rs.ext.Provider;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.sun.jersey.spi.container.ContainerRequest;
import com.sun.jersey.spi.container.ContainerRequestFilter;

@Provider
public class CustomRequestFilter implements ContainerRequestFilter {

  private final static Logger logger = LoggerFactory.getLogger(CustomRequestFilter.class);

  public ContainerRequest filter(ContainerRequest requestContext) {
    MultivaluedMap<String,String> myHeaders = requestContext.getRequestHeaders();
    List<String> appId = myHeaders.get("myHeader");
    logger.info(appId.get(0));
    logger.info("Hello Word, it is customRequestFilter");
    return requestContext;
  }

}
26.05.2014
  • не следует избегать занятий sun.* для развития цели. И я считаю, что здесь доступен пакет jersey.java.net/apidocs/2.0/jersey/javax/ws/rs/container/ 09.06.2014
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..