Hi

COnnection refused seem to ring a bell : Are you running on Tomcat 4 ?
If so you need a temp directory under Tomcat root directory. This
because there are stuff that needs to be expanded from some jars.

Hermod

-----Original Message-----
From: Neal Haggard [mailto:[EMAIL PROTECTED]
Sent: Wednesday, March 16, 2005 5:36 PM
To: MyFaces Discussion; [EMAIL PROTECTED]
Subject: RE: commandButton does not work with Tiles


That helps, yes, for navigation components I can definitely see that.
My issue would be that if we had:

Tiles.xml:

    <definition name="myLayout" path="/visualComps/myLayout.jsp">
       <put name="header" value="/visualComps/header.jsp" />
       <put name="search" value="/visualComps/search.jsp" />
       <put name="body" value="" />
       <put name="footer" value="/visualComps/footer.jsp" />
    </definition>
    
    <definition name="/foo.tiles" extends="myLayout">
                <put name="body" value="foo.jsp" /> 
    </definition>

I had envisioned that all my controls that were in the actual foo.jsp
(and each subsequent page) would have to use a global navigation rule.
Glad to hear that I can still have:

        <navigation-rule>
                <from-view-id>/foo.jsp</from-view-id>
                <navigation-case>
                        <from-outcome>success</from-outcome>
                        <to-view-id>/foo-success.jsp</to-view-id>
                </navigation-case>
        </navigation-rule>

I was envisioning having to do:

        <navigation-rule>
                <from-view-id>*</from-view-id>
                <navigation-case>
                        <from-outcome>foo-success</from-outcome>
                        <to-view-id>/foo-success.jsp</to-view-id>
                </navigation-case>
        </navigation-rule>

This will likely come out in a future mail to the list (I just joined
yesterday), but I'm getting IO errors (Connection Refused) when the
Tiles plugin tries to load /WEB-INF/tiles.xml.  I'm going back and
trying running the sample MyFaces-tiles-example app to see if it has the
same issue.
                

-----Original Message-----
From: Matthias Wessendorf [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, March 16, 2005 11:18 AM
To: MyFaces Discussion
Subject: Re: commandButton does not work with Tiles

Neal,

for instance you have navigation.jsp, that uses <h:commandLink
action="showBarPage" ...../> for navigation to other pages inside your
app, so you need faces-config.xml to realize that.

Now let's look at subviews (Tiles is the same, since a tile is embedded
inside a subview).

You have pages like:
-foo.jsp
-bar.jsp
-myPage.jsp

all off the include navigation.jsp as subview (eg.
<f:subview="navi"><jsp:include page="navigation.jsp"/></f:subview>
or with Tiles)

so each of that pages, *show* the navigation

if the foo.jsp is displayed(foo.jsf in browser), the view-id is
"foo.jsp"

ok, if your faces-config navigation rule looks like:

        <navigation-rule>
                <from-view-id>/navigation.jsp</from-view-id>
                <navigation-case>
                        <from-outcome>showBarPage</from-outcome>
                        <to-view-id>/bar.jsp</to-view-id>
                </navigation-case>
        </navigation-rule>


that does not work,

but if you have <from-view-id>/foo.jsp</from-view-id>
that will work.


ok, now let's look what happens when bar.jsf (view-id "bar.jsp") is
shown in the browser.

your navigation rules looks now:

        <navigation-rule>
                <from-view-id>/foo.jsp</from-view-id>
                <navigation-case>
                        <from-outcome>showBarPage</from-outcome>
                        <to-view-id>/bar.jsp</to-view-id>
                </navigation-case>
        </navigation-rule>


yes, that doesn't work.

so add an other

        <navigation-rule>
                <from-view-id>/bar.jsp</from-view-id>
                <navigation-case>
                        <from-outcome>showBarPage</from-outcome>
                        <to-view-id>/bar.jsp</to-view-id>
                </navigation-case>
        </navigation-rule>

that works.

Now you have two rules
        <navigation-rule>
                <from-view-id>/bar.jsp</from-view-id>
                <navigation-case>
                        <from-outcome>showBarPage</from-outcome>
                        <to-view-id>/bar.jsp</to-view-id>
                </navigation-case>
        </navigation-rule>
        <navigation-rule>
                <from-view-id>/foo.jsp</from-view-id>
                <navigation-case>
                        <from-outcome>showBarPage</from-outcome>
                        <to-view-id>/bar.jsp</to-view-id>
                </navigation-case>
        </navigation-rule>


A navigation rule like the first we talked about won't work!
Only if you are interessted in viewing navigation.jsp (but
navigation.jsp couldn't be presented since it has no <f:view>, because
it is designed to be a *subview*

However, so instead of having two or more rules for the one navigation
rule (<h:commandLink action="showBarPage" ...../>) from navigation.jsp
why not using *global* one ?

        <navigation-rule>
                <from-view-id>*</from-view-id>
                <navigation-case>
                        <from-outcome>showBarPage</from-outcome>
                        <to-view-id>/bar.jsp</to-view-id>
                </navigation-case>
        </navigation-rule>


I hope it was clear to you :)
-Matthias



Neal Haggard wrote:
> Matthias,
> 
>       I have a question about 'you must use "global" navigation rulez
for command components'.  Why was this decided?  Why can't the sub-view
find the view-id for the parent?  I'm new to JSF, so please forgive any
ignorance here.
> 
>       My group is trying to evaluate how to move to JSF and we thought
we were going with MyFaces due to it's built-in tiles support.  However,
we're talking about a large application.  I have a feeling trying to use
global-navigation rules will not scale well as we get into the hundreds
of pages.
> 
> Neal   
> 
> -----Original Message-----
> From: Vinod Singh [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, March 16, 2005 12:10 AM
> To: MyFaces Discussion
> Subject: Re: commandButton does not work with Tiles
> 
> 
> Hi Matthias,
> 
> Here I am saying that when I click on the submit button 
> (<h:commandButton id="submit" action="#{Persister.saveClient}" value
> 
>>="#{Message.client_submit_button}" />) then method
>>Persister.saveClient()
> 
> is not called. If I use this page without tiles then this method is
called.
> 
> Thanks,
> 
> Vinod
> 
> 
> 
> Vinod,
> 
> when you use Subviews (<f:subview/>)
> 
> then you must use "global" navigation rulez for
> 
> command components (commadnButton or commandLink)
> 
> if you use something like:
> 
> <h:commandButton id="submit" action="myoutcome" value 
> ="#{Message.client_submit_button}" />
> 
> you must have something like that in faces.-config.xml
> 
> 
> 
>            <navigation-rule>
>                      <from-view-id>*</from-view-id>
>                      <navigation-case>
>                                <from-outcome>myoutcome</from-outcome>
> 
> <to-view-id>/myPageWithTiles.jsp</to-view-id>
>                      </navigation-case>
>            </navigation-rule>
> 
> 
> HTH,
> Matthias
> 
> 
> Vinod Singh wrote:
> 
>>Hi All,
>>
>>I have created a simple jsf page, when I acces this page without tiles
> 
> then
> 
>>everything works fine but with tiles control does not transfer to the 
>>desired class specified in the action attribute of commandButton.
>>
>>Can anybody tell where I am wrong?
>>
>>Thanks,
>>
>>Vinod
>>
>>
>><%@ taglib uri="http://java.sun.com/jsf/html"; prefix="h" %> <%@ taglib

>>uri="http://java.sun.com/jsf/core"; prefix="f" %> <f:loadBundle 
>>basename="Message" var="Message"/>
>>
>><f:view>
>><html>
>><head><title>Client</title></head>
>>  <body>
>>    <h:form id="clientForm">
>>      <h:message for="clientForm" /><br />
>>      <h:panelGrid columns="3">
>>        <h:outputText value="#{Message.client_name_label}" />
>>        <h:inputText id="client_id" value="#{Client.client_id}" 
>>required
> 
> ="
> 
>>true">
>>          <f:validateLength maximum="30" minimum="3" />
>>        </h:inputText>
>>        <h:message for="client_id" />
>>
>>        <h:outputText value="#{Message.client_desc_label}" />
>>        <h:inputText id="description" value="#{Client.description}"
>>required="true">
>>          <f:validateLength maximum="50" minimum="1" />
>>        </h:inputText>
>>        <h:message for="description" />
>>        <h:commandButton id="submit" action="#{Persister.saveClient}"
> 
> value
> 
>>="#{Message.client_submit_button}" />
>>      </h:panelGrid>
>>    </h:form>
>>  </body>
>></html>
>></f:view>


* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

This email with attachments is solely for the use of the individual or
entity to whom it is addressed. Please also be aware that the DnB NOR Group
cannot accept any payment orders or other legally binding correspondence with
customers as a part of an email. 

This email message has been virus checked by the virus programs used
in the DnB NOR Group.

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

Reply via email to