It try to deploy the war to the tomcat5.5.25, and the path is different.
Use LiftRules.getResource("/images/") to get this information: In the dev box: --> Path:Full(file:/G:/project/demo/src/main/webapp/images/ In the tomcat: --> Path:Full(jndi:/localhost/demo-1.0/images/ The war of the demo path: D:\tomcat_5.5.25\webapps\demo-1.0 So that how can i resolve this problem ? Cheers, Neil On Nov 15, 9:57 pm, "Neil.Lv" <anim...@gmail.com> wrote: > Tim, > > I'm not clear that how to do use the caching proxy and maps a URL to > the dispatcher. > > I didn't find the archive about the SoftReferenceCache. > > Is there some exmaple that descript how to use is ~? > > :) > > Thanks very much! > > Cheers, > Neil > > On Nov 15, 6:33 pm, Timothy Perrett <timo...@getintheloop.eu> wrote: > > > Neil, > > > If you want to save the byte array, save it into the database, then just > > write a caching proxy that maps a URL to the dispatcher. That is, use > > SoftReferenceCache to cache the database read so that the next time the > > image is requested there is no database hit. > > > This has been discussed a fair few times on the list if i remember rightly, > > so best off searching the archives if your not sure where to start. > > > Cheers, Tim > > > On 15 Nov 2009, at 04:16, Neil.Lv wrote: > > > > I want to save the images to a directory, because this images will > > > be used in the flash params. > > > > This file path will be used in the javascript code . > > > ### > > > var imag=new Array(); > > > imag[3]="/images/01.jpg"; > > > ### > > > > Cheers, > > > Neil > > > > On Nov 15, 12:05 pm, "Neil.Lv" <anim...@gmail.com> wrote: > > >> Hi all, > > > >> Thanks for your tips, and I have some silly question about this. > > > >> 1:) a directory that's not part of the app's exploded WAR file > > > >> The direcotry tree like this, and Where is i can create a well > > >> defined directory > > >> that's not part of the app's exploded WAR file ? I'm not familiar > > >> with this. > > > >> ### > > >> demo > > >> --src > > >> --main > > >> --resources > > >> --i18n > > >> --props > > >> --scala > > >> --webapp > > >> --test > > >> --target > > >> ### > > > >> 2:) If I store images to the RDBMS, and how can it be shown in the > > >> webpage ? > > >> ### > > >> FileParamHolder(_, mime, name, data) > > >> .... > > >> item.receipt(data).receiptMime(mime) // ( Array[Byte] that saved > > >> into database ) > > >> ### > > > >> :) > > > >> Thanks very much ! > > > >> Cheers, > > >> Neil > > > >> On Nov 15, 5:43 am, David Pollak <feeder.of.the.be...@gmail.com> > > >> wrote: > > > >>> On Sat, Nov 14, 2009 at 10:25 AM, Neil.Lv <anim...@gmail.com> wrote: > > > >>>> Tim, > > > >>>> haha, yeah. > > > >>>> I use this code to get the images folder(the full path) of the app. > > > >>>> LiftRules.getResource("/images/").open_!.toString.substring(6) > > >>>> (The code is so redundant !) > > >>>> -> G:\project\demo\src\main\webapp\images\ > > > >>> You cannot rely on being able to write to a directory in an application. > > >>> This is dependent on how the specific web app container handles things, > > >>> but > > >>> I would strongly suggest you write images to a directory that's not > > >>> part of > > >>> the app's exploded WAR file. And "strongly" is a very weak description > > >>> of > > >>> how forceful I'm being about this. This kind of code may change > > >>> behaviour > > >>> between your dev box and production, between versions of your app > > >>> container. > > > >>> If you want to store images to serve, either use a well defined > > >>> directory > > >>> outside your WAR file or put stuff in your RDBMS or put stuff up on > > >>> Amazon > > >>> (like Twitter does with images). Amazon has much better infrastructure > > >>> for > > >>> dealing with serving static content than just about anyone else. > > > >>>> :) > > > >>>> Thank you very much ! > > > >>>> Cheers, > > >>>> Neil > > > >>>> On Nov 15, 1:50 am, Timothy Perrett <timo...@getintheloop.eu> wrote: > > >>>>> Hmm, I guess you must be new to the JVM - you cant write a file > > >>>>> inside a > > >>>> WAR file; it does not work like that. > > > >>>>> You'll need to write to a fully qualified path (as per my example). > > > >>>>> Cheers, tim > > > >>>>> On 14 Nov 2009, at 17:34, Neil.Lv wrote: > > > >>>>>> It show this error message: > > > >>>>>> ERROR - java.io.FileNotFoundException: \images\003.jpg > > > >>>>>> ######### this is the code > > > >>>>>> val receiptOk = fileHolder match { > > >>>>>> case Full(FileParamHolder(_, null, _, _)) => true > > >>>>>> case Full(FileParamHolder(_, mime, name, data)) > > >>>>>> if mime.startsWith("image/") => { > > >>>>>> var buff = new java.io.BufferedInputStream(new > > >>>>>> ByteArrayInputStream > > >>>>>> (data)) > > >>>>>> try { > > >>>>>> var fos = new java.io.FileOutputStream(new File("/images/" + > > >>>>>> name)) > > >>>>>> var in = 0 > > >>>>>> do { > > >>>>>> in = buff.read() > > >>>>>> if (in != -1){ > > >>>>>> fos.write(in) > > >>>>>> } > > >>>>>> } while((in != -1)) > > >>>>>> fos = null > > >>>>>> in = 0 > > >>>>>> } catch { > > >>>>>> case e => Log.error(e) > > >>>>>> } finally { > > >>>>>> buff.close() > > >>>>>> } > > >>>>>> buff = null > > >>>>>> true > > >>>>>> } > > >>>>>> case Full(_) => { > > >>>>>> S.error(S.??("invalid.receipt.attachment")) > > >>>>>> false > > >>>>>> } > > >>>>>> case _ => true > > >>>>>> } > > > >>>>>> ######### > > > >>>>>> Maybe this code is wrong ? > > > >>>>>> new File("/images/" + name) > > > >>>>>> I want to save it in the main\webapp\images\ folder. > > >>>>>> -> main\webapp\images\ 003.jpg > > > >>>>>> :) > > > >>>>>> Cheers, > > >>>>>> Neil > > > >>>>>> On Nov 15, 12:23 am, Timothy Perrett <timo...@getintheloop.eu> wrote: > > >>>>>>> Neil, > > > >>>>>>> Try something like: > > > >>>>>>> var buff = new java.io.BufferedInputStream(input) > > >>>>>>> try { > > >>>>>>> var fos = new java.io.FileOutputStream(new File("/some/root/ > > >>>>>>> filepath/" + image_hash_filename)) > > >>>>>>> var in = 0 > > >>>>>>> do { > > >>>>>>> in = buff.read() > > >>>>>>> if (in != -1){ > > >>>>>>> fos.write(in) > > >>>>>>> } > > >>>>>>> } while((in != -1)) > > >>>>>>> fos = null > > >>>>>>> in = 0} catch { > > > >>>>>>> case e => Log.error(e) > > > >>>>>>> } finally { > > >>>>>>> buff.close() > > >>>>>>> } > > >>>>>>> buff = null > > >>>>>>> } > > > >>>>>>> In my case, I had the data as an input stream - manipulate this code > > >>>>>>> to take it however you need. > > > >>>>>>> Cheers, Tim > > > >>>>>>> On Nov 14, 7:55 am, "Neil.Lv" <anim...@gmail.com> wrote: > > > >>>>>>>> Here is some code , but it's wrong! > > > >>>>>>>> --> java.io.FileNotFoundException: \images\1.jpeg > > > >>>>>>>> if mime.startsWith("image/") => { > > >>>>>>>> try{ > > >>>>>>>> var file: File = new File("/images/1.jpeg"); > > >>>>>>>> var fos:FileOutputStream = new FileOutputStream(file); > > >>>>>>>> fos.write(data) > > >>>>>>>> } catch { > > >>>>>>>> case e => println("exception: " + e) > > >>>>>>>> } > > >>>>>>>> e.receipt(data).receiptMime(mime) > > >>>>>>>> true > > >>>>>>>> } > > > >>>>>>>> I don't know how to write the code in the try catch statement. > > > >>>>>>>> Does anyone can help me ?~ > > > >>>>>>>> Thanks very much ! > > > >>>>>>>> Cheers, > > >>>>>>>> Neil > > > >>>>>>>> On Nov 14, 1:58 pm, "Neil.Lv" <anim...@gmail.com> wrote: > > > >>>>>>>>> Hi all, > > > >>>>>>>>> How to save the uploaded image into the folder via fileUpload > > >>>>>>>>> in > > >>>>>>>>> Lift? > > > >>>>>>>>> I don't want to save it in the database, the example code in > > >>>>>>>>> the > > >>>>>>>>> Pocketchangeapp > > > >>>>>>>>> ### > > >>>>>>>>> val receiptOk = fileHolder match { > > >>>>>>>>> case Full(FileParamHolder(_, null, _, _)) => true > > >>>>>>>>> case Full(FileParamHolder(_, mime, _, data)) > > >>>>>>>>> if mime.startsWith("image/") => { > > >>>>>>>>> // How can i save the data into a image in the folder. > > >>>>>>>>> e.receipt(data).receiptMime(mime) > > >>>>>>>>> true > > >>>>>>>>> } > > >>>>>>>>> case Full(_) => { > > >>>>>>>>> S.error("Invalid receipt attachment") > > >>>>>>>>> false > > >>>>>>>>> } > > >>>>>>>>> case _ => true > > >>>>>>>>> } > > >>>>>>>>> ### > > > >>>>>>>>> To save the image into the webapp\images folder, and it's shown > > >>>>>>>>> just use this link: > > >>>>>>>>> /images/img1.jpg > > > >>>>>>>>> Thanks for any suggestion! > > > >>>>>>>>> Cheers, > > >>>>>>>>> Neil > > > >>> -- > > >>> Lift, the simply functional web frameworkhttp://liftweb.net > > >>> Beginning Scalahttp://www.apress.com/book/view/1430219890 > > >>> Follow me:http://twitter.com/dpp > > >>> Surf the harmonics --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Lift" group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~----------~----~----~----~------~----~------~--~---