This repository has been archived by the owner. It is now read-only.

Migration from RichFaces 4 to RichFaces 4.5

Jiri Stefek edited this page Jan 28, 2015 · 9 revisions

Introduction

With the release of RichFaces 4.5 we re-vamped the build structure of the project with the intention of making it easier to develop both for core developers and community contributors. The goal of the re-build is to keep the effort required in migration to an absolute minimum other than the unavoidable POM changes. This page will track any deviations from that goal.

All you need to change

If you have an application running with RichFaces 4, it is very easy to migrate to RichFaces 4.5. First step is to change a dependency in your pom.xml. Delete previous dependencies on RichFaces 4 and add the following single dependency (Replacing the version 4.5.0-SNAPSHOT with the version of the library you wish to include):

<dependency>
    <groupId>org.richfaces</groupId>
    <artifactId>richfaces</artifactId>
    <version>4.5.0-SNAPSHOT</version>
</dependency>
Note
Prior releases of RichFaces required using a BOM to manage the project dependencies. With RichFaces 4.5 all required dependencies are managed transitively, simplifying your project setup.

This will fetch you the correct artifact allowing you to work with RichFaces 4.5.

Deployment container changes

A bug in Mojarra (JAVASERVERFACES-3157) affects the ExtendedPartialViewContext in RichFaces 4.5. As such we’ve implemented a check that you are running a patched version of Mojarra ≥ 2.1.28 or ≥ 2.2.6.

Breaking API changes in RichFaces 4.5

Feel free to issue a pull request to this wiki page with any changes you’ve come across.

Changes in packages

As of 4.5.0.CR1 we expect that there are no breaking class package changes.

JavaScript API changes

RichFaces 4.5 introduces a new syntax to access the JavaScript API of components to avoid confusion with the jQuery $ global.

Syntax prior to RichFaces 4.5

New syntax in RichFaces 4.5

RichFaces.$('componentIdInHtmlPage')

RichFaces.component('componentIdInHtmlPage')

Note
We have provided a function alias to ease the migration process, however using the deprecated RichFaces.$ syntax will generate a warning in the javascript console.

Component-level changes

DataTable and CollapsibleSubTable

RichFaces 4.5 extends the built-in sorting and filtering capabilities of the ExtendedDataTable to the simpler DataTable and CollapsibleSubTable. If you have existing applications using custom controls, you will want to either remove the custom controls in favor of the built-in controls, or disable the built-in controls. Refer to the Component Reference for details on disabling the built-in controls.

FileUpload

The Fileupload component is no longer compatible with IE 9.

CDK

If you use the RichFaces CDK to build custom components, you’ll need to change your maven configuration. The CDK maven build now requires a 2 step process:

<plugins>
   <plugin>
	<artifactId>maven-compiler-plugin</artifactId>
		<executions>
			<execution>
				<id>precompile-sources-for-cdk</id>
				<phase>generate-sources</phase>
				<goals>
					<goal>compile</goal>
				</goals>
			</execution>
		</executions>
	</plugin>
	<plugin>
		<groupId>org.richfaces.cdk</groupId>
		<artifactId>richfaces-cdk-maven-plugin</artifactId>
		<version>${org.richfaces.cdk.version}</version>
		<executions>
			<execution>
				<id>cdk-generate-sources</id>
				<phase>process-sources</phase>
				<goals>
					<goal>generate</goal>
				</goals>
			</execution>
		</executions>
	</plugin>
</plugins>
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.