-------------- Original message ----------------------
From: "Zheng, Xiahong" <[EMAIL PROTECTED]>
> I tried it and didn't seem to make a difference; it doesn't invoke the
> action. It's really weird; without the "enctype" attribute, it at least
> invokes the action; I suspect on postback, JSF doesn't restore the view
> correctly because if I change my "javax.faces.STATE_SAVING_METHOD" from
> client to "server", I see
> 
>               ~com.sun.faces.saveStateFieldMarker~

Sounds like you are using JSF 1.2 with tomahawk?


Gary

> 
> at the bottom of the page.
> 
> -----Original Message-----
> From: Ryan Wynn [mailto:[EMAIL PROTECTED] 
> Sent: Friday, April 11, 2008 3:12 PM
> To: user@shale.apache.org
> Subject: Re: [Shale Clay]
> 
> On Fri, Apr 11, 2008 at 2:50 PM, Zheng, Xiahong <[EMAIL PROTECTED]>
> wrote:
> > I thought about this, but tomahawk doesn't seem to have a form
> >  component.
> >
> >
> >
> >  -----Original Message-----
> >  From: Gary VanMatre [mailto:[EMAIL PROTECTED]
> >  Sent: Friday, April 11, 2008 1:35 PM
> >  To: user@shale.apache.org
> >  Subject: RE: [Shale Clay]
> >
> >  From: "Zheng, Xiahong" <[EMAIL PROTECTED]>
> >  > Thanks again. I have another question. How does shale work with
> >  > fileload? I am trying to use t:fileUpload from tomahawk. I copied
> the
> >  > component definition into my clay-config.xml
> >  >
> >  > <component jsfid="t:inputFileUpload"
> >  >       componentType="org.apache.myfaces.HtmlInputFileUpload"
> >  >       extends="baseOutput>
> >  >       <attributes>
> >  >               <set name="id" bindingType="VB" />
> >  >               .....
> >  >       </attributes>
> >  > </component>
> >  >
> >  > And I added the following in my html form
> >  >
> >  > <form enctype="multipart/form-data">
> >  >
> >  > <input jsfid="t:inputFileUpload" value="#{mybean.symbolsFile}"
> >  > storage="file" />
> >  >
> >  > <input type="submit" action="#{mybean.getQuotes}" value="Get
> Quotes"/>
> >  >
> >  > </form>
> >  >
> >  > When I hit the submit button, action method is never invoked.
> >  > Interestingly, if I remove the "enctype" attribute, action method
> is
> >  > indeed invoked but the input is null which is expected. I have the
> >  > extension filter configured.
> >  >
> >  > Any idea?
> >  >
> 
> Can you try this?
> 
> <component jsfid="multipart-form" extends="form">
>    <attributes>
>          <set name="enctype" value="multipart/form-data"/>
>    </attributes>
> </component>
> 
> +
> 
> <form jsfid="multipart-form">....</form>
> 
> That seems to be working ok for me.
> 
> Ryan
> >
> >  This is just a guess but you might try using the tomahawk form
> component
> >  too.  There might be some component coupling that is assumed in the
> >  library.
> >
> >  Gary
> >
> >  >
> >  >
> >  > -----Original Message-----
> >  > From: Richard Eggert [mailto:[EMAIL PROTECTED]
> >  > Sent: Friday, April 11, 2008 7:33 AM
> >  > To: user@shale.apache.org
> >  > Subject: RE: [Shale Clay]
> >  >
> >  > Yes.  Basically, you would have to define a component that inherits
> >  from
> >  > h:dataTable, and give it child elements that inherit from h:column.
> >  > Each of those child elements would then contain children that make
> up
> >  > the content of your columns.
> >  >
> >  > Rich Eggert
> >  > Member of Technical Staff
> >  > Proteus Technologies, LLC
> >  > http://www.proteus-technologies.com
> >  >
> >  >
> >  >
> >  > -----Original Message-----
> >  > From: Zheng, Xiahong [mailto:[EMAIL PROTECTED]
> >  > Sent: Fri 4/11/2008 12:08 AM
> >  > To: user@shale.apache.org
> >  > Subject: RE: [Shale Clay]
> >  >
> >  > Thanks a lot Rich. I was able to use your first example without
> having
> >  > any white space issue even if I reformatted it a bit. If I want to
> use
> >  > the second solution, how would I define the behavior of the
> dataTable?
> >  > Would it still need to inherit dataTable for the looping capability
> >  > since the number of rows are dynamic?
> >  >
> >  > -----Original Message-----
> >  > From: Richard Eggert [mailto:[EMAIL PROTECTED]
> >  > Sent: Thursday, April 10, 2008 5:12 PM
> >  > To: user@shale.apache.org
> >  > Subject: RE: [Shale Clay]
> >  >
> >  > My experience with dataTables and clay has been that they don't get
> >  > along very well, at least in the case of HTML templates (XML
> templates
> >  > are another story).  This is mainly because h:dataTable has a
> >  > drastically different structure from HTML tables.  h:dataTable
> expects
> >  > to have h:columns as its immediate child (with optional tags for
> >  header
> >  > and footer rows nested within each column), whereas HTML TABLE tags
> >  > expect to have TR (row) tags as its children (or TR tags nested
> within
> >  a
> >  > TBODY), with the column (TD) tags nested within each row.
> >  Essentially,
> >  > from the point of view of an h:dataTable, a column contains rows,
> but
> >  in
> >  > an HTML TABLE, a row contains columns, which makes mapping between
> the
> >  > two extremely difficult.  It can be done, but it involves making a
> lot
> >  > of dummy jsfid="void" tags and using SPAN tags to cause elements
> that
> >  > wouldn't be visible in the mockup to be rendered at runtime.
> >  >
> >  > e.g.,
> >  >
> >  > <table jsfid="h:dataTable" var="foo" value="#{bar.list}"
> >  > ><tr jsfid="void" allowBody="false">
> >  >    <th>Mock Heading</th>
> >  > </tr><tr jsfid="void"
> >  >    ><td jsfid="h:column">
> >  >          #{foo.name}
> >  >          <span jsfid="h:outputText" value="Real Heading"
> >  > facetName="header"></span>
> >  >       </td>
> >  >    </tr>
> >  > </table>
> >  >
> >  > Note that the lack of whitespace around the TR elements is
> intentional
> >  > to avoid (blank) text elements winding up as children of the
> >  h:dataTable
> >  > component (which is very nasty and breaks everything!).
> >  >
> >  > As you can see, writing an HTML template for a dataTable gets
> >  extremely
> >  > ugly very quickly.  For this reason, I don't recommend doing it
> unless
> >  > you REALLY want to be able to view the mockup in a browser before
> >  > deploying it.  You're better off defining the template in XML and
> just
> >  > referring to it in the parent template, e.g.,
> >  >
> >  > <table jsfid="my:customtable" allowBody="false">
> >  >    Table goes here.
> >  > </table>
> >  >
> >  >
> >  > What we really need is a new JSF component that provides the same
> >  > capabilities as dataTable but is structured more like HTML TABLE
> tags.
> >  >
> >  >
> >  >
> >  > Rich Eggert
> >  > Member of Technical Staff
> >  > Proteus Technologies, LLC
> >  > http://www.proteus-technologies.com
> >  >
> >  >
> >  >
> >  > -----Original Message-----
> >  > From: Zheng, Xiahong [mailto:[EMAIL PROTECTED]
> >  > Sent: Thu 4/10/2008 2:22 PM
> >  > To: user@shale.apache.org
> >  > Subject: FW: [Shale Clay]
> >  >
> >  > I couldn't seem to understand by looking at the clay usecase
> example.
> >  > Can somebody post a simple example of using clay to generate a
> dynamic
> >  > data table, the equivalent of the JSF h:dataTable tag?
> >  >
> >  >
> >  >
> >  >
> >  >
> >  >
> >
> >
> 

Reply via email to