Setting Project Facets

When a project is created, various information is assembled to specify the type of project, add standard libraries, set compiler options, control publishing tasks, set the build path and/or add an annotation processor. This information is specified by choosing facets during project creation. Facets can also be added and deleted from a project after its initial creation. To edit a project's facets, select Project > Properties > Project Facets.

Facets have version numbers. Not all facet version numbers can be changed (e.g., a facet available in only one version of software can not have other version numbers). Some facet version numbers are inter-dependent (e.g., if you choose the facet Java Annotation Processing, you must also have Java version 5.0 selected since Java versions 1.3 and 1.4 did not support annotation processing).

Each WebLogic project has two core facets:

For example, the Dynamic Web Project has two core facets: the Dynamic Web Module (the enable facet) and the WebLogic Web App Extensions facets.

In the project creation wizard (File > New > Project), required facets cannot be unselected . The facet choices vary depending on the project type. For example, web service facets are not available when creating an EJB project.

WebLogic Project Facet Types

Enabler Facets

The enabler facets specify the WebLogic project type. The following table lists the available enabler modules.

Facet Name Description
EAR Enables the project as an EAR
EJB Module Enables the project for EJBs
Utility Module Enables the project to be referenced by other projects (J2EE modules)
Dynamic Web Module Enables web applications (web services and page flows)

Minimum Project Extensions

All WebLogic projects require, as a minimum, support for J2EE shared libraries. This WebLogic feature allows modules to share a single copy of the J2EE libraries rather than duplicating the library in each project. The following table lists the available project extensions.

Facet Name Adds (in addition to J2EE shared library support):
WebLogic EAR Extensions  
WebLogic EJB Extensions EJBGen tool that allows EJBs to be created in a single annotated .java source file
WebLogic Utility Module Extensions  
WebLogic Web App Extensions

Note that this facet is required if the Struts, JSF, JSTL and Kodo facets are to be made available your projects as WebLogic J2EE libraries.

If this facet is selected you can choose between WebLogic J2EE libraries or the copying of resource jars into your application.

If this facet is not selected then the resources jars for these facets will be copied into your application.

Java Support

Java language support and annotation processing are required by all working projects (web applications, EJBs, utility projects). EAR projects require only Java language support.

Facet Name Description
Java Add Java edit, refactor, compile features (the JDT tools)
Java Annotation Processing Support Support for Java 5.0 annotation (JSR-175)

XMLBeans Support

XMLBeans is a project of the Apache Foundation (http://xmlbeans.apache.org). The XMLBeans feature of WebLogic can be used with any project type and replaces the schema project type used in WebLogic Workshop 8.1. The XMLBeans builder compiles complex data types in WSDLs or schemas into Java types. This is used when building a web service with an existing schema. It is also useful when accessing a web service control that incorporates complex types. For more information on using XMLBeans, see Using XMLBeans in the IDE.

XMLBeans are optional within all projects types.

Facet Name Description
XMLBeans Library Puts XML Beans API on the build path
XMLBeans Builder Adds builder plugin to Eclipse that generates Java types from WSDL or XSD (schema) files.

Beehive NetUI and Controls

Beehive is a project of the Apache Foundation (http://beehive.apache.org). Beehive provides support for JSR-175 annotations and includes NetUI and controls.

Facet Name Description
Beehive Controls Adds system controls and support for custom controls
Beehive NetUI Adds support for page flows and JSPs as well as integration with Java Server Faces (JSF) and Struts
Workshop Control Extensions Workshop extensions for controls including timer control and web service control

JSF (Java Server Faces)

Java Server Faces is a component framework for building user interfaces for web apps

Facet Name Description
JSF Adds JSF implementation.

Annotated Web Services

JSR-181 defines a standard annotated Java format that that uses Java Language Metadata (JSR-175) to enable easy definition of Java Web Services in a J2EE container.

Facet Name Description
Standard Annotated Web Services Adds support for standard annotation as defined in JSR-181
WebLogic Web Service Extensions Adds WebLogic extensions to standard JSR-181 annotations

Other Facets

Additional facets provide standard J2EE libraries and APIs.

Facet Name Description
JSF JavaServer Faces
Struts An open source framework for building Servlet/JSP based web applications. This facet is required by NetUI.
JSTL JSP standard tag library
BEA Kodo Kodo persistence engine
Hibernate An object/relational persistence and query service for Java.
Spring Java/J2EE application framework
JPA Java Persistence API

Related Topics

Applications and Projects


Still need help? Post a question on the Workshop newsgroup.