Я хотел бы иметь следующий код:Джерси - Multiple «без запроса, связанные с» параметры в методе POST подписи
@POST
@Path("path")
@Consumes(MediaType.TEXT_PLAIN)
@Produces(MediaType.TEXT_PLAIN)
public String doSomething(String body, CustomObject o) {
return o.getText();
}
Проще говоря, метод POST, который принимает строку запроса тело (отображается на первый аргумент) и отвечает строковым ответом на основе параметра CustomObject в параметрах. Значение настраиваемого объекта предоставляется через ValueFactoryProvider
- в основном значение заполняется фильтром.
Однако, я не могу назвать ресурс - я получаю:
java.lang.IllegalStateException: The resource configuration
is not modifiable in this context.
Можете ли вы мне точку в правильном направлении? Спасибо.
Примечание: Этот тип кода в настоящее время используется в нашей реализации Spring (Spring smartly maps all), в настоящее время мы работаем над версией Java EE, и мы хотели бы иметь аналогичный API.
Итак, вы пытаетесь извлечь это значение, которое заполнено внутри фильтра, в вашем ValueFactoryProvider? –
... да, и вы повсюду! :) Позвольте мне быстро сказать вам, над чем я работаю. Я работаю над PowerAuth 2.0 - безопасностью банковского класса с открытым исходным кодом для мобильного банкинга. Чтобы упростить интеграцию, я предоставляю библиотеки интеграции. У нас уже есть один для Spring, теперь я строю один для простой Java EE. Цель состоит в том, чтобы иметь библиотеку, которая позволяет разработчику просто комментировать существующие ресурсы REST и добавлять настраиваемый параметр с предварительно заполненными данными аутентификации ... –
Если вы хотите сделать его переносным, то вы не хотите использовать ValueFactoryProvider. Это особый Джерси. Теперь, когда я думаю об этом, я не думаю, что существует стандартный способ JAX-RS для обработки этого варианта использования. С Джерсиком я точно знаю, как вы справитесь с этим, но я не уверен, хотите ли вы решения, характерные для Джерси. Что делать, если кто-то хочет использовать Wildfly, который использует RESTEasy в качестве реализации JAX-RS. –