SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Downloaden Sie, um offline zu lesen
SEAM 3
             a Web developer’s view

Matija Mazi, Parsek
What is Seam 3?


• Enterprise Internet application
  platform
• Based on Java EE 6
  – Especially CDI
Agenda


•   Java EE 6 Example App
•   Seam 3 Example App
•   Seam and Java Standards
•   Contributing to Seam
Java EE 6: Our example

• Web Application Technologies
  – JSF (JavaServer Faces) 2.0 with Facelets
  – EL (Expression Language) 2.2


• Enterprise Technologies
  –   CDI 1.0 (Contexts & Dependency Injection)
  –   EJB 3.1 (Enterprise JavaBeans)
  –   JPA (Persistence) 2.0
  –   Bean Validation 1.0
Java EE 6: Our example


• Let’s see the demo!
Java EE 6: What we used
• General (javax.annotation.*)   • JPA (javax.persistence)
    – @PostConstruct                 –   EntityManager
                                     –   CriteriaBuilder, CriteriaQuery
• EJB3 (javax.ejb)                   –   @Entity
    – @Stateful                      –   @Id
                                     –   @GeneratedValue
                                     –   @PersistenceContext
• CDI (javax.enterprise.*)
    –   @RequestScoped
    –   @Event                   • Validation (javax.validation.*)
    –   @Observes                    – @NotNull
    –   @Model                       – @Pattern
    –   @Produces                    – @Size

• CDI (javax.inject.*)
    – @Inject
    – @Named
Seam 3: Our example


• Let’s see the demo!
Seam 3: Features (1/2)
• Forge                             • Seam Configuration
   – Plugins
                                    • Seam Persistence
• Seam Solder                          – Transaction Management
   – @Veto, @Requires, @Exact,         – Seam-managed persistence
     @Client, @Named packages,           contexts
     @FullyQualified
   – Annotation Literals
   – Evaluating EL                  • Seam Servlet
   – Resource Loading                  – Servlet/Session events
   – Logging                           – Injectable Servlet objects and
                                         request state
   – Reference to the BeanManager
                                       – @RequestParam,
   – Properties                          @HeaderParam,
   – @Unwraps                            @ContextPath,
   – Default Beans                       @CookieParam, @ServerInfo,
   – Generic Beans                       @Principal
   – Service Handler
Seam 3: Features (2/2)
• Seam Security                 •   Seam Catch
                                •   Seam Remoting
• Seam International            •   Seam REST
   – Locales, Timezones         •   Seam Validation
   – Messages                   •   Seam Wicket
                                •   Seam Cron
• Seam Faces
                                •   Seam Drools
   – Faces Events Propagation
   – Faces Artifact Injection   •   Seam Errai CDI (GWT)
   – Messages                   •   Seam JCR (Content Repo)
   – @RenderScoped,             •   Seam JMS
     @ViewScoped, Flash         •   Seam Mail
   – <s:validateForm>,
     <s:viewAction>             •   Seam Reports
                                •   Seam Social
                                •   Seam Spring
Seam: a source of ideas
for JavaEE standards
Seam: a source of ideas
                        for JavaEE standards
                        (stuff in JEE6 that came from Seam)

• CDI (JSR 299)                   • JSF 2 (JSR 314)
  –   @Inject                        –   Navigation
  –   @*Scoped                       –   <f:viewParam>
  –   @Produces                      –   <f:selectItems>
  –   Events                         –   Get Requests
  –   Most of the stuff, really           • <h:link>, <h:button>
                                     – Scopes
• CDI 1.1 (JSR 346)                  – Annotations
                                          • Managed Beans
  – from Seam 3
                                          • Converters/Valitators
       • esp. Seam Solder
                                     – Resources
                                     – Validation integration
                                     – EL method parameters
Contributing to OS

•   github account
•   git installed
•   No need for commit permissions
•   https://github.com/seam/international/pull/11
Seam 3 and JavaEE 6



             • Thank you!




mazi@parsek.net
Seam 3: Our Example

• Seam International        • Seam Cron
  – Messages                  – Scheduled tasks


• Seam Faces                • Seam Mail
  – Messages                  – Mail templates
  – @Inject in Validators     – Mail sending


                            • Seam Solder
                              – Resource Loading

Weitere ähnliche Inhalte

Was ist angesagt?

Ruby and Rails short motivation
Ruby and Rails short motivationRuby and Rails short motivation
Ruby and Rails short motivation
jistr
 

Was ist angesagt? (20)

Optimizing Java Notes
Optimizing Java NotesOptimizing Java Notes
Optimizing Java Notes
 
The Actor Model - Towards Better Concurrency
The Actor Model - Towards Better ConcurrencyThe Actor Model - Towards Better Concurrency
The Actor Model - Towards Better Concurrency
 
Building Asynchronous Applications
Building Asynchronous ApplicationsBuilding Asynchronous Applications
Building Asynchronous Applications
 
Java performance monitoring
Java performance monitoringJava performance monitoring
Java performance monitoring
 
A gentle introduction into AKKA and the actor model
A gentle introduction into AKKA and the actor modelA gentle introduction into AKKA and the actor model
A gentle introduction into AKKA and the actor model
 
Advanced Server Integration with Data and Direct
Advanced Server Integration with Data and DirectAdvanced Server Integration with Data and Direct
Advanced Server Integration with Data and Direct
 
Lets build-ruby-app-server: Vineet tyagi
Lets build-ruby-app-server: Vineet tyagiLets build-ruby-app-server: Vineet tyagi
Lets build-ruby-app-server: Vineet tyagi
 
Ruby and Rails short motivation
Ruby and Rails short motivationRuby and Rails short motivation
Ruby and Rails short motivation
 
Invitation to the dark side of Ruby
Invitation to the dark side of RubyInvitation to the dark side of Ruby
Invitation to the dark side of Ruby
 
Stackato v6
Stackato v6Stackato v6
Stackato v6
 
Maccro Strikes Back
Maccro Strikes BackMaccro Strikes Back
Maccro Strikes Back
 
Lock-free algorithms for Kotlin Coroutines
Lock-free algorithms for Kotlin CoroutinesLock-free algorithms for Kotlin Coroutines
Lock-free algorithms for Kotlin Coroutines
 
Introduction to ACI APIs
Introduction to ACI APIsIntroduction to ACI APIs
Introduction to ACI APIs
 
Event Driven Architecture with Apache Camel
Event Driven Architecture with Apache CamelEvent Driven Architecture with Apache Camel
Event Driven Architecture with Apache Camel
 
2010 07-20 TDD with ActiveResource
2010 07-20 TDD with ActiveResource2010 07-20 TDD with ActiveResource
2010 07-20 TDD with ActiveResource
 
Sbt, idea and eclipse
Sbt, idea and eclipseSbt, idea and eclipse
Sbt, idea and eclipse
 
Consuming REST services with ActiveResource
Consuming REST services with ActiveResourceConsuming REST services with ActiveResource
Consuming REST services with ActiveResource
 
Scala adoption by enterprises
Scala adoption by enterprisesScala adoption by enterprises
Scala adoption by enterprises
 
Perl-Critic
Perl-CriticPerl-Critic
Perl-Critic
 
Sista: Improving Cog’s JIT performance
Sista: Improving Cog’s JIT performanceSista: Improving Cog’s JIT performance
Sista: Improving Cog’s JIT performance
 

Ähnlich wie Seam 3 from a Web developer’s point of view, Matija Mazi (Parsek)

日本一細かいJavaOne2011報告
日本一細かいJavaOne2011報告日本一細かいJavaOne2011報告
日本一細かいJavaOne2011報告
心 谷本
 
DevLOVE Beautiful Development - 第一幕 陽の巻
DevLOVE Beautiful Development - 第一幕 陽の巻DevLOVE Beautiful Development - 第一幕 陽の巻
DevLOVE Beautiful Development - 第一幕 陽の巻
都元ダイスケ Miyamoto
 

Ähnlich wie Seam 3 from a Web developer’s point of view, Matija Mazi (Parsek) (20)

Spring - CDI Interop
Spring - CDI InteropSpring - CDI Interop
Spring - CDI Interop
 
hibernateormfeatures-140223193044-phpapp02.pdf
hibernateormfeatures-140223193044-phpapp02.pdfhibernateormfeatures-140223193044-phpapp02.pdf
hibernateormfeatures-140223193044-phpapp02.pdf
 
Not Just ORM: Powerful Hibernate ORM Features and Capabilities
Not Just ORM: Powerful Hibernate ORM Features and CapabilitiesNot Just ORM: Powerful Hibernate ORM Features and Capabilities
Not Just ORM: Powerful Hibernate ORM Features and Capabilities
 
XPages Performance Master Class - Survive in the fast lane on the Autobahn (E...
XPages Performance Master Class - Survive in the fast lane on the Autobahn (E...XPages Performance Master Class - Survive in the fast lane on the Autobahn (E...
XPages Performance Master Class - Survive in the fast lane on the Autobahn (E...
 
Play Framework and Activator
Play Framework and ActivatorPlay Framework and Activator
Play Framework and Activator
 
Impression of Rails 3
Impression of Rails 3Impression of Rails 3
Impression of Rails 3
 
The Wix Microservice Stack
The Wix Microservice StackThe Wix Microservice Stack
The Wix Microservice Stack
 
日本一細かいJavaOne2011報告
日本一細かいJavaOne2011報告日本一細かいJavaOne2011報告
日本一細かいJavaOne2011報告
 
An Overview of ModeShape
An Overview of ModeShapeAn Overview of ModeShape
An Overview of ModeShape
 
Oracle Fuson Middleware Diagnostics, Performance and Troubleshoot
Oracle Fuson Middleware Diagnostics, Performance and TroubleshootOracle Fuson Middleware Diagnostics, Performance and Troubleshoot
Oracle Fuson Middleware Diagnostics, Performance and Troubleshoot
 
Big Search with Big Data Principles
Big Search with Big Data PrinciplesBig Search with Big Data Principles
Big Search with Big Data Principles
 
RSpec on Rails Tutorial
RSpec on Rails TutorialRSpec on Rails Tutorial
RSpec on Rails Tutorial
 
Cache on Delivery
Cache on DeliveryCache on Delivery
Cache on Delivery
 
DevLOVE Beautiful Development - 第一幕 陽の巻
DevLOVE Beautiful Development - 第一幕 陽の巻DevLOVE Beautiful Development - 第一幕 陽の巻
DevLOVE Beautiful Development - 第一幕 陽の巻
 
Spring 3.1 in a Nutshell - JAX London 2011
Spring 3.1 in a Nutshell - JAX London 2011Spring 3.1 in a Nutshell - JAX London 2011
Spring 3.1 in a Nutshell - JAX London 2011
 
Spring Day | Spring 3.1 in a Nutshell | Sam Brannen
Spring Day | Spring 3.1 in a Nutshell | Sam BrannenSpring Day | Spring 3.1 in a Nutshell | Sam Brannen
Spring Day | Spring 3.1 in a Nutshell | Sam Brannen
 
Java EE8 - by Kito Mann
Java EE8 - by Kito Mann Java EE8 - by Kito Mann
Java EE8 - by Kito Mann
 
ATLRUG Security Workshop - 9/10/2014
ATLRUG  Security Workshop - 9/10/2014 ATLRUG  Security Workshop - 9/10/2014
ATLRUG Security Workshop - 9/10/2014
 
Hands-on Performance Workshop - The science of performance
Hands-on Performance Workshop - The science of performanceHands-on Performance Workshop - The science of performance
Hands-on Performance Workshop - The science of performance
 
Hands on Performance Tuning - Mike Croft
Hands on Performance Tuning - Mike CroftHands on Performance Tuning - Mike Croft
Hands on Performance Tuning - Mike Croft
 

Mehr von OpenBlend society

SOA architecture patterns, Matjaž Jurič (FRI/Univerza v Ljubljani)
SOA architecture patterns, Matjaž Jurič (FRI/Univerza v Ljubljani)SOA architecture patterns, Matjaž Jurič (FRI/Univerza v Ljubljani)
SOA architecture patterns, Matjaž Jurič (FRI/Univerza v Ljubljani)
OpenBlend society
 
National Reference runtime environment, Boris Šaletić (MJU)
National Reference runtime environment, Boris Šaletić (MJU)National Reference runtime environment, Boris Šaletić (MJU)
National Reference runtime environment, Boris Šaletić (MJU)
OpenBlend society
 
Memory is the new disk, disk is the new tape, Bela Ban (JBoss by RedHat)
Memory is the new disk, disk is the new tape, Bela Ban (JBoss by RedHat)Memory is the new disk, disk is the new tape, Bela Ban (JBoss by RedHat)
Memory is the new disk, disk is the new tape, Bela Ban (JBoss by RedHat)
OpenBlend society
 
Introducing Hibernate OGM: porting JPA applications to NoSQL, Sanne Grinovero...
Introducing Hibernate OGM: porting JPA applications to NoSQL, Sanne Grinovero...Introducing Hibernate OGM: porting JPA applications to NoSQL, Sanne Grinovero...
Introducing Hibernate OGM: porting JPA applications to NoSQL, Sanne Grinovero...
OpenBlend society
 
Java SE 7 - The Platform Evolves, Dalibor Topić (Oracle)
Java SE 7 - The Platform Evolves, Dalibor Topić (Oracle)Java SE 7 - The Platform Evolves, Dalibor Topić (Oracle)
Java SE 7 - The Platform Evolves, Dalibor Topić (Oracle)
OpenBlend society
 
Enterprise Java Virtualization, Sacha Labourey
Enterprise Java Virtualization, Sacha LaboureyEnterprise Java Virtualization, Sacha Labourey
Enterprise Java Virtualization, Sacha Labourey
OpenBlend society
 

Mehr von OpenBlend society (12)

SOA architecture patterns, Matjaž Jurič (FRI/Univerza v Ljubljani)
SOA architecture patterns, Matjaž Jurič (FRI/Univerza v Ljubljani)SOA architecture patterns, Matjaž Jurič (FRI/Univerza v Ljubljani)
SOA architecture patterns, Matjaž Jurič (FRI/Univerza v Ljubljani)
 
National Reference runtime environment, Boris Šaletić (MJU)
National Reference runtime environment, Boris Šaletić (MJU)National Reference runtime environment, Boris Šaletić (MJU)
National Reference runtime environment, Boris Šaletić (MJU)
 
Memory is the new disk, disk is the new tape, Bela Ban (JBoss by RedHat)
Memory is the new disk, disk is the new tape, Bela Ban (JBoss by RedHat)Memory is the new disk, disk is the new tape, Bela Ban (JBoss by RedHat)
Memory is the new disk, disk is the new tape, Bela Ban (JBoss by RedHat)
 
Introducing Hibernate OGM: porting JPA applications to NoSQL, Sanne Grinovero...
Introducing Hibernate OGM: porting JPA applications to NoSQL, Sanne Grinovero...Introducing Hibernate OGM: porting JPA applications to NoSQL, Sanne Grinovero...
Introducing Hibernate OGM: porting JPA applications to NoSQL, Sanne Grinovero...
 
Java SE 7 - The Platform Evolves, Dalibor Topić (Oracle)
Java SE 7 - The Platform Evolves, Dalibor Topić (Oracle)Java SE 7 - The Platform Evolves, Dalibor Topić (Oracle)
Java SE 7 - The Platform Evolves, Dalibor Topić (Oracle)
 
How to cuddle your EJBs, Carlo de Wolf
How to cuddle your EJBs, Carlo de WolfHow to cuddle your EJBs, Carlo de Wolf
How to cuddle your EJBs, Carlo de Wolf
 
Enterprise Java Virtualization, Sacha Labourey
Enterprise Java Virtualization, Sacha LaboureyEnterprise Java Virtualization, Sacha Labourey
Enterprise Java Virtualization, Sacha Labourey
 
OSGi & Java EE: A hybrid approach to Enterprise Java Application Development,...
OSGi & Java EE: A hybrid approach to Enterprise Java Application Development,...OSGi & Java EE: A hybrid approach to Enterprise Java Application Development,...
OSGi & Java EE: A hybrid approach to Enterprise Java Application Development,...
 
Tackling Actual Problems on the Wings of the Netbeans Platform, Jure Polutnik
Tackling Actual Problems on the Wings of the Netbeans Platform, Jure PolutnikTackling Actual Problems on the Wings of the Netbeans Platform, Jure Polutnik
Tackling Actual Problems on the Wings of the Netbeans Platform, Jure Polutnik
 
Android Up Close, Martin Sonc
Android Up Close, Martin SoncAndroid Up Close, Martin Sonc
Android Up Close, Martin Sonc
 
Successful Application Lifecycle Management in heterogeneous environments, Ma...
Successful Application Lifecycle Management in heterogeneous environments, Ma...Successful Application Lifecycle Management in heterogeneous environments, Ma...
Successful Application Lifecycle Management in heterogeneous environments, Ma...
 
Becoming an Open Source developer, Dimitris Andreadis
Becoming an Open Source developer, Dimitris AndreadisBecoming an Open Source developer, Dimitris Andreadis
Becoming an Open Source developer, Dimitris Andreadis
 

Kürzlich hochgeladen

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Kürzlich hochgeladen (20)

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 

Seam 3 from a Web developer’s point of view, Matija Mazi (Parsek)

  • 1. SEAM 3 a Web developer’s view Matija Mazi, Parsek
  • 2.
  • 3. What is Seam 3? • Enterprise Internet application platform • Based on Java EE 6 – Especially CDI
  • 4. Agenda • Java EE 6 Example App • Seam 3 Example App • Seam and Java Standards • Contributing to Seam
  • 5. Java EE 6: Our example • Web Application Technologies – JSF (JavaServer Faces) 2.0 with Facelets – EL (Expression Language) 2.2 • Enterprise Technologies – CDI 1.0 (Contexts & Dependency Injection) – EJB 3.1 (Enterprise JavaBeans) – JPA (Persistence) 2.0 – Bean Validation 1.0
  • 6. Java EE 6: Our example • Let’s see the demo!
  • 7. Java EE 6: What we used • General (javax.annotation.*) • JPA (javax.persistence) – @PostConstruct – EntityManager – CriteriaBuilder, CriteriaQuery • EJB3 (javax.ejb) – @Entity – @Stateful – @Id – @GeneratedValue – @PersistenceContext • CDI (javax.enterprise.*) – @RequestScoped – @Event • Validation (javax.validation.*) – @Observes – @NotNull – @Model – @Pattern – @Produces – @Size • CDI (javax.inject.*) – @Inject – @Named
  • 8. Seam 3: Our example • Let’s see the demo!
  • 9. Seam 3: Features (1/2) • Forge • Seam Configuration – Plugins • Seam Persistence • Seam Solder – Transaction Management – @Veto, @Requires, @Exact, – Seam-managed persistence @Client, @Named packages, contexts @FullyQualified – Annotation Literals – Evaluating EL • Seam Servlet – Resource Loading – Servlet/Session events – Logging – Injectable Servlet objects and request state – Reference to the BeanManager – @RequestParam, – Properties @HeaderParam, – @Unwraps @ContextPath, – Default Beans @CookieParam, @ServerInfo, – Generic Beans @Principal – Service Handler
  • 10. Seam 3: Features (2/2) • Seam Security • Seam Catch • Seam Remoting • Seam International • Seam REST – Locales, Timezones • Seam Validation – Messages • Seam Wicket • Seam Cron • Seam Faces • Seam Drools – Faces Events Propagation – Faces Artifact Injection • Seam Errai CDI (GWT) – Messages • Seam JCR (Content Repo) – @RenderScoped, • Seam JMS @ViewScoped, Flash • Seam Mail – <s:validateForm>, <s:viewAction> • Seam Reports • Seam Social • Seam Spring
  • 11. Seam: a source of ideas for JavaEE standards
  • 12. Seam: a source of ideas for JavaEE standards (stuff in JEE6 that came from Seam) • CDI (JSR 299) • JSF 2 (JSR 314) – @Inject – Navigation – @*Scoped – <f:viewParam> – @Produces – <f:selectItems> – Events – Get Requests – Most of the stuff, really • <h:link>, <h:button> – Scopes • CDI 1.1 (JSR 346) – Annotations • Managed Beans – from Seam 3 • Converters/Valitators • esp. Seam Solder – Resources – Validation integration – EL method parameters
  • 13. Contributing to OS • github account • git installed • No need for commit permissions • https://github.com/seam/international/pull/11
  • 14. Seam 3 and JavaEE 6 • Thank you! mazi@parsek.net
  • 15. Seam 3: Our Example • Seam International • Seam Cron – Messages – Scheduled tasks • Seam Faces • Seam Mail – Messages – Mail templates – @Inject in Validators – Mail sending • Seam Solder – Resource Loading