Гость
Map
Форумы / Java [игнор отключен] [закрыт для гостей] / Не работает разбор JSON через @PathParam, хотя в InputStream отправленный запрос попадает / 3 сообщений из 3, страница 1 из 1
01.02.2021, 11:34
    #40040411
XEugene
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает разбор JSON через @PathParam, хотя в InputStream отправленный запрос попадает
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
@Path("employeesService")
public class EmployeesService {
    
    @POST
    @Path("/save")
    @Produces({MediaType.APPLICATION_JSON + "; charset=utf-8"})
    @Consumes({MediaType.APPLICATION_JSON + "; charset=utf-8"})
    public Response save(InputStream incomingData,
            @PathParam("secondName") String secondName,
            @PathParam("firstName") String firstName) {
        System.out.println(secondName);
        System.out.println(firstName);
        StringBuilder crunchifyBuilder = new StringBuilder();
        try {
            BufferedReader in = new BufferedReader(new InputStreamReader(incomingData));
            String line = null;
            while ((line = in.readLine()) != null) {
                crunchifyBuilder.append(line);
            }
        } catch (Exception e) {
            System.out.println("Error Parsing: - ");
        }
        System.out.println("Data Received: " + crunchifyBuilder.toString());
        return Response.ok().build();
    }
}



Из SoapUI отправляю на эндпоинт http://localhost:88/employeesService/save/ такой json:автор{"employeeNumber":"5555","secondName":"Иванов"}


Вывод:
авторnull
null
Data Received: {"employeeNumber":"5555","secondName":"Иванов"}

Запускаю сервер с помощью GrizzlyWebServer и Guice.
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
public class Server {
    
    public static class Config extends GuiceServletContextListener {
        @Override
        protected Injector getInjector() {
            return Guice.createInjector(new ServletModule(){
                @Override
                protected void configureServlets() {
                    bind(DirectoryOfEmployees.class);
                    serve("*").with(GuiceContainer.class);
                }
            });
        }
    }
    
    @SuppressWarnings("serial")
    public static class DummySevlet extends HttpServlet { }
    
    public static void main(String[] args) throws Exception {
        int port = 88;
        GrizzlyWebServer server = new GrizzlyWebServer(port);
        ServletAdapter adapter = new ServletAdapter(new DummySevlet());
        adapter.addServletListener(Config.class.getName());
        adapter.addFilter(new GuiceFilter(), "GuiceFilter", null);
        server.addGrizzlyAdapter(adapter, new String[]{ "/" });
        server.start();
    }
}
...
Рейтинг: 0 / 0
01.02.2021, 11:39
    #40040413
XEugene
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает разбор JSON через @PathParam, хотя в InputStream отправленный запрос попадает
Блин, @PathParam - это же вообще про другое... Это разбор параметров урла.
...
Рейтинг: 0 / 0
02.02.2021, 07:10
    #40040769
PetroNotC Sharp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не работает разбор JSON через @PathParam, хотя в InputStream отправленный запрос попадает
Zzz79
XEugene
Блин, @PathParam - это же вообще про другое... Это разбор параметров урла.

стажер учи матчать!
джун, не флейми тут как в бейсике курилке
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Не работает разбор JSON через @PathParam, хотя в InputStream отправленный запрос попадает / 3 сообщений из 3, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]