You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Ryan Wynn <rw...@us.ibm.com> on 2005/10/11 19:55:33 UTC

Postback not occuring for Clay html full view

I am using shale/clay html full view.  I have an initial page, index.html, 
which contains a commandLink to another page, page2.html.

index.html

<html>
<body>
<form jsfid="form">
        <a jsfid="page2Link">Page 2</a>
</form>
</body>
</html> 

clay-config.xml
...
<component jsfid="page2Link" extends="commandLink" allowBody="false">
        <attributes>
                <set name="value" value="Goto Page 2" />
                <set name="action" value="#{index.page2}" />
                <set name="immediate" value="true" /> 
        </attributes>
</component>
...

index is configured as in faces-config.xml and implements ViewController. 

When I click on page2Link I see that the following is happening...

Oct 11, 2005 1:42:47 PM org.apache.shale.clay.faces.ClayViewHandler 
restoreView
INFO: Clay template restoreView for /index.jsp
init called
prerender called
Oct 11, 2005 1:42:47 PM org.apache.shale.clay.faces.ClayViewHandler 
renderView
INFO: Clay template renderView for /index.jsp
destroy called

My action handler is not being called so the navigation is not occuring 
and the preprocess cycle is not being invoked.

Any ideas?




Re: Postback not occuring for Clay html full view

Posted by Martin Gainty <mg...@hotmail.com>.
Ryan

the Clay dcumentation at
http://struts.apache.org/shale/features.html#view
For each JavaServer Faces view that you wish to associate with a 
ViewController backing bean, you must:

  a.. Implement the ViewController interface. The most convenient way to do 
this is likely to be extending the convenience base class 
(org.apache.shale.view.ViewController).
  b.. As required by the JavaBeans specification, provide a no-args public 
constructor.
  c.. Declare your backing bean as a managed bean. In nearly all 
circumstances, you will want the bean to be placed in request scope.
  d.. (Optional) Provide public JavaBean properties that may be set to 
customize the functionality provided by this bean. Typically, such 
properties will be configured based on the managed beans configuration 
defined in the JavaServer Faces configuration resources for your 
application.
  e.. Ensure that the functionality of your backing bean is not dependent 
upon the order in which property setters are called, since managed beans are 
configured via the "setter injection" pattern.
  f.. Create event handlers for the lifecycle events of interest, plus 
standard JavaServer Faces event handlers for things like actions and value 
changes.
  g.. (Optional but recommended) write a corresponding JUnit test case using 
the Shale Test Framework. Because nearly all of your property and event 
handling methods have no JavaServer Faces API dependencies for their 
parameter signatures, it is generally quite easy to write such tests.
whith regards to your missing boolean property 'postback' for your backing 
bean the doc states
Each backing bean that implements ViewController will support a boolean 
property postback, which will be set to
true if this view is the one that is processing a form submit previously 
rendered by the same page, or
false if this view was newly navigated to.

The property will be set before any of the lifecycle methods described below 
are called, so that application logic may perform conditional tasks based on 
this state.

Off the top I dont see your postback attribute

Hope this helps you out,

Martin-
(e)mgainty@hotmail.com
617-852-7822

----- Original Message ----- 
From: "Ryan Wynn" <rw...@us.ibm.com>
To: <us...@struts.apache.org>
Sent: Tuesday, October 11, 2005 1:55 PM
Subject: Postback not occuring for Clay html full view


>I am using shale/clay html full view.  I have an initial page, index.html,
> which contains a commandLink to another page, page2.html.
>
> index.html
>
> <html>
> <body>
> <form jsfid="form">
>        <a jsfid="page2Link">Page 2</a>
> </form>
> </body>
> </html>
>
> clay-config.xml
> ...
> <component jsfid="page2Link" extends="commandLink" allowBody="false">
>        <attributes>
>                <set name="value" value="Goto Page 2" />
>                <set name="action" value="#{index.page2}" />
>                <set name="immediate" value="true" />
>        </attributes>
> </component>
> ...
>
> index is configured as in faces-config.xml and implements ViewController.
>
> When I click on page2Link I see that the following is happening...
>
> Oct 11, 2005 1:42:47 PM org.apache.shale.clay.faces.ClayViewHandler
> restoreView
> INFO: Clay template restoreView for /index.jsp
> init called
> prerender called
> Oct 11, 2005 1:42:47 PM org.apache.shale.clay.faces.ClayViewHandler
> renderView
> INFO: Clay template renderView for /index.jsp
> destroy called
>
> My action handler is not being called so the navigation is not occuring
> and the preprocess cycle is not being invoked.
>
> Any ideas?
>
>
>
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org