Hi,

jitechno píše v Pá 17. 06. 2011 v 01:41 -0700:
> Scott, may be, there is a little misunderstanding. My question is not about
> debugging and reverse engineering, but about general approach.
> I am trying realize example from "official" Trinidad's page. At least, I am
> considering as official. Am I right?
> 
> http://myfaces.apache.org/trinidad/trinidad-api/tagdoc/tr_fileDownloadActionListener.html
> 
>  Usually, such examples give a good base to start with more deep
> development. In this case, it is no.
>  This example doesnot cover complete solution, or obsolete, or belongs to
> other version.

That example is ok, we use it over 4 years in many production systems. 

>  I have not time to explore ans investigate basic elementary construction,
> it is not a subject of research for programmer. May be, I am wrong or my
> understanding of myfaces.apache's policy is incorrect? 
> 
>  I dont know which tag is giving the problems, because I dont see any action
> after clicking on commandLink or button, inside form or outside. Also I dont
> see any exceptions/messages form Tomcat. 

Firefox -> Tools -> Error Console. You'll see javascripts errors. The
main probem is that you have no tag for including resources in your
view. In case of JSP, use tr:document as Scott suggests. I case of
facelets, you can use tr:document too or new h:head/h:body tags. Anyway,
please read this resource:
http://andyschwartz.wordpress.com/2009/07/31/whats-new-in-jsf-2/#resource-loading

Regards,

Kočičák

> Regards
> Oleg
> 
> 
> Scott O'Bryan wrote:
> > 
> > Oleg, events usually require a form in order to submit the data needed
> > to process the event.  Additionally, which tag is giving you the
> > problems?  To debug this problem, I would start by trying a simpler
> > page without mixing render kits and then go from there.  Use the
> > <tr:document> tag at the root, include to form, and so on.  Once you
> > do this, you can reverse engineer your app to see what's happening.
> > Understand also that JSF and TRINIDAD also have replacements for some
> > elements that you usually use with HTML.  You need to use these
> > replacements for things to get inserted properly.
> > 
> > Scott
> > 
> > Sent from my iPad
> > 
> > On Jun 16, 2011, at 2:18 AM, jitechno <[email protected]> wrote:
> > 
> >>
> >> Cedric, why I need form tag here?
> >> I dont think so. because no need to use form and submit for download file
> >> in
> >> browser.
> >> But tr:form is not solution, still the same behavior.
> >>    <body>
> >>
> >>       <f:view>
> >>            <h1><h:outputText value="JSF 2.0 + Trinidad 2.0"/></h1>
> >>            <tr:form id="downloadForm" >
> >>            <h:commandButton value="Download" styleClass="submit_button">
> >>            <tr:fileDownloadActionListener
> >> filename="#{downloadBean.fileName}"
> >>
> >> contentType="#{downloadBean.contentType}"
> >>                                       
> >> method="#{downloadBean.sayHello}"/>
> >>            </h:commandButton>
> >>
> >>       <tr:commandLink text="Download file">
> >>       <tr:fileDownloadActionListener
> >>                                filename="hello.txt"
> >>                                contentType="text/plain; charset=utf-8"
> >>                                method="#{downloadBean.sayHello}"/>
> >>       </tr:commandLink>
> >>       </tr:form>
> >> </f:view>
> >>    </body>
> >> regards
> >> Oleg
> >>
> >> Cédric Durmont wrote:
> >>>
> >>> Ooops, looks like <tr:form> is missing...
> >>>
> >>> Regards,
> >>> Cedric
> >>>
> >>> 2011/6/15 jitechno <[email protected]>:
> >>>>
> >>>> Hello,
> >>>> I tried this example,
> >>>> http://myfaces.apache.org/trinidad/trinidad-api/tagdoc/tr_fileDownloadActionListener.html
> >>>>
> >>>> Not with commandLine, not with commandButton I am nat able to fire file
> >>>> save
> >>>> dialog. No exceptions, no actions, nothing. Please, advice me, what is
> >>>> wrong
> >>>> here?
> >>>> Thanks in advance
> >>>>
> >>>> <f:view>
> >>>>            <h:commandButton value="Download"
> >>>> styleClass="submit_button">
> >>>>              <tr:fileDownloadActionListener
> >>>> filename="#{downloadBean.fileName}"
> >>>>
> >>>> contentType="#{downloadBean.contentType}"
> >>>>
> >>>>  method="#{downloadBean.sayHello}"/>
> >>>>            </h:commandButton>
> >>>>
> >>>>       <tr:commandLink text="Download file">
> >>>>       <tr:fileDownloadActionListener
> >>>>                                filename="hello.txt"
> >>>>                                contentType="text/plain; charset=utf-8"
> >>>>                                method="#{downloadBean.sayHello}"/>
> >>>>       </tr:commandLink>
> >>>>  </f:view>
> >>>> ------------------------------------------------------------------
> >>>> faces-config contains
> >>>> <managed-bean>
> >>>>  <managed-bean-name>downloadBean</managed-bean-name>
> >>>>        <managed-bean-class>Beans.DownloadBean</managed-bean-class>
> >>>>        <managed-bean-scope>request</managed-bean-scope>
> >>>>        <managed-property>
> >>>>            <property-name>text</property-name>
> >>>>            <value>Hi there!</value>
> >>>>        </managed-property>
> >>>>        <managed-property>
> >>>>            <property-name>contentType</property-name>
> >>>>            <value>text/plain; charset=utf-8</value>
> >>>>        </managed-property>
> >>>>        <managed-property>
> >>>>            <property-name>fileName</property-name>
> >>>>            <value>hello.txt</value>
> >>>>        </managed-property>
> >>>>  </managed-bean>
> >>>> --------------------------------------------------------------------------------------------
> >>>> DownloadBean is here:
> >>>> package Beans;
> >>>>
> >>>> import java.io.IOException;
> >>>> import java.io.OutputStream;
> >>>> import java.io.OutputStreamWriter;
> >>>> import javax.faces.context.FacesContext;
> >>>>
> >>>> public class DownloadBean  implements java.io.Serializable{
> >>>>
> >>>>  public DownloadBean() {
> >>>>  }
> >>>>  private String text;
> >>>>  public void setText(String text){
> >>>>     this.text = text;
> >>>>  }
> >>>>  public String getText(){
> >>>>     return this.text;
> >>>>  }
> >>>>
> >>>>  private String fileName;
> >>>>  public void setFileName(String fileName){
> >>>>     this.fileName = fileName;
> >>>>  }
> >>>>  public String getFileName(){
> >>>>     return this.fileName;
> >>>>  }
> >>>>  private String contentType;
> >>>>  public void setContentType(String contentType){
> >>>>     this.contentType = contentType;
> >>>>  }
> >>>>  public String getContentType(){
> >>>>     return this.contentType;
> >>>>  }
> >>>> public void sayHello(FacesContext context, OutputStream out) throws
> >>>> IOException
> >>>>    {
> >>>>      System.out.println("sy Hello "+ getFileName()+"
> >>>> "+getContentType());
> >>>>      OutputStreamWriter w = new OutputStreamWriter(out, "UTF-8");
> >>>>      w.write(getText());
> >>>>      // The stream is automatically closed, but since we wrapped it,
> >>>>      // we'd better flush our writer
> >>>>      w.flush();
> >>>>    }
> >>>> }
> >>>> --
> >>>> View this message in context:
> >>>> http://old.nabble.com/What-is-wrong-with-Trinidad%27s-download-example--tp31851629p31851629.html
> >>>> Sent from the MyFaces - Users mailing list archive at Nabble.com.
> >>>>
> >>>>
> >>>
> >>>
> >>
> >> --
> >> View this message in context:
> >> http://old.nabble.com/What-is-wrong-with-Trinidad%27s-download-example--tp31851629p31858292.html
> >> Sent from the MyFaces - Users mailing list archive at Nabble.com.
> >>
> > 
> > 
> 


Reply via email to