------
Myfaces Core 2.0 on Google App Engine
------
Myfaces Core 2.0 on Google App Engine
In order to run Myfaces on Google App Engine, you need to complete the steps below. Configuration explained in this document is tested with
Google App Engine 1.3.0.
* Download Myfaces Core 2.0.0(OR THE VERSION THE PATCH WILL BE RELEASED) or later. Google App Engine support is not available for older versions.
Extract and put following files into war/WEB-INF/lib:
* myfaces-api-2.0.x.jar
* myfaces-impl-2.0.x.jar
* commons-beanutils-1.x.x.jar
* commons-codec-1.x.jar
* commons-collections-3.x.jar
* commons-digester-x.x.jar
* commons-discovery-0.x.jar
* commons-logging-1.x.x.jar
~~ or the version this change will be accepted
~~ or should we reference snapshots?
* We need Facelets to run Myfaces on Google App Engine. So, download Facelets from {{{https://facelets.dev.java.net/}here}}
and put jsf-facelets.jar into war/WEB-INF/lib.
* Add following lines into your web.xml.
+------------------------------------------------------------------------+
...
org.apache.myfaces.EXPRESSION_FACTORY
com.sun.el.ExpressionFactoryImpl
org.apache.myfaces.config.annotation.LifecycleProvider
org.apache.myfaces.config.annotation.NoInjectionAnnotationLifecycleProvider
javax.faces.DEFAULT_SUFFIX
.xhtml
Faces Servlet
javax.faces.webapp.FacesServlet
Faces Servlet
*.jsf
...
+------------------------------------------------------------------------+
* Enable sessions on App Engine. To do this, add line below to war/WEB-INF/appengine-web.xml.
+------------------------------------------------------------------------+
true
+------------------------------------------------------------------------+
* Although Google App Engine is said to support JSP 2.1, JSP implementation version(2.0)
does not match JSP API version(2.1). So, we need to supply Unified Expression Language
implementation jars. You can find them {{{https://uel.dev.java.net/}here}}.
Put el-api-1.x.jar and el-impl-1.x.jar into war/WEB-INF/lib.
* Here is the sample directory structure:
+------------------------------------------------------------------------+
+
+ src
+ META-INF
- jdoconfig.xml
+ war
- somepage.xhtml
+ WEB-INF
- appengine-web.xml
- faces-config.xml
- logging.properties
- web.xml
+ lib
- appengine-api-1.0-sdk-1.3.0.jar
- appengine-api-labs-1.3.0.jar
- commons-beanutils-1.7.0.jar
- commons-codec-1.3.jar
- commons-collections-3.2.jar
- commons-digester-1.8.jar
- commons-discovery-0.4.jar
- commons-logging-1.1.1.jar
- datanucleus-appengine-1.0.4.1.final.jar
- datanucleus-core-1.1.5.jar
- datanucleus-jpa-1.1.5.jar
- el-api-1.1.jar
- el-impl-1.1.jar
- geronimo-jpa_3.0_spec-1.1.1.jar
- geronimo-jta_1.1_spec-1.1.1.jar
- jdo2-api-2.3-eb.jar
- jsf-facelets.jar
- myfaces-api-2.0.0.jar
~~ or some other version
- myfaces-impl-2.0.0.jar
~~ or some other version
+------------------------------------------------------------------------+
~~ put the link of the kickstart zip file including structure above!!