demetrio812

25 August 2007

Install Tomahawk in a seam-gen generated project

Hi,
installing Tomahawk in a Facelets + Seam + JSF project (generated by seam-gen) is really simple:
  1. Add library tomahawk*.jar in lib directory (download from http://myfaces.apache.org/tomahawk/)

  2. Also add those dependencies:
  3. Inside directory resources/WEB-INF create a file named tomahawk.taglib.xml and fill in with contents that you find in the example section to this address: http://wiki.apache.org/myfaces/Use_Facelets_with_Tomahawk
    or you can download it from here.

  4. in web.xml add:

    <context-param>
    <param-name>facelets.LIBRARIES</param-name>
    <param-value>/WEB-INF/tomahawk.taglib.xml</param-value>
    </context-param>
    <!-- Tomahawk -->
    <filter>
    <filter-name>MyFacesExtensionsFilter</filter-name>
    <filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
    <init-param>
    <param-name>maxFileSize</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>

  5. In build.xml, in < todir="${war.dir}/WEB-INF/lib"> section , inside the < dir="${lib.dir}"> tag, add:

    <name="tomahawk*.jar">
    <name="commons-codec*.jar">
    <name="commons-el*.jar">
    <name="commons-fileupload*.jar">
    <name="commons-lang*.jar">
    <name="commons-logging*.jar">
    <name="commons-validator*.jar">
    <name="commons-validator*.js">
    <name="jakarta-oro*.jar">


  6. To use the library in xhtml pages:

    xmlns:t="http://myfaces.apache.org/tomahawk"
Btw THERE IS A PROBLEM: I just found that after adding Tomahawk library the Seam file upload doesn't work, I will tell you more in another post...

Demetrio Filocamo

P.S.: sorry for bad code posting (I putted a space to make tag visibles), I have to find the time to configure an appropriate css style for code showing.

Labels: , , ,

2 Comments:

  • Thanks very much! I've been playing around with this for most of the day before finding your post. Spot on and worked first time. Now I've just got to get my scheduler working.....

    By Blogger Spikeheap, At April 22, 2008 at 6:51 PM  

  • hi demetrio

    I had a problem I'd like to share with you.
    I had a problem with t:calendar and seam. calendar did not work on internet explorer 7.
    after a lot of debugging I discovered that swapping filter order (seam filter and tomahawk filter) solved my problem.
    then I noticed that now the s:fileupload did not work any more.
    swapping again filter order fixed upload and broken calendar again.

    all that I can say is that filters both access to external resources (file for file upload and js for t:calendar).

    I hope this can help someone.

    g. naddeo.
    feel free to send me an email
    g dot naddeo at gmail

    By Anonymous Anonymous, At July 19, 2009 at 1:23 PM  

Post a Comment

Subscribe to Post Comments [Atom]



<< Home