aspose file tools*
The moose likes JSF and the fly likes General question Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » JSF
Bookmark "General question" Watch "General question" New topic
Author

General question

Kilia Verdon
Greenhorn

Joined: Jan 20, 2008
Posts: 13
Hello everybody,

I am relatively new to this platform. I already have some experience in java programming - I passed SCJP as well. Now I would like to learn dynamic web coding with Java EE 5. I would like to learn to code dynamic webpages as straightforward as possible (I know that it is not possible in a few days, but as soon as possible...).
I have some really really basic idea about servlets ans jsp. To me the mixture between HTML and Java doesn't look very comfortable. I already heard about Struts and Java Server Faces. And this frameworks seem to be very helpful when coding webpage.

My question:
1. What concepts, "languages syntaxes" and in which order should I learn? (servlets, jsp, jsf, struts etc...)
2. Servlets seem to be a old concept (mixture of java and html, not easy to read and maitain). But Servlets seems to be the basics as well...

There are so many frameworks, concept, languages, different servers... (JBoss, JSP, JSF, Struts, Hibernate, EJB, Tomcat, Glassfish...)! I really don't know exactly which of them are alternatives to others, which supplement the others.... For example: Can I learn Struts whithout solid knowledge of JSP?

Which concepts should I learn first, which way should I go?
1. Servlets
2. JSP
3. EJB
4. JSF

???

Thanks very much
Kilia
Manuel DeAngelo
Greenhorn

Joined: Jan 25, 2008
Posts: 13
Hello Kilia!

First of all: a JSP is compiled to a Servlet, so JSP is only a special way of writing servlet. It should make it easier to split up GUI from business code.

You should learn first of all Servlets & JSP, which will give you a basic knowledge of what happens in a dynamic web application.

Then I would either lern EJB or directly struts or JSF.
Kilia Verdon
Greenhorn

Joined: Jan 20, 2008
Posts: 13
Hi.

Thanks for your answer. I will follow your advise and learn Servlets and JSP the next days.
How you wrote: It seems like EJB, Struts ans JSF are alternative concepts/frameworks and replaces each other. Or is that not true?
Is Struts and JSF a little bit like SWT and Swing for normal java? Two concepts which are intended to solve the same problem?

thanks
kilia
Bob Good
Ranch Hand

Joined: Jan 09, 2008
Posts: 86
JSF is a event based framework for building dynamic web apps.
JSP is built on top of JSP and Servlets.

EJBs are used for database persistence, message based interfaces, and container based transaction control. You can do database other ways, like JDBC. It cannot hurt to learn JDBC first before you try other persistence mechanisms like Hibernate. EJB V3 is very much like hibernate, but really they are code generators for object relational mapping (getting database rows instantiated as java objects, and collections and groups of related java objects.

You might want to try a good IDE like RAD, Eclipse, NetBeans, etc.
You could jump into web development quickly using JSF.
Kilia Verdon
Greenhorn

Joined: Jan 20, 2008
Posts: 13
Thanks for the answer.

I bought a book about Java EE 5 and read a few chapters until now (Servlets, JSP, Tag-Libraries, Struts and JSF. Now I've got a good idea of the different components and I can see their relations... I will internalize the mechanisms of Servlets, JSP and JSF in the next days.
But now I've an other few questions:

1. Actually I work with Eclipse but I could not find a plugin to easy develop JSFs. In NetBeans I could find a good implementation. But actually I am not familiar with NetBeans and I prefer Eclipse... Does anybody know a plugin for Eclipse?

2. The next chapters of my book are "JNDI", "EJB", "Java Message Service", Persistence API", "XSK, XPath and others", "Webservices".
What do you think: Do I have to learn all theses concepts at the moment if I don't work in a team and would like to develop only small or middle sized projects/websites?

3. I have basic knowledge of JDBC. The way to interact with the database like this is not very comfortable. So I would like to learn an other concept to access the database, like Persistence API or Hibernate. But I am not sure if that needs a lot of effort. Do I have to learn everything about EJB first? Do you think it is worth to learn things like this for small projects or not? Or would you work with JDBC?

Thanks to everybody, thanks to javaranch.
Kilia
Malinda Alahakoon
Greenhorn

Joined: Feb 10, 2008
Posts: 3
Is there any thing Like "Session Attributes" in JSF..
[ February 10, 2008: Message edited by: Malinda Alahakoon ]
Manuel DeAngelo
Greenhorn

Joined: Jan 25, 2008
Posts: 13
1. You could try MyEclipse (you have to buy a license) or RedHat Dev Studio (free) or look at eclipse-plugins.2y.net or at www.eclipseplugincentral.com for plugins.

2. It depends what exactly you want your projects to do, but I would say, in most small / middle sized projects you won't need JNDI, JMS, WebServices, XSL ...

3. I don't know EJB, but hibernate, and it is really easy to understand and use. It may be an asset to understand EJB, but you can do with hibernate only as well.

regards, Manuel
Bob Good
Ranch Hand

Joined: Jan 09, 2008
Posts: 86
For a 30,000 foot overview of J2EE you should have a look at this book:

The J2EE Architects Handbook
Kilia Verdon
Greenhorn

Joined: Jan 20, 2008
Posts: 13
thanks to everybody.

@manuel and ohters:
1. redhat dev studio sounds very nice, but I saw that it costs 99$. Or does a free version exist?

2. That's very nice. So I will internalize the concepts
- Servlets
- JSP
- JSF
- Hibernate.

That's all I need to learn to build powerful and beautiful small/middle sized webpages? If once I want to develop bigger applications or work in a team which develops bigger applications then I can still learn other concepts like struts, EJB, Java Message Services, JNDI and so on....
Or does anyone disagree to that? Is there something I really do have to learn to build "real" dynamic webpages?

kilia
Kilia Verdon
Greenhorn

Joined: Jan 20, 2008
Posts: 13
thanks to everybody.

@manuel and ohters:
1. redhat dev studio sounds very nice, but I saw that it costs 99$. Or does a free version exist?

2. That's very nice. So I will internalize the concepts
- Servlets
- JSP
- JSF
- Hibernate.

That's all I need to learn to build powerful and beautiful small/middle sized webpages? If once I want to develop bigger applications or work in a team which develops bigger applications then I can still learn other concepts like struts, EJB, Java Message Services, JNDI and so on....
Or does anyone disagree to that? Is there something I really do have to learn to build "real" dynamic webpages?

kilia
 
It is sorta covered in the JavaRanch Style Guide.
 
subject: General question