- Some general Java (e.g. Eckel: Thinking in Java)
- Some general Servlet/http stuff Some general JSF (e.g Core JavaServer Faces)
- Some JPA (e.g. Bauer&King Java Persistence with Hibernate)
- Some facelets stuff (the docs)
- Some general stuff (e.g McConnel: Code Complete)
Or you could just start with the Seam Reference Docs and play around with the examples ;-)
In what languages frameworks have you programmed before?
If you have used C# and ASP.NET then Java and JSF are very similar to them.
If you have used in Delphi/Pascal using Borland ECO or Borland Bold in Delphi, JPA/Hibernate are very similar.
If you coded in Objective-C/WebObjects then WO Components are very similar to Facelets.
I may be (or maybe not) able to provide some other analogies if you tell me your background.
what if it was object oriented cobalt?
Yes, I have worked on ASP.NET and C#. I have prior experience on JAVA but it has been a time since I worked on it. I just need to re-look at JAVA and learn about SEAM.
I am just starting into seam and I would strongly suggest that you get comfortable with Java and Ant first. Then you can expand into Tomcat and JSF, then Hibernate (including Annotations) and, finally, JBoss AS (or some other supported application server) and seam (and probably EJB3). Each system builds upon concepts from the previous levels.
If you aren't comfortable with the concepts, learning seam can be a very frustrating experience - especially since the examples have not been updated to reflect the latest code releases (same goes for a lot of the tutorials). Expect to spend a lot of time hunting around for things that have been moved to new locations or renamed. Of course, the authority of all things seam is the source code, but if you aren't comfortable with Java, that will only add to your frustration.
You may also find that support for your favorite IDE is not really there. That's not a criticism, just an observation and a recognition that you will need to know where key files should be placed in the hierarchy and what key files are required. Seam's tools will give you some help but you will need to know what other configuration files are required, their format and where they should go. This reinforces the need to be comfortable with war files and application server configuration before getting too deep into seam.
Don't get me wrong. I think learning seam is a useful thing and the rewards are huge once you climb the mountain of learning but it is a big, complex system with lots of assumptions about prior knowledge required to understand a lot of the documentation.
object oriented cobalt? really? never heard of it... can you provide a link?