anyone can give me some suggestion?thanks
wch2001 wrote:
>
> Dear all,
>
> For some reason, I have 2 dropdownchoice(year and month) , according to
> year and month to decide the filename , then click button to download
> file.
>
> for the ajaxsubmitLink, my code is below, now once the file is existed,
> that mean after running: getRequestCycle().setRequestTarget(new
> RedirectRequestTarget(url));
> , there is one page to select the location and download the file, but
> after that, the page stop, i mean i can not click the "uLink" again,
>
> anyone can give me some suggestion?
>
> thank you very much
>
>
>
>
> AjaxSubmitLinkWithIndicator uLink = new
> AjaxSubmitLinkWithIndicator("uLink", form) {
>
> protected void onSubmit(AjaxRequestTarget target, Form form) {
>
> System.out.println("on click
> AjaxSubmitLinkWithIndicator...........");
> System.out.println("dobPanel.getDob() :" +
> dobPanel.getDob());
>
> Calendar calendar = Calendar.getInstance();
> calendar.setTime(dobPanel.getDob());
> System.out.println("calendar.get(Calendar.YEAR) :" +
> calendar.get(Calendar.YEAR));
> System.out.println("calendar.get(Calendar.MONTH) :" +
> calendar.get(Calendar.MONTH));
>
> final String fn = orgDetailName + "_m_" +
> calendar.get(Calendar.YEAR) + "_" + (calendar.get(Calendar.MONTH) + 1) +
> ".csv";
> logger.error("fn:" + fn);
>
> path = wholePath + calendar.get(Calendar.YEAR);
> logger.error("path.trim() + '/' + fn):" + path.trim() +
> "/" + fn);
>
> final File f1 = new File(path.trim() + "/" + fn);
> if (f1.exists()) {
> ResourceReference rf = new ResourceReference("") {
>
> @Override
> protected WebResource newResource() {
> return new WebResource() {
>
> @Override
> public IResourceStream getResourceStream()
> {
> // throw new
> UnsupportedOperationException("Not supported yet.");
>
> String endWithString =
> fn.substring(fn.indexOf(".") + 1, fn.length());
>
> String contentType =
> FileTypeMapping.getInstance().get(endWithString);
>
> if (fn.endsWith("xlsx")) {
> FileUtility fileUtil = new
> FileUtility();
> byte[] bytes =
> fileUtil.getBytesFromFile(f1);
>
> return new
> ByteArrayResourceStream(bytes, contentType);
>
> } else if (fn.endsWith("csv")) {
> CharSequence maps =
> generateCsvFile(f1);
>
> return new
> StringResourceStream(maps, contentType);
>
> } else {
> return null;
> }
> }
>
> @Override
> protected void setHeaders(WebResponse
> response) {
> super.setHeaders(response);
> response.setAttachmentHeader(fn);
> }
> };
> }
> ;
> };
>
> String url =
> getRequestCycle().get().urlFor(rf).toString();
> logger.error("url:" + url);
> getRequestCycle().setRequestTarget(new
> RedirectRequestTarget(url));
>
> } else {
>
> cfp.info("There is no file for the day.");
> cfp.setVisible(true);
> target.addComponent(cfp);
> }
> }
>
> };
>
>
--
View this message in context:
http://www.nabble.com/why-AjaxSubmitLink-calling-getRequestCycle%28%29.setRequestTarget%28new-RedirectRequestTarget%28url%29%29-later-%2C-can-not-run-the-form-again--tp21249140p21448556.html
Sent from the Wicket - User mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]