Java beans s Tomcat
28 отговора
1055 прегледа
Java beans s Tomcat
Molia pomognete. Imam problem s izpolzvaneto na edin bean
Imam slednata stranica:
<HTML>
<BODY>
<FORM METHOD=POST ACTION="SaveName1.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>
Eto i SaveName1.jsp i UserData.java:
<jsp:useBean id="user" class="UserData" scope="session" />
<jsp:setProperty name="user" property="*" />
<HTML>
<BODY>
<A HREF="NextPage1.jsp">Continue</A>
</BODY>
</HTML>
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; }
}
Polu4avam slednite greshki:
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: Unable to compile class for JSP
An error occurred at line: 1 in the jsp file: /SaveName1.jsp
Generated servlet error:
C:\Program Files\Apache Software Foundation\Tomcat 5.0\work\Catalina\localhost\Tests\org\apache\jsp\SaveName1_jsp.java:42: cannot resolve symbol
symbol : class UserData
location: class org.apache.jsp.SaveName1_jsp
UserData user = null;
^
An error occurred at line: 1 in the jsp file: /SaveName1.jsp
Generated servlet error:
C:\Program Files\Apache Software Foundation\Tomcat 5.0\work\Catalina\localhost\Tests\org\apache\jsp\SaveName1_jsp.java:44: cannot resolve symbol
symbol : class UserData
location: class org.apache.jsp.SaveName1_jsp
user = (UserData) _jspx_page_context.getAttribute("user", PageContext.SESSION_SCOPE);
^
An error occurred at line: 1 in the jsp file: /SaveName1.jsp
Generated servlet error:
C:\Program Files\Apache Software Foundation\Tomcat 5.0\work\Catalina\localhost\Tests\org\apache\jsp\SaveName1_jsp.java:46: cannot resolve symbol
symbol : class UserData
location: class org.apache.jsp.SaveName1_jsp
user = new UserData();
^
3 errors
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:332)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:412)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:472)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note The full stack trace of the root cause is available in the Apache Tomcat/5.0.28 logs.
Triabva li neshto da se pipa v web.xml?
Mersi.
Imam slednata stranica:
<HTML>
<BODY>
<FORM METHOD=POST ACTION="SaveName1.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>
Eto i SaveName1.jsp i UserData.java:
<jsp:useBean id="user" class="UserData" scope="session" />
<jsp:setProperty name="user" property="*" />
<HTML>
<BODY>
<A HREF="NextPage1.jsp">Continue</A>
</BODY>
</HTML>
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; }
}
Polu4avam slednite greshki:
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: Unable to compile class for JSP
An error occurred at line: 1 in the jsp file: /SaveName1.jsp
Generated servlet error:
C:\Program Files\Apache Software Foundation\Tomcat 5.0\work\Catalina\localhost\Tests\org\apache\jsp\SaveName1_jsp.java:42: cannot resolve symbol
symbol : class UserData
location: class org.apache.jsp.SaveName1_jsp
UserData user = null;
^
An error occurred at line: 1 in the jsp file: /SaveName1.jsp
Generated servlet error:
C:\Program Files\Apache Software Foundation\Tomcat 5.0\work\Catalina\localhost\Tests\org\apache\jsp\SaveName1_jsp.java:44: cannot resolve symbol
symbol : class UserData
location: class org.apache.jsp.SaveName1_jsp
user = (UserData) _jspx_page_context.getAttribute("user", PageContext.SESSION_SCOPE);
^
An error occurred at line: 1 in the jsp file: /SaveName1.jsp
Generated servlet error:
C:\Program Files\Apache Software Foundation\Tomcat 5.0\work\Catalina\localhost\Tests\org\apache\jsp\SaveName1_jsp.java:46: cannot resolve symbol
symbol : class UserData
location: class org.apache.jsp.SaveName1_jsp
user = new UserData();
^
3 errors
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:332)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:412)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:472)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note The full stack trace of the root cause is available in the Apache Tomcat/5.0.28 logs.
Triabva li neshto da se pipa v web.xml?
Mersi.
Re: Java beans s Tomcat
Аз доколкото виждам, слагаш информацията от формата във requesta, не в сесия. Не ми е ясно защо после го търсиш в сесия.
Междодругото слагай си "" в хтмл таговете.
The human knowledge belongs to the world.
Междодругото слагай си "" в хтмл таговете.
The human knowledge belongs to the world.
Re: Java beans s Tomcat
Az sym nov v tia neshta, no dokolkoto razbiram
<jsp:useBean id="user" class="UserData" scope="session" />
<jsp:setProperty name="user" property="*" />
syzdava bean i go darji v sesiata, t.e. parvia red ukazva, 4e bean-a shte jivee dokato e jiva sesiata i vtoria red ukazva dannite da se vzemat ot request-a i da se haknat v bean-a.
Gresha li niakyde?
<jsp:useBean id="user" class="UserData" scope="session" />
<jsp:setProperty name="user" property="*" />
syzdava bean i go darji v sesiata, t.e. parvia red ukazva, 4e bean-a shte jivee dokato e jiva sesiata i vtoria red ukazva dannite da se vzemat ot request-a i da se haknat v bean-a.
Gresha li niakyde?
Re: Java beans s Tomcat
Колега всичко е наред. И така трябва да бъде !!!
Но имам едно условие за да ти работят всички Beans :
като правиш класа го сложи в някакъв "package" . Не може да бъде без "package".
тоест в класа правиш :
package test;
public class UserData {
..............
и после го извикваш така :
<jsp:useBean id="user" class="test.UserData" scope="session" />
всичко друго е на 6666666666
Ако не беше последната секунда... никога нямаше да свършваме нищо
Но имам едно условие за да ти работят всички Beans :
като правиш класа го сложи в някакъв "package" . Не може да бъде без "package".
тоест в класа правиш :
package test;
public class UserData {
..............
и после го извикваш така :
<jsp:useBean id="user" class="test.UserData" scope="session" />
всичко друго е на 6666666666
Ако не беше последната секунда... никога нямаше да свършваме нищо
Re: Java beans s Tomcat
и разбери хубаво "Bean" , че аз нещо не ги схващам много та като ми дотрябва нещо да питам теб 
Ако не беше последната секунда... никога нямаше да свършваме нищо
Ако не беше последната секунда... никога нямаше да свършваме нищо
ами
Ми като гледам в нета имат доста приложения , не само да събират инфото от форми.
Примерно какво значи да правиш connection към MySQL с Bean.
Искам да им знам предимствата и какво могат да правят тези Bean.
Много ще съм ти благодарен ако кажеш 2-3 изречения
Ако не беше последната секунда... никога нямаше да свършваме нищо
Примерно какво значи да правиш connection към MySQL с Bean.
Искам да им знам предимствата и какво могат да правят тези Bean.
Много ще съм ти благодарен ако кажеш 2-3 изречения
Ако не беше последната секунда... никога нямаше да свършваме нищо
Re: ами
Най-общо казано javabeans са класове, в които има getters i setters. Оттам нататък какво може да се прави с тях. Ами много неща както с Жабата могат да се правят много неща. Един особен тип бийнове са т.нар EJB или Enterprice Java Beans. Те обаче спадат към J2EE мен лично много ме кефят. Ако за тях питаш, наистина имат доста предимства (е, имат и недостатъци, но те с течение на времето ще се оправят ;). С две изречения, това са бизнес обекти, които изграждат логиката на J2EE приложението. Те са няколко вида, Session(Stateful i Stateless) Entity (Bean managed i Container managed) i Message-Driven Beans. Предимството им е че поддържат транзакции, секюрити, уеб сървиси (някои от тях). а A Entity обектите са персистентни (демек помнят състоянието си). т.е. в случая не работиш с база данни, а по-скоро с обекти запазващи състоянието си. По този начин ти можеш да избегнеш всякакви заявки към базата чрез използването на EJB-QL, и така да не те интересува с каква база ще работи приложението ти и да си независим от нея).
Доста хора използват други методи за персистентни обекти, (Nibernate, JDO etc.) но EJB са заложени в J2EE стандарта и ако се впечатляваш от това, ти препоръчвам да използваш тях. Малко са сложни за работа, защото не се работи директно с тях а чрез интерфейси, но това ще бъде оправено в EJB 3.0
Това беше съвсем накратко. Обаче когато аз написх какво има да им се разбира нямах предвид тях. Те са просто да го наречен някакъв тип java beans ама такива може да има най-различни. Демек JavaBeans с прости и обши правила. а EJB е нещо по-специализирано, което тръгва от тях.
Едно е да научиш езика Java, а съвсем друго, всички Java-базирани технологии.
Доста хора използват други методи за персистентни обекти, (Nibernate, JDO etc.) но EJB са заложени в J2EE стандарта и ако се впечатляваш от това, ти препоръчвам да използваш тях. Малко са сложни за работа, защото не се работи директно с тях а чрез интерфейси, но това ще бъде оправено в EJB 3.0
Това беше съвсем накратко. Обаче когато аз написх какво има да им се разбира нямах предвид тях. Те са просто да го наречен някакъв тип java beans ама такива може да има най-различни. Демек JavaBeans с прости и обши правила. а EJB е нещо по-специализирано, което тръгва от тях.
Едно е да научиш езика Java, а съвсем друго, всички Java-базирани технологии.
Re: Java beans s Tomcat
Oshte edin mayk problem. Kogato promenia bean class-a triabva da restartiram Tomcat , ina4e ne se seshta, 4e klasa e promenen. Sys vseki web server li e taka? Ina4e ako pipna jsp-to si go kompilirva nanovo, no 4e clasa e promenen ne se seshta. Pak e po-dobre otkolkoto Servlets, zashtoto tam pyk ne se seshta, 4e servlet-a e promenen. Ima li web server deto gi pravi tezi proverki za obnoven clas, servlet, etc.
Pozdravi
Pozdravi
Re: Java beans s Tomcat
ako pravish deployment v direktoriyata webapps na Tomcat, po princip avtomatichno se detektirat promenite i se prezarejdat klasovete. No inache ima i nyakakvi nastroiki prez kolko vreme da se proveryava za razlilki.
A inache shto programirash na jsp s model 1. Po dobre MVC model 2 :-) Naprimer Struts kato nachalo
A inache shto programirash na jsp s model 1. Po dobre MVC model 2 :-) Naprimer Struts kato nachalo
Re: Java beans s Tomcat
Може ли да опишеш с 2-3 изречения какво е модел 1 и какво е модел 2 /MVC/
И какво трябва да правиш че да използваш Struts, демек приложенията на тези неща
Ако не беше последната секунда... никога нямаше да свършваме нищо
И какво трябва да правиш че да използваш Struts, демек приложенията на тези неща
Ако не беше последната секунда... никога нямаше да свършваме нищо
Re: ами сега
Е добре де нещо се обрка пак. Я виж това
[линк]
тук нито има setters i getters методи пък и не е EJB
е тогава какъв Beans.
Е това ме обърква че на много неще все Bean му се вика
Ако не беше последната секунда... никога нямаше да свършваме нищо
[линк]
тук нито има setters i getters методи пък и не е EJB
е тогава какъв Beans.
Е това ме обърква че на много неще все Bean му се вика
Ако не беше последната секунда... никога нямаше да свършваме нищо
Re: ами сега
ejb = enterprise java beans
jb = java bean
Единственото което има java bean'a е private променливи,гет/сет методи както и конструктор, който трябва да е без параметри.
Невъзможно е да няма гет и сет методи.
The human knowledge belongs to the world.
jb = java bean
Единственото което има java bean'a е private променливи,гет/сет методи както и конструктор, който трябва да е без параметри.
Невъзможно е да няма гет и сет методи.
The human knowledge belongs to the world.
Re: ами сега
е добре.
1. Тогава какво значи да правиш връзка със MySQL посредством Java Bean. Аз не виждам тия set i get методи как ще е направат тая връзка.
2. А и ако използваш Java bean'a за <form> то методите се извикват скрито от нас /автоматично/. Ами иначе ние можем ли да си извикваме методите когато на нас си ни е кеф.
щото аС си правя връзка с ДБ както си го правя и от Eclipse /това лошо ли е/
Ако не беше последната секунда... никога нямаше да свършваме нищо
1. Тогава какво значи да правиш връзка със MySQL посредством Java Bean. Аз не виждам тия set i get методи как ще е направат тая връзка.
2. А и ако използваш Java bean'a за <form> то методите се извикват скрито от нас /автоматично/. Ами иначе ние можем ли да си извикваме методите когато на нас си ни е кеф.
щото аС си правя връзка с ДБ както си го правя и от Eclipse /това лошо ли е/
Ако не беше последната секунда... никога нямаше да свършваме нищо
Re: ами сега
Ами като не разбираш, в крайна сметка седни и прочети някой книжка и разбери. Просто ви споменаха по - горе че освен java beans има ejb'та. Само че те се пускат на отделен контейнер и тем подобни работи. Java Bean'a се използва обикновенно като DTO ( data transfer object ), или да предаваш информация между формите.
The human knowledge belongs to the world.
The human knowledge belongs to the world.
Re: Java beans s Tomcat
Да ти дам един съвет. Виждам че имаш желание да се занимаваш с това. Нещата, за които питаш обаче са доста сложни и трудно могат да се обяснят с 2 изречения, Затова е хубаво питаш по-често google. Пка ще се опитам да бъда кратък. MVC значи Model-View-Controller.
Модел. Това ти е бизнес логоката. Представи си го като някакъв слуга, когото можеш да питаш или да караш да ти свърши някаква работа ;).
View това е presentation логиката. Или всичко, което потребителя вижда, като екрани. a controller или Front controller това е най често сървлет, който обработва request-тите на потребителя, прави обръщение към модела (евентуално) и насочва към view-то.
По този начин как изглежда един сайт. всяко урл ти я някакво view. задачата ми е само да типокаже страницата. без да върши някаква работа. от тази страница ти можеш да попълниш форма, да кликнеш линк или нещо друго.
Имащ два вариантаЛ или отиваш директно на друга страница(view), или минаваш през контролера, и той решава какво да ти прави с requesta или той те прехвурля директно на друа станица, или се обръша към модела за да свърши някаква работа. След което те изпраща на следващата страница.
Озвен това и view-то за да покаже каквото трябва също може да се обърне към модела.
Модел. Това ти е бизнес логоката. Представи си го като някакъв слуга, когото можеш да питаш или да караш да ти свърши някаква работа ;).
View това е presentation логиката. Или всичко, което потребителя вижда, като екрани. a controller или Front controller това е най често сървлет, който обработва request-тите на потребителя, прави обръщение към модела (евентуално) и насочва към view-то.
По този начин как изглежда един сайт. всяко урл ти я някакво view. задачата ми е само да типокаже страницата. без да върши някаква работа. от тази страница ти можеш да попълниш форма, да кликнеш линк или нещо друго.
Имащ два вариантаЛ или отиваш директно на друга страница(view), или минаваш през контролера, и той решава какво да ти прави с requesta или той те прехвурля директно на друа станица, или се обръша към модела за да свърши някаква работа. След което те изпраща на следващата страница.
Озвен това и view-то за да покаже каквото трябва също може да се обърне към модела.
Re: ами сега
1. Тук най-вероятно говориш за BMP(Bean Managed Persistence). В този случай връзката я правиш ти. Ти пишеш заявката. а гетърите и сетърите ти служат съответно за полуаване и промяна на поле от таблицата (най-общо казано)
При CMP (Container Managed P..) за тези неща се грижи контейнера и ти не пишеш SQL заявки. Ако ме питаш как го прави контейнера, нека да речем че някой пич някога преди това му е казал как да се връзва към MySQL. Всички тези неща обаче виреят само в EJB container И за целта ще ти трябва нещо повече от Tomcat.
2. java bean за форм е просто едно улеснение. аз лично не го ползвам директно.
При CMP (Container Managed P..) за тези неща се грижи контейнера и ти не пишеш SQL заявки. Ако ме питаш как го прави контейнера, нека да речем че някой пич някога преди това му е казал как да се връзва към MySQL. Всички тези неща обаче виреят само в EJB container И за целта ще ти трябва нещо повече от Tomcat.
2. java bean за форм е просто едно улеснение. аз лично не го ползвам директно.