You can always do RequestCycle.get() (or ((WebRequest)RequestCycle.get())) to get the current request cycle, on which you can then call get(Web)Request and get(Web)Response
Eelco On 11/21/06, Carfield Yim <[EMAIL PROTECTED]> wrote: > Thanks for introducting the class to me, however look like this > missing some object like session and request which I need > > In fact I am going to output captcha according to jCaptcha example, it > need request and session as follow. But can I do the same at > WebResource? > > public ImageCaptcha() throws ImageFormatException, IOException { > super(); > final WebRequest httpServletRequest = (WebRequest)getRequest(); > final WebResponse httpServletResponse = (WebResponse)getResponse(); > byte[] captchaChallengeAsJpeg = null; > // the output stream to render the captcha image as jpeg into > ByteArrayOutputStream jpegOutputStream = new ByteArrayOutputStream(); > // get the session id that will identify the generated captcha. > // the same id must be used to validate the response, the > session id is a good candidate! > String captchaId = getSession().getId(); > // call the ImageCaptchaService getChallenge method > BufferedImage challenge = new > DefaultManageableImageCaptchaService().getImageChallengeForID(captchaId, > > httpServletRequest.getLocale()); > // a jpeg encoder > JPEGImageEncoder jpegEncoder = > JPEGCodec.createJPEGEncoder(jpegOutputStream); > jpegEncoder.encode(challenge); > captchaChallengeAsJpeg = jpegOutputStream.toByteArray(); > > // flush it in the response > httpServletResponse.setHeader("Cache-Control", "no-store"); > httpServletResponse.setHeader("Pragma", "no-cache"); > httpServletResponse.setDateHeader("Expires", 0); > httpServletResponse.setContentType("image/jpeg"); > OutputStream responseOutputStream = > httpServletResponse.getOutputStream(); > responseOutputStream.write(captchaChallengeAsJpeg); > responseOutputStream.flush(); > responseOutputStream.close(); > } > On 11/22/06, Eelco Hillenius <[EMAIL PROTECTED]> wrote: > > For binary output, use a (web)resource. For instance, something like this: > > > > WebResource export = new WebResource() { > > > > @Override > > public IResourceStream getResourceStream() { > > CharSequence discounts = DataBase.getInstance() > > .exportDiscounts(); > > return new StringResourceStream(discounts, "text/plain"); > > } > > > > @Override > > protected void setHeaders(WebResponse response) { > > super.setHeaders(response); > > response.setAttachmentHeader("discounts.csv"); > > } > > }; > > export.setCacheable(false); > > > > new ResourceLink(this, "exportLink", export); > > > > > > Eelco > > > > ------------------------------------------------------------------------- > > Take Surveys. Earn Cash. Influence the Future of IT > > Join SourceForge.net's Techsay panel and you'll get the chance to share your > > opinions on IT & business topics through brief surveys - and earn cash > > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > _______________________________________________ > > Wicket-user mailing list > > Wicket-user@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/wicket-user > > > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys - and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > Wicket-user mailing list > Wicket-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wicket-user > ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Wicket-user mailing list Wicket-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wicket-user