Index: src/main/java/org/superbiz/jsf/CalculatorBean.java
===================================================================
--- src/main/java/org/superbiz/jsf/CalculatorBean.java	(revision 937776)
+++ src/main/java/org/superbiz/jsf/CalculatorBean.java	(working copy)
@@ -19,7 +19,11 @@
 package org.superbiz.jsf;
 
 import javax.ejb.EJB;
+import javax.faces.bean.ManagedBean;
+import javax.faces.bean.RequestScoped;
 
+@ManagedBean(name="calculator")
+@RequestScoped
 public class CalculatorBean {
 	@EJB
 	Calculator calculator;
@@ -47,6 +51,8 @@
 	}
 	public String add(){
 		result = calculator.add(x, y);
-		return "success";
+		
+		// implicit navigation to "result.xhtml"
+		return "result";
 	}
 }
\ No newline at end of file
Index: src/main/webapp/calculator.xhtml
===================================================================
--- src/main/webapp/calculator.xhtml	(revision 0)
+++ src/main/webapp/calculator.xhtml	(revision 0)
@@ -0,0 +1,41 @@
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+      xmlns:f="http://java.sun.com/jsf/core"
+      xmlns:h="http://java.sun.com/jsf/html"
+      xmlns:ui="http://java.sun.com/jsf/facelets">
+<head>
+  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
+  <title>FOO</title>
+</head>
+<body>
+
+  <h:form>
+    <h:panelGrid columns="2">
+      <h:outputText value='Enter first number'/>
+      <h:inputText value='#{calculator.x}'/>
+      <h:outputText value='Enter second number'/>
+      <h:inputText value='#{calculator.y}'/>
+      <h:commandButton action="#{calculator.add}" value="Add"/>
+    </h:panelGrid>
+  </h:form>
+</body>
+</html>
\ No newline at end of file
Index: src/main/webapp/WEB-INF/faces-config.xml
===================================================================
--- src/main/webapp/WEB-INF/faces-config.xml	(revision 937776)
+++ src/main/webapp/WEB-INF/faces-config.xml	(working copy)
@@ -17,32 +17,7 @@
  * specific language governing permissions and limitations
  * under the License.
 -->
-<faces-config version="1.2" 
-    xmlns="http://java.sun.com/xml/ns/javaee"
-    xmlns:xi="http://www.w3.org/2001/XInclude"
-    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_1_2.xsd">
-	
-
-	<managed-bean>
-		<managed-bean-name>calculator</managed-bean-name>
-		<managed-bean-class>org.superbiz.jsf.CalculatorBean</managed-bean-class>
-		<managed-bean-scope>request</managed-bean-scope>
-	</managed-bean>
-	
-	<navigation-rule>
-		<from-view-id>/calculator.jsp</from-view-id>
-		<navigation-case>
-			<from-outcome>success</from-outcome>
-			<to-view-id>/result.jsp</to-view-id>
-		</navigation-case>
-	</navigation-rule>
-	
-	<navigation-rule>
-		<from-view-id>/result.jsp</from-view-id>
-		<navigation-case>
-			<from-outcome>back</from-outcome>
-			<to-view-id>/calculator.jsp</to-view-id>
-		</navigation-case>
-	</navigation-rule>
-</faces-config>
\ No newline at end of file
+<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" />
\ No newline at end of file
Index: src/main/webapp/WEB-INF/web.xml
===================================================================
--- src/main/webapp/WEB-INF/web.xml	(revision 937776)
+++ src/main/webapp/WEB-INF/web.xml	(working copy)
@@ -18,201 +18,39 @@
  * specific language governing permissions and limitations
  * under the License.
 -->
-<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
-         version="2.4">
+<web-app 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-app_2_5.xsd"
+    version="2.5">
 
-    <description>MyProject web.xml</description>
+  <context-param>
+    <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
+    <param-value>.xhtml</param-value>
+  </context-param>
 
-    <!--optional: context-param>
-        <description>Comma separated list of URIs of (additional) faces config files.
-            (e.g. /WEB-INF/my-config.xml)
-            See JSF 1.0 PRD2, 10.3.2
-            Attention: You do not need to put /WEB-INF/faces-config.xml in here.
-        </description>
-        <param-name>javax.faces.CONFIG_FILES</param-name>
-        <param-value>/WEB-INF/examples-config.xml</param-value>
-    </context-param-->
-    <context-param>
-        <description>State saving method: "client" or "server" (= default)
-            See JSF Specification 2.5.3</description>
-        <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
-        <param-value>client</param-value>
-    </context-param>
-    <context-param>
-        <description>Only applicable if state saving method is "server" (= default).
-            Defines the amount (default = 20) of the latest views are stored in session.</description>
-        <param-name>org.apache.myfaces.NUMBER_OF_VIEWS_IN_SESSION</param-name>
-        <param-value>20</param-value>
-    </context-param>
-    <context-param>
-        <description>Only applicable if state saving method is "server" (= default).
-            If true (default) the state will be serialized to a byte stream before it
-            is written to the session.
-            If false the state will not be serialized to a byte stream.</description>
-        <param-name>org.apache.myfaces.SERIALIZE_STATE_IN_SESSION</param-name>
-        <param-value>true</param-value>
-    </context-param>
-    <context-param>
-        <description>Only applicable if state saving method is "server" (= default) and if
-            org.apache.myfaces.SERIALIZE_STATE_IN_SESSION is true (= default)
-            If true (default) the serialized state will be compressed before it
-            is written to the session. If false the state will not be compressed.</description>
-        <param-name>org.apache.myfaces.COMPRESS_STATE_IN_SESSION</param-name>
-        <param-value>true</param-value>
-    </context-param>
-    <context-param>
-        <description>This parameter tells MyFaces if javascript code should be allowed in the
-            rendered HTML output.
-            If javascript is allowed, command_link anchors will have javascript code
-            that submits the corresponding form.
-            If javascript is not allowed, the state saving info and nested parameters
-            will be added as url parameters.
-            Default: "true"</description>
-        <param-name>org.apache.myfaces.ALLOW_JAVASCRIPT</param-name>
-        <param-value>true</param-value>
-    </context-param>
-    <context-param>
-        <param-name>org.apache.myfaces.DETECT_JAVASCRIPT</param-name>
-        <param-value>false</param-value>
-    </context-param>
-    <context-param>
-        <description>If true, rendered HTML code will be formatted, so that it is "human readable".
-            i.e. additional line separators and whitespace will be written, that do not
-            influence the HTML code.
-            Default: "true"</description>
-        <param-name>org.apache.myfaces.PRETTY_HTML</param-name>
-        <param-value>true</param-value>
-    </context-param>
-    <context-param>
-        <description>If true, a javascript function will be rendered that is able to restore the
-            former vertical scroll on every request. Convenient feature if you have pages
-            with long lists and you do not want the browser page to always jump to the top
-            if you trigger a link or button action that stays on the same page.
-            Default: "false"</description>
-        <param-name>org.apache.myfaces.AUTO_SCROLL</param-name>
-        <param-value>true</param-value>
-    </context-param>
+  <context-param>
+    <param-name>javax.faces.FACELETS_VIEW_MAPPINGS</param-name>
+    <param-value>*.xhtml;*.jspx;*.jsff</param-value>
+  </context-param>
 
-    <context-param>
-        <description>Used for encrypting view state. Only relevant for client side
-            state saving. See MyFaces wiki/web site documentation for instructions
-            on how to configure an application for diffenent encryption strengths.
-        </description>
-        <param-name>org.apache.myfaces.SECRET</param-name>
-        <param-value>NzY1NDMyMTA=</param-value>
-    </context-param>
-
-    <context-param>
-        <description>
-            Validate managed beans, navigation rules and ensure that forms are not nested.
-        </description>
-        <param-name>org.apache.myfaces.VALIDATE</param-name>
-        <param-value>true</param-value>
-    </context-param>
+  <context-param>
+    <param-name>javax.faces.PROJECT_STAGE</param-name>   
+    <param-value>Development</param-value>
+  </context-param>
+  
+  <!--context-param>
+    <param-name>org.apache.myfaces.annotation.SCAN_PACKAGES</param-name>
+    <param-value>net.wessendorf</param-value>
+  </context-param-->
+  
+  <servlet>
+    <servlet-name>Faces Servlet</servlet-name>
+    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
+    <load-on-startup>1</load-on-startup>
+  </servlet>
     
-    <context-param>
-        <description>
-            Treat readonly same as if disabled attribute was set for select elements.
-        </description>
-        <param-name>org.apache.myfaces.READONLY_AS_DISABLED_FOR_SELECTS</param-name>
-        <param-value>true</param-value>
-    </context-param>    
-    
-    <context-param>
-        <description>
-            Use the defined class as the class which will be called when a resource is added to the
-            ExtensionFilter handling. Using StreamingAddResource here helps with performance. If you want to add
-            custom components and want to use the ExtensionFilter, you need to provide your custom implementation here.
-        </description>
-        <param-name>org.apache.myfaces.ADD_RESOURCE_CLASS</param-name>
-        <param-value>org.apache.myfaces.renderkit.html.util.DefaultAddResource</param-value>
-    </context-param>        
+  <servlet-mapping>
+    <servlet-name>Faces Servlet</servlet-name>
+    <url-pattern>/faces/*</url-pattern>
+  </servlet-mapping>
 
-    <context-param>
-        <description>
-            Virtual path in the URL which triggers loading of resources for the MyFaces extended components
-            in the ExtensionFilter.
-        </description>
-        <param-name>org.apache.myfaces.RESOURCE_VIRTUAL_PATH</param-name>
-        <param-value>/faces/myFacesExtensionResource</param-value>
-    </context-param>
-    
-    <context-param>
-        <description>
-            Check if the extensions-filter has been properly configured.
-        </description>
-        <param-name>org.apache.myfaces.CHECK_EXTENSIONS_FILTER</param-name>
-        <param-value>true</param-value>
-    </context-param>    
-
-    <context-param>
-        <description>
-            Define partial state saving as true/false.
-        </description>
-        <param-name>javax.faces.PARTIAL_STATE_SAVING_METHOD</param-name>
-        <param-value>false</param-value>
-    </context-param>    
-
-    <!-- Extensions Filter -->
-    <filter>
-        <filter-name>extensionsFilter</filter-name>
-        <filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
-        <init-param>
-            <description>Set the size limit for uploaded files.
-                Format: 10 - 10 bytes
-                10k - 10 KB
-                10m - 10 MB
-                1g - 1 GB</description>
-            <param-name>uploadMaxFileSize</param-name>
-            <param-value>100m</param-value>
-        </init-param>
-        <init-param>
-            <description>Set the threshold size - files
-                below this limit are stored in memory, files above
-                this limit are stored on disk.
-
-                Format: 10 - 10 bytes
-                10k - 10 KB
-                10m - 10 MB
-                1g - 1 GB</description>
-            <param-name>uploadThresholdSize</param-name>
-            <param-value>100k</param-value>
-        </init-param>
-    </filter>
-
-    <filter-mapping>
-        <filter-name>extensionsFilter</filter-name>
-        <url-pattern>*.jsf</url-pattern>
-    </filter-mapping>
-    <filter-mapping>
-        <filter-name>extensionsFilter</filter-name>
-        <url-pattern>/faces/*</url-pattern>
-    </filter-mapping>
-
-    <!-- Listener, to allow Jetty serving MyFaces apps -->
-    <listener>
-        <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
-    </listener>
-
-    <!-- Faces Servlet -->
-    <servlet>
-        <servlet-name>Faces Servlet</servlet-name>
-        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
-        <load-on-startup>1</load-on-startup>
-    </servlet>
-
-    <!-- Faces Servlet Mapping -->
-    <servlet-mapping>
-        <servlet-name>Faces Servlet</servlet-name>
-        <url-pattern>*.jsf</url-pattern>
-    </servlet-mapping>
-
-    <!-- Welcome files -->
-    <welcome-file-list>
-        <welcome-file>index.jsp</welcome-file>
-        <welcome-file>index.html</welcome-file>
-    </welcome-file-list>
-
-</web-app>
+</web-app>
\ No newline at end of file
Index: src/main/webapp/result.xhtml
===================================================================
--- src/main/webapp/result.xhtml	(revision 0)
+++ src/main/webapp/result.xhtml	(revision 0)
@@ -0,0 +1,33 @@
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+      xmlns:f="http://java.sun.com/jsf/core"
+      xmlns:h="http://java.sun.com/jsf/html"
+      xmlns:ui="http://java.sun.com/jsf/facelets">
+<head>
+  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
+  <title>FOO</title>
+</head>
+<body>
+  <h2>Result of adding #{calculator.x} and #{calculator.y} is #{calculator.result }</h2>
+  <h:link outcome="calculator" styleClass="menu_link">Home</h:link>
+</body>
+</html>
\ No newline at end of file
Index: src/main/webapp/index.html
===================================================================
--- src/main/webapp/index.html	(revision 0)
+++ src/main/webapp/index.html	(revision 0)
@@ -0,0 +1,23 @@
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<html>
+<head>
+  <meta HTTP-EQUIV="REFRESH" content="0; url=faces/calculator.xhtml">
+</head>
+</html>
\ No newline at end of file
Index: pom.xml
===================================================================
--- pom.xml	(revision 937776)
+++ pom.xml	(working copy)
@@ -73,29 +73,16 @@
     <dependency>
       <groupId>org.apache.myfaces.core</groupId>
       <artifactId>myfaces-api</artifactId>
-      <version>1.2.2</version>
+      <version>2.0.0</version>
       <scope>compile</scope>
     </dependency>
     <dependency>
       <groupId>org.apache.myfaces.core</groupId>
       <artifactId>myfaces-impl</artifactId>
-      <version>1.2.2</version>
+      <version>2.0.0</version>
       <scope>compile</scope>
     </dependency>
     <dependency>
-      <groupId>org.apache.myfaces.tomahawk
-      </groupId>
-      <artifactId>tomahawk</artifactId>
-      <version>1.1.6</version>
-      <scope>runtime</scope>
-      <exclusions>
-        <exclusion>
-          <artifactId>jstl</artifactId>
-          <groupId>javax.servlet</groupId>
-        </exclusion>
-      </exclusions>
-    </dependency>
-    <dependency>
       <groupId>jstl</groupId>
       <artifactId>jstl</artifactId>
       <version>1.2</version>
