sexta-feira, 7 de maio de 2010

Configurando JSF 1.2 + Tomahawk (Parte 2)

Seguindo com o tutorial de como Configurar o JSF 1.2 + Tomahawk:

Arquivo WEB.XML
<?xml version="1.0" encoding="UTF-8"?>

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" 
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID"
version="2.5">

<servlet>

<servlet-name>Faces Servlet</servlet-name>

<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>

<load-on-startup>1</load-on-startup>

</servlet>

<servlet-mapping>

<servlet-name>Faces Servlet</servlet-name>

<url-pattern>*.jsf</url-pattern>

</servlet-mapping>

<filter>

<filter-name>MyFacesExtensionsFilter</filter-name>

<filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>

<init-param>

<param-name>uploadMaxFileSize</param-name>

<param-value>20m</param-value>

</init-param>

</filter>

<!-- extension mapping for adding <script/>, <link/>, and other 
resource tags to JSF-pages -->

<filter-mapping>

<filter-name>MyFacesExtensionsFilter</filter-name>

<!-- servlet-name must match the name of your
 javax.faces.webapp.FacesServlet entry -->

<servlet-name>Faces Servlet</servlet-name>

</filter-mapping>

<!-- extension mapping for serving page-independent resources
 (javascript, stylesheets, images, etc.) -->

<filter-mapping>

<filter-name>MyFacesExtensionsFilter</filter-name>

<url-pattern>/faces/myFacesExtensionResource/*</url-pattern>

</filter-mapping>

<welcome-file-list>

<welcome-file>index.jsp</welcome-file>

<welcome-file>index.html</welcome-file>

</welcome-file-list>

</web-app>
Notas do arquivo WEB.XML
A linha 19 é a extensão das páginas que serão chamadas. Você pode estar alterando isto. Neste modelo, você chamará as paginas com jsf com a extensão .jsf (ex. http://localhost:8080/MeuProjeto/ola.jsf)

Da linha 23 até a linha 59, são os Filtros de extensão (não são necessárias essas linhas caso use JSF puro, elas são necessárias para o uso do Tomahawk). Tive bastante problema com isso... não conseguia rodar minha aplicação, depois verifiquei no site http://myfaces.apache.org/tomahawk/extensionsFilter.html a necessidade dessa configuração no WEB.XML para o Tomahawk.

Inicie o servidor e pronto!

Configurando JSF 1.2 + Tomahawk (Parte 1)


Ambiente utilizado:
Eclipse Galileo
Tomcat v6.0 - ( A versão 5.5 do Tomcat foi inconsistente com JSF versão 1.2 )

Os downloads dos JARS necessários: (versão 1.2 do jsf)

Baixar arquivo mojarra-1.2_14-binary (Que são os jars do JSF)
https://javaserverfaces.dev.java.net/
Extraindo os arquivos deste, vá na pasta LIB e copie os jars: jsf-api.jar e jsf-impl.jar, para pasta WEB-INF/LIB do seu projeto.

Baixar arquivo myfaces-core-1.2.8-bin (Que são os 'commons')
http://www.apache.org/dyn/closer.cgi/myfaces/binaries/myfaces-core-1.2.8-bin.zip
Extraindo os arquivos deste, vá na pasta LIB e copie os 8 jars:
commons-beanutils-1.7.0
commons-codec-1.3
commons-collections-3.2
commons-digester-1.8
commons-discovery-0.4
commons-logging-1.1.1
myfaces-api-1.2.8
myfaces-impl-1.2.8
Para pasta WEB-INF/LIB do seu projeto.

Baixar a JSTL v1.2 copiar suas duas libs ( jstl-api-1.2.jar e jstl-impl-1.2 ) para WEB-INF/LIB do seu projeto

Baixar tomahawk12-1.1.9-bin no site (Atenção que é o Tomahawk para JSF 1.2!)
http://www.apache.org/dyn/closer.cgi/myfaces/binaries/tomahawk12-1.1.9-bin.tar.gz
Extraindo os arquivos deste, vá na pasta LIB e copie o jar tomahawk12-1.1.9, para pasta WEB-INF/LIB do seu projeto.

Baixar commons-fileupload-1.2.1-bin no site
http://commons.apache.org/fileupload/download_fileupload.cgi
Extraindo os arquivos deste, vá na pasta LIB e copie apenas o jar commons-fileupload-1.2.1, para pasta WEB-INF/LIB do seu projeto.

Baixar commons-lang-2.5-bin.tar no site
http://commons.apache.org/lang/download_lang.cgi
Extraindo os arquivos deste, copie apenas o jar commons-lang-2.5, para pasta WEB-INF/LIB do seu projeto.

Na pasta lib do meu projeto então ficaram 15 jars ao todo.

Na Parte 2 segue as configurações dos arquivos WEB.XML e FACES-CONFIG.XML