In a minute :P
Sven
On 29.03.2017 16:15, Andrea Del Bene wrote:
Right when we will return to "success" :-)
https://ci.apache.org/builders/wicket-master
On Wed, Mar 29, 2017 at 4:07 PM, Maxim Solodovnik <solomax...@gmail.com>
wrote:
Wow, Thanks a lot!
Could you please let me know when SNAPSHOT with the fix will be available?
On Wed, Mar 29, 2017 at 8:50 PM, Sven Meier <s...@meiers.net> wrote:
Hi,
so we have to change the Location.Blob to use XMLHttpRequest directly,
because jQuery does not support blob downloads :/.
I've change the JavaScript and now downloading of the zip works fine.
FileSystemResource might not be the best candidate (because it's not
serializable), but you can use an indirection to prevent it being
serialized
along with AjaxDownload:
final AjaxDownload download = new AjaxDownload(
new IResource()
{
@Override
public void respond(Attributes attributes)
{
new
FileSystemResource(zipFile.toPath()).respond(attributes);
}
}
);
Have fun
Sven
On 29.03.2017 15:12, Maxim Solodovnik wrote:
Filename is minor issue ....
Main problem is invalid file :(
How can I serve the file from file system? I thought filesystemreference
if
the best candidate .....
WBR, Maxim
(from mobile, sorry for the typos)
On Mar 29, 2017 8:08 PM, "Sven Meier" <s...@meiers.net> wrote:
Hi Maxim,
three things:
- filename ... no one sets the file name :P
- serializable error ... FileSystemResource holds a reference to the
path,
which is not serializable
- corruct zip ... my bad, it seems that Location.Blob mangles the file
on
the client side
I'll see what I can do about Location.Blob - it might be an encoding
issue.
Have fun
Sven
On 29.03.2017 14:15, Maxim Solodovnik wrote:
here you are: https://github.com/solomax/ajax-download
Absolutely don't understand what is going on :(
On Wed, Mar 29, 2017 at 6:30 PM, Maxim Solodovnik <
solomax...@gmail.com>
wrote:
Yep, zip file is valid
Breakpoint at AjaxDownload.ResourceBehavior#onRequest() is not hit
:(
Will try to create quickstart
something extremely weird
On Wed, Mar 29, 2017 at 2:22 AM, Martin Grigorov <
mgrigo...@apache.org>
wrote:
Hi Maxim,
On Tue, Mar 28, 2017 at 11:06 AM, Maxim Solodovnik <
solomax...@gmail.com>
wrote:
Thanks a lot Martin for detailed explanation
I do have this functionality working with old version of
AjaxDownload
And here is my first try to migrate to the new internal wicket
AjaxDownload:
https://github.com/apache/openmeetings/commit/
5fa2c87f212e4eecdd1368f2ae7fa8762832838f
I would appreciate if you can take a look at this tiny commit.
Something really doesn't work as expected ....
Commited version behaves wrong:
1) file downloaded has wrong name
You do not set file name anywhere!
Keep a reference to the constructed ResourceResponse and call its
#setFileName(...)
2) is not valid zip file (cannot be opened)
Is the backupPath representing a ZIP file ?
3) for some reason I'm not able to get to breakpoint at line 115 [1]
Put a breakpoint at
AjaxDownload.ResourceBehavior#onResourceRequested()
and
see what happens
Additionally I got NotSerializable exception in case I made
"download"
class final variable
java.nio.file.Path is not Serializable!
What am I doing wrong?
[1] https://github.com/apache/openmeetings/commit/
5fa2c87f212e4eecdd1368f2ae7fa8762832838f#diff-
0a499c88998a93ceb51c347836aa6195R115
On Thu, Mar 23, 2017 at 3:16 AM, Martin Grigorov
<mgrigo...@apache.org
wrote:
On Wed, Mar 22, 2017 at 12:59 PM, Maxim Solodovnik <
solomax...@gmail.com
wrote:
Actually I have 2 example use cases:
1) user selects files on file tree
2) as soon as file is selected and download is enabled for it,
used
can
press ajax download button and get the file
Another case:
User requests system backup
As soon as backup is created (Progress complete)
Download of newly created file should be initiated
I can't create ResourceReference and override getResourceStream
of
it
since
I only have resource just before download
Wicket IResource is an abstraction over the real resource.
In my case i also create the response on the fly. It is either a
single
File or a Zip file with several entries.
The ResourceReference is more or less just an endpoint with almost
no
logic
at all. It just creates the IResource.
The IResource uses the information from the request parameters /
session
/
somewhere else to create the actual response (the files).
AjaxDownload is an Ajax behavior that you can use to trigger the
creation
of the files and by using its callback methods you can show
feedback
to
the
user. To show progress bar you will need to employ ProgressBar
from
wicket-extentions or use WebSockets.
On Wed, Mar 22, 2017 at 6:53 PM, Martin Grigorov <
mgrigo...@apache.org>
wrote:
Hi Maxim,
I use the new AjaxDownload with a ResourceReference, i.e.
AjaxDownload#AjaxDownload(org.apache.wicket.request.
resource.ResourceReference,
org.apache.wicket.request.mapper.parameter.PageParameters)
The ResourceReference has
public IResource getResource() {
return new StatementDownloadResource();
}
StatementDownloadResource extends ResourceStreamResource and
provides
implementation of #getResourceStream(). There I have a logic
that
returns
either FileResourceStream or ZipResourceStream.
Martin Grigorov
Wicket Training and Consulting
https://twitter.com/mtgrigorov
On Wed, Mar 22, 2017 at 12:30 PM, Maxim Solodovnik <
solomax...@gmail.com
wrote:
Just have tried to switch to this AjaxDownload component
And it seems I cannot find proper way to use it with dynamic
file,
i.e.
previously
I created AjaxDownload,
added it to the page
then at the moment I know what file should be served, I set the
stream
and
initiate the download
(for example one of use cases: I need to create zip file
right now this seems to be impossible :(
Can you give me a hint how this dynamic nature can be
implemented?
--
WBR
Maxim aka solomax
--
WBR
Maxim aka solomax
--
WBR
Maxim aka solomax
--
WBR
Maxim aka solomax
--
WBR
Maxim aka solomax