Hello,

The thing is that if I use my managed bean in a single
page is working fine but when I'm using it in tiles
it's not working anymore.
Yes the page that I'm redirecting to is in a tile too
but I tried before in the same tiles just changing a
tile of the tiles.
I would be very thankfull if you could send some
working code with tile JSF and managed Bean.

Great Regards Everyone

So there it is my code in details:

faces-config.xml:
<faces-config>

  <application>
  
<view-handler>org.apache.myfaces.application.jsp.JspTilesViewHandlerImpl</view-handler>
   
<message-bundle>resources.application</message-bundle>
    <locale-config>
      <default-locale>en</default-locale>
    </locale-config>
  </application>

  <managed-bean>
        <managed-bean-name>mairie</managed-bean-name>
  
<managed-bean-class>com.metier.Mairie</managed-bean-class>
        <managed-bean-scope>session</managed-bean-scope>
  </managed-bean>
  
  <managed-bean>
  
<managed-bean-name>etablissement</managed-bean-name>
  
<managed-bean-class>com.metier.Etablissement</managed-bean-class>
        <managed-bean-scope>session</managed-bean-scope>
  </managed-bean>
  
  <navigation-rule>
        <from-view-id>*</from-view-id>
        <navigation-case>
                <from-outcome>navEtablissement</from-outcome>
                <to-view-id>/etablissement.tiles</to-view-id>
        </navigation-case>
        
        <navigation-case>
                <from-outcome>navMairie</from-outcome>
                <to-view-id>/mairie.tiles</to-view-id>
        </navigation-case>
        
        <navigation-case>
                <from-outcome>navDeclaration</from-outcome>
                <to-view-id>/declaration.tiles</to-view-id>
        </navigation-case>
  </navigation-rule>
  
  <navigation-rule>
        <from-view-id>/pages/bodyMairie.jsp</from-view-id>
        <navigation-case>
                <from-action>#{mairie.addE}</from-action>
                <from-outcome>sucess</from-outcome>
                <to-view-id>/pages/bodyMairie.jsp</to-view-id>
        </navigation-case>
  </navigation-rule>

</faces-config>




and now the tiles-def.xml:
<tiles-definitions>

    <definition name="main.layout"
path="/pages/template.jsp" >
        <put name="header" value="/pages/header.jsp"
/>
        <put name="footer" value="/pages/footer.jsp"
/>
    </definition>
    
    <definition name="accueil.tiles"
extends="main.layout" >
        <put name="menu" value="/pages/menu.jsp" />
        <put name="body" value="/pages/body.jsp" />
    </definition>

        <definition name="mairie.tiles" extends="main.layout"
>
        <put name="menu" value="/pages/menu.jsp" />
        <put name="body" value="/pages/bodyMairie.jsp"
/>
    </definition>
    
    <definition name="etablissement.tiles"
extends="main.layout" >
        <put name="menu" value="/pages/menu.jsp" />
        <put name="body"
value="/pages/bodyEtablissement.jsp" />
    </definition>
    
    <definition name="declaration.tiles"
extends="main.layout" >
        <put name="menu" value="/pages/menu.jsp" />
        <put name="body"
value="/pages/bodyDeclaration.jsp" />
    </definition>
    
    <definition name="toto.layout"
path="/pages/templateEssai.jsp" >
                <put name="gauche" value="/pages/body.jsp" />
        <put name="droite" value="/pages/body.jsp" />
    </definition>
    
    <definition name="toto2.layout"
extends="toto.layout" >
        <put name="gauche" value="/pages/body.jsp" />
        <put name="droite" value="/pages/body.jsp" />
    </definition>
</tiles-definitions>

the body of template.jsp:
<body>
<div id="dconteneur" class="dconteneur">
  <div id="dmenu" class="dmenu">
    <f:subview id="menu">
      <tiles:insert attribute="menu" flush="false" />
    </f:subview>
  </div>

   <div id="dheader" class="dheader">
      <f:subview id="header">
        <tiles:insert attribute="header"
flush="false"/>
      </f:subview>
   </div>
   
   <div id="dbody" class="dbody">
     <f:subview id="content">
        <tiles:insert attribute="body" flush="false"/>
     </f:subview>
  </div>
  
  <div id="dfooter" class="dfooter">
     <f:subview id="footer">
        <tiles:insert attribute="footer"
flush="false"/>
     </f:subview>
  </div>
  
</div>
</body>

and finally bodyMairie.jsp the jsp in tile that make
the call to the action to add an element to the
dataTable:
<%@ taglib uri="http://java.sun.com/jsf/html";
prefix="h" %>
<%@ taglib uri="http://java.sun.com/jsf/core";
prefix="f"%>
<%@ taglib uri="http://myfaces.apache.org/tomahawk";
prefix="t" %>

<f:view>
        <h:form>
                <h:outputText value="#{mairie.nom}"/>
        
                <h:dataTable binding="#{mairie.dataTable}"
value="#{mairie.listeEtablissement}" var="etab"
border="1">
                        <h:column>
                                <f:facet name="header">
                                        <f:verbatim> Nom 
Etablissement</f:verbatim>
                                </f:facet>
                                <h:outputText value="#{etab.nom}"/>
                        </h:column>
                        
                        <h:column>
                                <f:facet name="header">
                                        <f:verbatim> Raison Sociale</f:verbatim>
                                </f:facet>
                                <h:outputText value="#{etab.raisonSociale}"/>
                        </h:column>
                        
                        <h:column>
                                <f:facet name="header">
                                        <f:verbatim> Numero Siret</f:verbatim>
                                </f:facet>
                                <h:outputText value="#{etab.numeroSiret}"/>
                        </h:column>
                        
                        <h:column>
                                <f:facet name="header">
                                        <f:verbatim> Supprimer</f:verbatim>
                                </f:facet>
                                <h:selectBooleanCheckbox
binding="#{mairie.checkBox}"/>
                        </h:column>
                        
                </h:dataTable>
                
        </h:form>
        
        <h:commandLink id="lkE" action="#{mairie.addE}"
immediate="true">
                        <h:outputText value="Add"/>
        </h:commandLink>

        
        
</f:view>       
        


--- Marco Mistroni <[EMAIL PROTECTED]> a écrit :

> Hello,
>    i am using Tiles with JSF, and it works just
> fine...
> can you tell me what do you think is the problem?
> 
> what about the page that you are redirecting to? is
> it using a tiles
> template?
> 
> i can post privately some of my pages if you need
> (or even the whole
> app since i truns with in-memory database)
> 
> regards
>  marco
> 
> On 2/16/06, CHAMBAZ Alexandre
> <[EMAIL PROTECTED]> wrote:
> >
> > Thanks for all Matthias and Alexandre,
> >
> > Exactly what I was looking for. So it looks it
> would
> > be hard to do what I'm looking for, I think I
> willl
> > have to give up Tiles with JSF ;-(
> >
> > Extract of the presentation:
> >
> > Apache Tiles
> > Things that can go wrong
> >
> > • Navigation rules are relative to the top viewId
> > • Not the tile
> > • Tool support is surprisingly thin
> > • JSF backing beans can't see tiles
> >
> >
> >
> > --- Matthias Wessendorf <[EMAIL PROTECTED]> a
> > écrit :
> >
> > > here goes the link
> > >
> > >
> >
>
http://developers.sun.com/learning/javaoneonline/2005/webtier/TS-7853.pdf
> > >
> > >
> > >
> > > On 2/16/06, Alexandre Poitras
> > > <[EMAIL PROTECTED]> wrote:
> > > > There is a lot of issues when using Tiles in
> JSF
> > > since Tiles is not a
> > > > JSF component. Watch the "Extreme Reuse in
> > > JavaServer Faces
> > > > Technology" JavaOne 2005 presentation if you
> want
> > > to know what I'm
> > > > talking about. You should use Facelets or
> > > Shale-Clay instead.
> > > >
> > > > On 2/16/06, CHAMBAZ Alexandre
> > > <[EMAIL PROTECTED]> wrote:
> > > > > Thanks for you're help but still not
> working. I
> > > tried
> > > > > a lot of different combination of navigation
> > > rule but
> > > > > it's never working. My problme is not
> navigation
> > > but
> > > > > more in the action thing. I think I need to
> > > force JSF
> > > > > to send the action to a specific page, how
> can I
> > > do
> > > > > that?
> > > > >
> > > > > Here is my faces-config.xml:
> > > > > <navigation-rule>
> > > > >         <from-view-id>*</from-view-id>
> > > > >         <navigation-case>
> > > > >
> > > <from-outcome>navEtablissement</from-outcome>
> > > > >
> > > <to-view-id>/etablissement.tiles</to-view-id>
> > > > >         </navigation-case>
> > > > >
> > > > >         <navigation-case>
> > > > >
> > > <from-outcome>navMairie</from-outcome>
> > > > >
> > > <to-view-id>/mairie.tiles</to-view-id>
> > > > >         </navigation-case>
> > > > >
> > > > >         <navigation-case>
> > > > >
> > > <from-outcome>navDeclaration</from-outcome>
> > > > >
> > > <to-view-id>/declaration.tiles</to-view-id>
> > > > >         </navigation-case>
> > > > >   </navigation-rule>
> > > > >
> > > > > Here it's my command button in a jsf page of
> my
> > > > > tile(composed of 4 pages):
> > > > > <h:commandLink id="lkE"
> action="#{mairie.addE}"
> > > > > immediate="true">
> > > > >                         <h:outputText
> > > value="Add"/>
> > > > >         </h:commandLink>
> > > > >
> > > > > and here it's the method called of my
> managed
> > > bean
> > > > > used:
> > > > > public String addE() {
> > > > >         .....
> > > > >                 return "sucess";
> > > > >         }
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > --- Matthias Wessendorf
> <[EMAIL PROTECTED]>
> > > a
> > > > > écrit :
> > > > >
> > > > > > fast shot,
> > > > > >
> > > > > > -suround your button w/ <h:form>
> > > > > > -ensure that you are using *global*
> navigation
> > > like
> > > > > >     <navigation-rule>
> > > > > >         <from-view-id>*</from-view-id>
> > > > > >         <navigation-case>
> > > > > >
> > > <from-outcome>nav_page1</from-outcome>
> > > > > >
> > > <to-view-id>/page1.jsp</to-view-id>
> > > > > >         </navigation-case>
> > > > > >         <navigation-case>
> > > > > >
> > > <from-outcome>nav_page2</from-outcome>
> > > > > >
> > > <to-view-id>/page2.jsp</to-view-id>
> > > > > >         </navigation-case>
> > > > > >         <navigation-case>
> > > > > >
> > > <from-outcome>nav_page3</from-outcome>
> > > > > >
> > > <to-view-id>/non-tile.jsp</to-view-id>
> > > > > >         </navigation-case>
> > > > > >         <navigation-case>
> > > > > >
> > > <from-outcome>nav_page4</from-outcome>
> > > > > >
> > > <to-view-id>/page4.jsp</to-view-id>
> > > > > >         </navigation-case>
> > > > > >     </navigation-rule>
> > > > > >
> > > > > >
> > > > > > On 2/15/06, CHAMBAZ Alexandre
> > > > > > <[EMAIL PROTECTED]> wrote:
> > > > > > > Hi everybody,
> > > > > > >
> > > > > > > I'm develloping a JSF Site with Tiles
> (from
> > > > > > Struts)
> > > > > > > using   the Tomahawk (I'm new in JSF
> > > programming
> > > > > > >
> > > > > >
> > > > >
> > >
> >
>
)org.apache.myfaces.application.jsp.JspTilesViewHandlerImpl
> > > > > > > support. The tile thing is working well.
> But
> > > when
> > > > > > I'm
> > > > > > > doing action in a jsf (with a command
> > > button) it's
> > > > > > not
> > > > > > > working.
> > > > > > >
> > > > > > > Here what I've got:
> > > > > > >
> > > > > > > body.jsp : <h:commandButton value="add"
> > > > > > > action="#{bean.add}"/>
> > > > > > > this page works well alone adding an
> element
> > > to a
> > > > > > > table
> > > > > > >
> 
=== message truncated ===



        

        
                
___________________________________________________________________________ 
Nouveau : téléphonez moins cher avec Yahoo! Messenger ! Découvez les tarifs 
exceptionnels pour appeler la France et l'international.
Téléchargez sur http://fr.messenger.yahoo.com

Reply via email to