2015-10-23 3 views
0

Существует класс java beans UserData.Как исправить ошибку «Неопределенный тип: user.UserData»

package random; 

public class UserData { 

    String username; 
    String email; 
    int age; 
    public void setUsername(String value) 
    { 
    username = value; 
    } 
    public void setEmail(String value) 
    { 
    email = value; 
    } 
    public void setAge(int value) 
    { 
    age = value; 
    } 
    public String getUsername() { return username; } 
    public String getEmail() { return email; } 
    public int getAge() { return age; } 


} 

И есть файл jsp.

SaveName.jsp

<jsp:useBean id="user" class="random.UserData" scope="session"/> 
<jsp:setProperty name="user" property="*"/> 
    <HTML> 
     <BODY> 
      <A HREF="NextPage.jsp">Continue</A> 
     </BODY> 
    </HTML> 

Я получаю сообщение об ошибке говорящее Не определено Тип: user.UserData.

Любая идея, как исправить это? Это исправлено. Спасибо тем, кто помог. ПОМОЩЬ ИЗ ЗДЕСЬ. У меня есть еще одно сомнение. В дополнение к двум вышеуказанным файлам есть еще два.

NextPage.jsp

<jsp:useBean id="user" class="random.UserData" scope="session"/> 
<HTML> 
    <BODY> 
     You entered<BR> 
     Name: <%= user.getUsername() %><BR> 
     Email: <%= user.getEmail() %><BR> 
     Age: <%= user.getAge() %><BR> 
    </BODY> 
</HTML> 

form.html

<HTML> 
    <BODY> 
     <FORM METHOD=POST ACTION="SaveName.jsp"> 
      What's your name? <INPUT TYPE=TEXT NAME=username SIZE=20><BR> 
      What's your e-mail address? <INPUT TYPE=TEXT NAME=email SIZE=20><BR> 
      What's your age? <INPUT TYPE=TEXT NAME=age SIZE=4> 
      <P><INPUT TYPE=SUBMIT> 
     </FORM> 
    </BODY> 
</HTML> 

Но когда я запускаю это. Я не получаю никаких введенных значений. Вместо. Я получаю это:

Вы ввели Имя: нулевой Email: нулевой Возраст: 0

Любая идея, почему?

+0

Не должно быть 'random.UserData' вместо' user.UserData'? – kha

+0

Да, должно быть. Благодарю. Эта часть исправлена. – Valen

+0

Кто-то мне помогает ... – Valen

ответ

1

Пожалуйста, попробуйте

<jsp:useBean id="user" class="random.UserData" scope="session"/> 
+0

Да. Спасибо. – Valen

+0

Полезно ?. Решила ли ваша проблема –

0

Вы задали класс class="user.UserData" в вашем JSP, пока вы класс объявлен как random.UserData (пакет + имя класса) в Java.


EDIT (Вторая часть вашего вопроса)

В SaveName.jsp, вы на самом деле ничего не экономить .. Вы должны установить значения, как это:

<jsp:setProperty name="user" property="username" value="${param.username}" /> 

Также обратите внимание, что это должно быть сделано в сервлете, а не в JSP. JSP здесь, чтобы получать значения и отображать их, а не обрабатывать их.

+0

о, да. Спасибо вам за помощь. – Valen

+0

Итак, нет единственного способа сделать это, используя только jsp? – Valen

+0

Вы попробуете то, что я написал? 'Jsp: setProperty' должен работать, но это не правильный способ сделать это. –

Смежные вопросы