V tom pipade napisi muj priklad jelikoz si to potrebuji ujasnit na necem 
jednoduchem...

Toto je web.xml ...funkcne nastavene na filtruj vsechno 

<?xml version="1.0" encoding="UTF-8"?>
<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">

    <!-- Filter for Sitemesh -->
    <filter>
        <filter-name>sitemesh</filter-name>
        
<filter-class>com.opensymphony.module.sitemesh.filter.PageFilter</filter-class>
    </filter>

    <servlet>
        <servlet-name>sample</servlet-name>
        <servlet-class>
            org.springframework.web.servlet.DispatcherServlet
        </servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>sample</servlet-name>
        <url-pattern>/sample/*</url-pattern>
    </servlet-mapping>

    <!-- All requests should go through sidemesh filter -->
    <filter-mapping>
        <filter-name>sitemesh</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
            /WEB-INF/applicationContext*.xml
        </param-value>
    </context-param>
    <listener>
        <listener-class>
            org.springframework.web.context.ContextLoaderListener
        </listener-class>
    </listener>
</web-app>

Decorator ma cestu k souboru 
<decorators>
    <decorator name="meDecorator" page="/decorators/decorator.jsp">
        <pattern>*</pattern>
</decorators>

A ve springu je jen definice url na controller ktery zobrazuje jednoduchy 
freemarker template...

A pokud toto pridam do web.xml

    <!--Declare servlet for handling freemarker requests -->
    <servlet>
        <servlet-name>sitemesh-freemarker</servlet-name>
        
<servlet-class>com.opensymphony.module.sitemesh.freemarker.FreemarkerDecoratorServlet</servlet-class>
        <init-param>
            <param-name>TemplatePath</param-name>
            <param-value>/decorators/</param-value>
        </init-param>
        <init-param>
            <param-name>default_encoding</param-name>
            <param-value>ISO-8859-1</param-value>
        </init-param>
    </servlet>     

    
    <servlet-mapping>
        <servlet-name>sitemesh-freemarker</servlet-name>
        <url-pattern>*.dec</url-pattern>
    </servlet-mapping>  

A toto do decoderu.xml

        <decorator name="frDecorator" page="/decorators/freemarkerDec.dec">
        <pattern>/*.dec</pattern>
    </decorator>   

Pokud to volam /sample/index.dec

Tak to prevezme filter a ne sitemesh-freemarker
A bez filteru  sitemesh to zobrazi oroginal freemarker template.

Premyslim zda jen nechapu jak poskladat vice filteru, a servletu dohromady.

Diky za odpoved

-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf 
Of Filip Jirsák
Sent: Wednesday, February 25, 2009 12:26 PM
To: Java
Subject: Re: Sitemesh - decodery ve freemarkeru

Dobré odpoledne,
nevím, jaký případ řešíte konkrétně, ale obecně to funguje tak, že
servlet engine postupně prochází filtry odpovídající danému URL v
pořadí, v jakém jsou definovány, a nakonec (pokud zpracování nějaký
filtr nepřeruší nebo nepřesměruje jinam) se řízení předá jedinému
servletu, jeho vzor URL nejlépe odpovídá požadovanému URL. Jak přesně
se stanovuje, zda filtr patří k danému URL nebo ne a jak se stanovuje
pořadí toho, zda URL odpovídá vzoru servletu, najdete ve specifikaci,
není to zas tak jednoduché.

Pokud například nastavíte Freemarker, aby zpracovával cestu *.ftl, a
příslušné šablony nebudou v cestě, jejíž prefix by zpracovával nějaký
jiný servlet (např. nebudou v cestě /sablony/sablona.ftl v prípadě,
kdy existuje servlet pro cestu /sablony/*), stačí zavolat cestu s
koncovkou .ftl a příslušný soubor bude zpracován Freemarkerem.

S pozdravem

Filip Jirsák

Dne 25. únor 2009 11:42 Petr Pokorný <[email protected]> napsal(a):
> Zdravim konferenci,
> potrebuji poradit o Sitemesh jako serveltu freemarkeru.
>
> Mam rozchozeny projekt kde mam Spring, freemarker a Sitemesh jako filtr.
> Funguje to bez probelmu. Dekodery jsou psane v JSP.
> Nejak si nedokazi dat dohroamdy, pridani servletu- freemarkeru, tak aby jsme
> mohli psat dekodery taky ve freemarkeru.
>
> Koukal jsem se na stranky Sitemesh, a vzal si tam ten jejich priklad a uz
> nekolikaty den to resim, bud si nedokazi poskladat jak pospolu funguje vice
> servletu  a filter  .. nebo tam mam nejakou jinou chybu.
>
> Mate nekdo o tom prehled, aby jste poradil jak to jednoduse s ungujiciho
> filteru prevest na freemarker servlet decoder?
>
> Diky za podporu
>
>
> Jsem spozdravem Petr Pokorny
>
>
> __________ Informace od ESET Smart Security, verze databaze 3876 (20090221)
> __________
>
> Tuto zpravu proveril ESET Smart Security.
>
> http://www.eset.cz
>
>
>



-- 
Filip Jirsák
[email protected]
 

__________ Informace od ESET Smart Security, verze databaze 3876 (20090221) 
__________

Tuto zpravu proveril ESET Smart Security.

http://www.eset.cz
 

Odpovedet emailem