Seam was a
web application framework
A web framework (WF) or web application framework (WAF) is a software framework that is designed to support the development of web applications including web services, web resources, and web APIs. Web frameworks provide a standard way to build and ...
developed by
JBoss
WildFly, formerly known as JBoss AS, or simply JBoss, is an application server written by JBoss, now developed by Red Hat. WildFly is written in Java and implements the Java Platform, Enterprise Edition (Java EE) specification. It runs on mult ...
, a division of
Red Hat
Red Hat, Inc. (formerly Red Hat Software, Inc.) is an American software company that provides open source software products to enterprises and is a subsidiary of IBM. Founded in 1993, Red Hat has its corporate headquarters in Raleigh, North ...
.
Seam 3
Seam 3 provides a modular set of extensions to the
CDI programming model. Seam's mission is to provide a fully integrated development platform for building rich, standards-based Internet applications tailored for traditional and cloud deployments. Seam 3 is intended to be a more scalable, feature rich set of extensions than Seam 2, which is under maintenance development only.
Seam sources on GitHub have not been updated since September 2012. Active development of Seam 3 has been halted by Red Hat.
Seam 2
Seam 2 combines the two frameworks
Enterprise JavaBean
Jakarta Enterprise Beans (EJB; formerly Enterprise JavaBeans) is one of several List of Java APIs, Java APIs for modular construction of enterprise software. EJB is a server-side component (software), software component that Encapsulation (object ...
s (EJB3) and
JavaServer Faces
Jakarta Faces, formerly Jakarta Server Faces and JavaServer Faces (JSF) is a Java specification for building component-based user interfaces for web applications. It was formalized as a standard through the Java Community Process as part of the ...
(JSF). However, simple
POJOs can be used at the
back end. One can turn any EJB3 object or any simple POJO object into a seam component by just using annotations. Once a component becomes a seam component, it can be accessed through JSF or through other
business-logic components in a unified manner. Thus, one can access any back-end EJB component from the front-end by addressing it by its Seam component name. This Java web framework incorporates identity management features.
Seam 2 introduces the concept of ''bijection'', taken from Spring's ''dependency injection'' feature, where objects can be in-jected or out-jected to/from assigned variables using the @In and @Out annotations.
The framework also expands the concept of ''contexts''. Each seam component exists within a context. The default Seam context, a ''conversation'', can span multiple pages and usually spans the whole business flow, from start to finish. The ''session context'' captures all actions of a user until he/she logs out or closes the browser - even across multiple uses of the browser back-button.
One can automatically generate a
CRUD
In computer programming, create, read, update, and delete (CRUD) are the four basic operations (actions) of persistent storage. CRUD is also sometimes used to describe user interface conventions that facilitate viewing, searching, and changing info ...
(create-read-update-delete) web-application from an existing database using the command-line tool
seam-gen
supplied with the framework.
Seam facilitates
WYSIWYG
In computing, WYSIWYG ( ), an acronym for what you see is what you get, refers to software that allows content to be edited in a form that resembles its appearance when printed or displayed as a finished product, such as a printed document, web ...
development through the use of
JBoss Tools, a set of plug-ins targeted at the open-source
Eclipse
An eclipse is an astronomical event which occurs when an astronomical object or spacecraft is temporarily obscured, by passing into the shadow of another body or by having another body pass between it and the viewer. This alignment of three ...
integrated development environment
An integrated development environment (IDE) is a Application software, software application that provides comprehensive facilities for software development. An IDE normally consists of at least a source-code editor, build automation tools, an ...
.
Seam integrates out of the box with the
RichFaces and
ICEfaces Ajax
Ajax may refer to:
Greek mythology and tragedy
* Ajax the Great, a Greek mythological hero, son of King Telamon and Periboea
* Ajax the Lesser, a Greek mythological hero, son of Oileus, the king of Locris
* Ajax (play), ''Ajax'' (play), by the an ...
libraries, as well as with many other Ajax libraries - without the need to write JavaScript code.
Seam also includes creator modules for PDF documents, e-mail, graphs, and
Microsoft Excel
Microsoft Excel is a spreadsheet editor developed by Microsoft for Microsoft Windows, Windows, macOS, Android (operating system), Android, iOS and iPadOS. It features calculation or computation capabilities, graphing tools, pivot tables, and a ...
worksheet
A worksheet, in the word's original meaning, is a sheet of paper on which one performs work. They come in many forms, most commonly associated with children's school work assignments, tax forms, and accounting or other business environments. Sof ...
s.
See also
*
List of JBoss software
*
Comparison of web frameworks
Bibliography
References
External links
*
{{Authority control
Red Hat software
Java enterprise platform
Web frameworks
Cross-platform software