Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

libraries for JSF (Sun/Oracle Mojarra)

Tags:

jar

jsf-2

mojarra

I am downloading Sun/Oracle Mojarra implementation of JSF from http://javaserverfaces.java.net/download.html

I downloaded the latest -2.1.9 binary. It comes with only one jar - javax.faces-2.1.9.jar. I had a sample project which I believe is using the older 2.0 version, which includes 2 jars - jsf-api.jar and jsf-impl.jar.

I replaced those 2 older jars with the single new jar. It seems like the sample project still works well.

My question:

  1. Is there anything else I need to do besides replacing those 2 jars???

  2. Any special reason this is this changed from 2 jars to 1?

Thanks a lot.

MORE:

I noticed versions in my faces-config.xml

<?xml version="1.0"?>
<faces-config xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee  http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd" version="2.0">
</faces-config>

I changed 2.0 and 2_0 to 2.1 and 2_1. The sample project still works. SHould I make these changes?

like image 930
Ziyang Zhang Avatar asked Jun 21 '12 20:06

Ziyang Zhang


People also ask

What is Mojarra JSF?

Mojarra is the new name of the Sun's (sorry now Oracle) original JSF reference implementation (also known as JSF RI) from *version 1.2_08* onwards. Sun wanted a BUZZ word for its JSF implementation, so they gave a new name to their JSF implementation. Mojarra is the default JSF shipped with servers like Glassfish ..etc.


1 Answers

Is there anything else I need to do besides replacing those 2 jars?

No.


Any special reason this is this changed from 2 jars to 1?

Around the time of the release of 2.1.6, they've refactored the build system conform Java EE Maven rules. See also Mojarra issue 2028. This resulted in the two well known jsf-api.jar and jsf-impl.jar files being replaced by a single javax.faces.jar file.


I changed 2.0 and 2_0 to 2.1 and 2_1. The sample project still works. SHould I make these changes?

You can just do so. The only difference is that the faces-config 2.1 XSD definies two new elements as opposed to faces-config 2.0 XSD:

  • <facelet-cache-factory> to register a custom FaceletCache
  • <redirect-param> to specify request parameters for in a redirect navigation case.

If you don't need any of them, then it don't matter if you're using the 2.0 or 2.1 XSD. Mojarra 2.1 has internally no 2.0 fallback modus when using JSF 2.1 with a 2.0 XSD.

like image 110
BalusC Avatar answered Oct 29 '22 19:10

BalusC