Параметры запроса Java Serverlet Null

1

Я работаю над простым Java-сервером. Кажется, что сервер не получает параметры. Это мой код doPost().

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        String a = request.getParameter("a");
        String b = request.getParameter("b");
        System.out.println("I started doing something " + a + " " + b);

    }

Это мой web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>AutoPresServerlet</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<servlet>
<description></description>
<display-name>Main</display-name>
<servlet-name>Main</servlet-name>
<servlet-class>com.altechwebdesign.java.autopres.Main</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Main</servlet-name>
<url-pattern>/Main</url-pattern>
</servlet-mapping>
</web-app>

Я использую Advanced Rest Client для Chrome для отправки запросов POST.

Теги:
jsp
server
http-post
webserver

3 ответа

0

Сервлет может получить параметр в вашем коде, если и только если ваше действие инициировано со следующими данными (независимо от того, Get или Post) a = test_for_a & b = test_for_b

вы можете добавить некоторый ввод/выбор/textarea с именем (которое будет именем параметра, которое вы используете в сервлете, а именно a и b).

Я бы сказал, что ajax будет другим решением, которое выходит за рамки нашей компетенции.

0

Ничто в доказательстве, которое вы показали, объясняет, почему параметры являются нулевыми.

Кажется, что сервер не получает параметры.

Я предполагаю, что это означает, что у вас есть доказательства того, что ваш метод doPost фактически вызван. Это указывает на то, что web.xml правильно направляет запрос на ваш код сервлета.

Это означает, что причина, по которой параметры не отображаются, заключается в том, что они не были предоставлены (правильно). Но это происходит в клиентском коде и/или запросе, который он отправляет, и вы не показали это нам.

(Возможно также, что у вас нет никаких доказательств, а ваше "если кажется..." - это просто предположение. Если это так, вам нужно узнать, что происходит, и/или показать нам доказательства что у вас на самом деле есть.)

Я также не понимаю, почему вы упомянули JSP здесь. Вы не показали нам никакого JSP-кода, и маловероятно, что он будет иметь прямое отношение к вашей проблеме.

0

вам нужна форма или страница jsp для переноса значений типа ввода html и запуска сервлета.
то только ваш сервлет может получить значение
я предложил бы написать код формы в index.jsp и вызвать действие /Main из form.
поток должен быть похож

index jsp-> submitform-> main servlet

Ещё вопросы

Сообщество Overcoder
Наверх
Меню