2013-07-29 3 views
0

Я пытаюсь передать параметр jsp на сервлет. И мой код:JSP-вход приходит к сервлету

стороны сервера:

String kullanici = (String)request.getParameter("onaylayici"); 

JSP сторона:

<input type="text" name ="onaylayici"> 

Когда я запустить его на локальном хосте kullanici переменные приходит null. Любое решение?

РЕДАКТИРОВАТЬ:

<form name = "main" method = "POST"> 
<td class="summary"><b>İsteği Onaylanacak Kişi : 
<input type="text" name ="onaylayici"> <br> 
</form> 
+0

Пожалуйста, дайте нам больше контекста, как отправляется запрос, и где вы пытаетесь прочитать его. Еще один код будет полезен! – NINCOMPOOP

+0

На стороне примечание 'request.getParameter()' возвращает строку, вам не нужно явно ее использовать :) – rocketboy

+0

Можете ли вы показать свою форму? –

ответ

1

Я думаю, что вы имеете в виду, что вы хотите перейти от JSP в сервлет. Если это так, смотрите атрибут действия:

<form action='/MyServlet' ...> 
    ... 
</form> 

Если вы собираетесь из сервлета TO в JSP, то вы можете повторно использовать текущий атрибут запроса. Вы делаете это, установив значение непосредственно в . Нечто похожее на это:

request.setAttribute("onaylayici", request.getParameter("onaylayici")); 

в вашем сервлете. Затем в вашем jsp это:

<input name='onaylayici' type='text' value='${requestScope["onaylayici"]}'/> 
0

Есть только имя формы и метод, без действия, JSP не знает, куда направить свои аргументы, и сервер не может получить аргументы тоже. Например:

<form action="/servlet/Test" method="post"> 
    ... 

</form> 
+0

...
Diansonn

0

Если вы хотите установить значение параметра в Servlet и читать его в JSP, то вам необходимо сделать следующее:

В Servlet:

request.setAttribute("yourParamName", request.getParameter("yourParamValue"));

и в вашем JSP:

<input name='yourParamName' type='text' value="<%=request.getAttribute("yourParamName")%>" /> 
0

Мое решение:

<input name='onaylayici' type='text' value='${requestScope["onaylayici"]}'/>

Примечание: Благодаря FGO ...

0

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

Изменение на стороне сервера -

//Get the data from JSP 
String myDataInServer = (String)request.getParameter("onaylayici"); 
//Set the data to response by request.setAttributes 
request.setAttributes("onaylayici",myDataInServer); 

JSP (Client Side) -

String kullanici = (String)request.getParameter("onaylayici"); 

Теперь он будет работать. Надеюсь, это поможет вам.

0

Не знаю, почему, но это сработало для меня, когда я предоставил атрибут «имя» для ввода текста.

Мой Старый код который возвращается нуль в Servlet:

<input id="closure" type="text" size="25"><a 
         href="javascript:NewCal('closure','ddmmyyyy')"><img 
          src="drawables/cal.gif" width="16" height="16" border="0" 
          alt="Pick a date"></a> 

Просто положить имя = "закрытие" работал для меня. Теперь он отлично возвращает значение этого входного текста в сервлет.

<input id="closure" name="closure" type="text" size="25"><a 
         href="javascript:NewCal('closure','ddmmyyyy')"><img 
          src="drawables/cal.gif" width="16" height="16" border="0" 
          alt="Pick a date"></a> 

И я получаю значение этого входного текста в Servlet следующим образом:

String closure = request.getParameter("closure"); 
Смежные вопросы