Is your dispatch defined it boot? It doesnt sound like it is... Cheers, tim
On 9 Mar 2010, at 21:45, DavidV wrote: > Any thoughts on this? Still trying to get it to work. > Thanks > > On Mar 5, 2:56 pm, DavidV <[email protected]> wrote: >> I have recreated a number of StreamingResponse methods from both the >> Loop link above and the Lift book and I still can't seem to get the >> desired effect. I have been able to get a PlainTextResponse to work >> by using LiftRules.dispatch in the Boot, like so: >> >> LiftRules.dispatch.prepend { >> case Req(("analysis" :: "inprocess" :: Nil), _, _) => >> () => Full(PlainTextResponse("test")) >> } >> >> However, I am unable to get any sort of streaming response to work in >> the particular snippet which contains the data I would like to use. >> Here are some of the methods I've tried: >> >> def textResponse: Box[LiftResponse] = { >> println("TEXT RESPONSE") >> val ab = "text would go here" >> Full(PlainTextResponse(ab, >> ("Content-Type" -> "text/plain") :: Nil, 200 >> )) >> } >> >> def streamingResponseFile: Box[LiftResponse] = { >> println("STREAMING RESPONSE FILE") >> val file: File = new File( >> "C:\\Source\\trunk\\eclipse\\testLift\\src\\main\\webapp\\images\ >> \ultra.png" >> ) >> val length = file.length >> val fileInput = new java.io.FileInputStream(file) >> Full(StreamingResponse(fileInput, >> () => { fileInput.close }, >> length, >> ("Content-Type" -> "image/png") :: Nil, >> Nil, >> 200) >> ) >> } >> >> Do I have to make a LiftRules.dispatch function in the Boot in >> addition to the StreamingResponse in my snippet? >> >> I am trying to download plain text, but it is variable and dependent >> on some parameters and other variables in the particular Snippet >> class. Would I have to pass that data into the boot method in order >> to get the desired response? I would prefer to handle it entirely in >> the snippet itself. >> >> Finally, I'm not really sure how exactly to handle the >> Full(StreamingResponse) once I have created it in order to actually >> download the data and save it to the client computer. Although I >> assume the browser will handle this one I've formatted the Response >> correctly and actually have it working. >> >> Thanks again, >> David >> >> On Mar 4, 11:13 am, Marius <[email protected]> wrote: >> >>> If you want todownloadthrough Lift than yes you can use >>> StreamingResponse, or simply any other LiftResponse (depending on your >>> mime-type) and use LiftRules.dispatch mechanism. But you could also >>> let the container to serve thefile. By default Lift is trying to >>> serve .html, .xhtml, .htm, .xml etc.. You can write your own rules by >>> setting >> >>> LiftRules.liftRequest = { >>> case req => true // Pattern match whatever you like and return a >>> Boolean >> >>> } >> >>> If Lift cannot find a resource for some reason and you want the >>> container (or subsequent filters) to handle that you can set >> >>> LiftRules.passNotFoundToChain = true >> >>> On 4 mar., 17:09, DavidV <[email protected]> wrote: >> >>>> I am also looking todownloadafilefrom the server that is hosting >>>> my Lift web app. There is a very useful fileUpload method in the >>>> SHtml class and I was wondering if there may be something similar for >>>> afiledownload? I was unable to find anything, and searching for >>>> "Lift" or "Scala Liftdownload" on Google returns nothing but pages to >>>> downloadthe libraries, plugins or source code. I suppose I could use >>>> the StreamingResponse, but I am already saving thefileI need to the >>>> server and it would be nice to be able todownloadit to any client >>>> computer with the typical "Browse" button, similar to the upload, >>>> Thanks, >>>> David >> >>>> On Feb 14, 3:58 pm, Gang <[email protected]> wrote: >> >>>>> Thanks Tim, that's exactly what I'm looking for! >> >>>>> On Feb 14, 11:27 am, Timothy Perrett <[email protected]> wrote: >> >>>>>> See: >> >>>>>> http://blog.getintheloop.eu/2009/3/19/understanding-lift-s-streamingr... >> >>>>>> Construct the CSV in memory and just then stuff it into a streaming >>>>>> response as a byte array. >> >>>>>> Cheers, Tim >> >>>>>> On 14 Feb 2010, at 16:18, Gang wrote: >> >>>>>>> Hi, >> >>>>>>> I have a question and it may not be a pure Lift one. But since I'm >>>>>>> working on a Lift app and this group is the most responsive one I have >>>>>>> seen, might just try it here. >> >>>>>>> I need todownloaddata from database in CSV format. What is the best >>>>>>> approach within Lift framework? Do I have to write the data on the >>>>>>> server somewhere and then provide user with a link? I have tried to >>>>>>> google "scala, lift,filedownload...", but could not come up with >>>>>>> what I'm looking for. Maybe I didn't use the right key words in >>>>>>> search? Thanks in advance! >> >>>>>>> Brs >>>>>>> Gang >> >>>>>>> -- >>>>>>> You received this message because you are subscribed to the Google >>>>>>> Groups "Lift" group. >>>>>>> To post to this group, send email to [email protected]. >>>>>>> To unsubscribe from this group, send email to >>>>>>> [email protected]. >>>>>>> For more options, visit this group >>>>>>> athttp://groups.google.com/group/liftweb?hl=en.-Hidequotedtext- >> >>>>>> - Show quoted text - > > -- > You received this message because you are subscribed to the Google Groups > "Lift" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/liftweb?hl=en. > > -- You received this message because you are subscribed to the Google Groups "Lift" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/liftweb?hl=en.
