Re: Wicket Render speed

2012-08-25 Thread Martin Makundi
http://wicket.apache.org/help/  JProfiler or YourKit  for example.

2012/8/26 steven.li :
> what profiler can we use ? I changed to deploy mode, the result is the same .
> If I remove the 4 combo checkbox, it will be much faster.
>
>
>
> --
> View this message in context: 
> http://apache-wicket.1842946.n4.nabble.com/Wicket-Render-speed-tp4651489p4651505.html
> Sent from the Users forum mailing list archive at Nabble.com.
>
> -
> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> For additional commands, e-mail: users-h...@wicket.apache.org
>

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: Wicket Render speed

2012-08-25 Thread steven.li
what profiler can we use ? I changed to deploy mode, the result is the same .
If I remove the 4 combo checkbox, it will be much faster. 



--
View this message in context: 
http://apache-wicket.1842946.n4.nabble.com/Wicket-Render-speed-tp4651489p4651505.html
Sent from the Users forum mailing list archive at Nabble.com.

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



New Web Site

2012-08-25 Thread Jonathan Locke
Hello Wicketeers!

It's been a long while since I checked in, but I'm glad to see Wicket is
still going strong!

I'm posting because Steve Jobs recently trashed my iWeb site from beyond the
grave and so I have migrated some of that content to WordPress, where I'm
hoping to do a bit of blogging on coding once again (mainly things related
to Java design, but perhaps some Wicket posts now and then). Here is the URL
to my brand new site:

http://codeact.wordpress.com

If there are links on the Apache Wicket site to my old site (or other sites
out there), they are definitely broken and an update would be hugely
appreciated.

Best,

Jon




--
View this message in context: 
http://apache-wicket.1842946.n4.nabble.com/New-Web-Site-tp4651504.html
Sent from the Users forum mailing list archive at Nabble.com.

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: Wicket Render speed

2012-08-25 Thread Martin Makundi
Use a real profiler to see.. also running application in deployment
mode will give you more appropriate results.

**
Martin

2012/8/26 steven.li :
> yes. I use loadabledetachable model.  it's the initial time loading takes too
> long time. and from the debug log, it shows most of time are spend on
> "Beging Render"--"Rendered"---"End Render"
>
>
>
> --
> View this message in context: 
> http://apache-wicket.1842946.n4.nabble.com/Wicket-Render-speed-tp4651489p4651502.html
> Sent from the Users forum mailing list archive at Nabble.com.
>
> -
> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> For additional commands, e-mail: users-h...@wicket.apache.org
>

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: Wicket Render speed

2012-08-25 Thread steven.li
yes. I use loadabledetachable model.  it's the initial time loading takes too
long time. and from the debug log, it shows most of time are spend on
"Beging Render"--"Rendered"---"End Render"



--
View this message in context: 
http://apache-wicket.1842946.n4.nabble.com/Wicket-Render-speed-tp4651489p4651502.html
Sent from the Users forum mailing list archive at Nabble.com.

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: Wicket Render speed

2012-08-25 Thread Martin Makundi
Are you using loadabledetachable models everywhere possible?

**
Martin

2012/8/25 steven.li :
> Hi All
>
>  I have a dataview table, for 50 rows, it takes around 10 seconds to show
> the page, and the render part take around 8-9 seconds from debug log,  Any
> way to improve this ?
>
> Each row, there are 2 input DateText filed, three labels, 4 checkbox, 2
> icons and 2-3 placehoder TD. around 100 characters each row.  Is this a two
> heavy row for wicket ?
>
>
>
> --
> View this message in context: 
> http://apache-wicket.1842946.n4.nabble.com/Wicket-Render-speed-tp4651489.html
> Sent from the Users forum mailing list archive at Nabble.com.
>
> -
> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> For additional commands, e-mail: users-h...@wicket.apache.org
>

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



IOException "ZIP entry size is too large" when downloading excel file

2012-08-25 Thread sdia1400
Using eclipse/tomcat, I have a single page wicket app with a single link for
downloading an excel sheet (*.xlsm, around 6MB) and it works, great. 
However, when I plug the same piece of code in my main web application
(wicket + spring + hibernate + mysql), it throws 
"java.io.IOException: ZIP entry size is too large". I am not able to figure
out the problem. I suspect it has something to do with springframe that I
use in my main web app. 

Here is the exception

java.io.IOException: ZIP entry size is too large
at
org.apache.poi.openxml4j.util.ZipInputStreamZipEntrySource$FakeZipEntry.(ZipInputStreamZipEntrySource.java:117)
at
org.apache.poi.openxml4j.util.ZipInputStreamZipEntrySource.(ZipInputStreamZipEntrySource.java:55)
at org.apache.poi.openxml4j.opc.ZipPackage.(ZipPackage.java:83)
at org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:228)
at org.apache.poi.util.PackageHelper.open(PackageHelper.java:39)
at 
org.apache.poi.xssf.usermodel.XSSFWorkbook.(XSSFWorkbook.java:187)
at
com.fhlabs.app.DownloadGeneratedExcelPage1$1$1.getData(DownloadGeneratedExcelPage1.java:39)
at
org.apache.wicket.request.resource.ByteArrayResource.newResourceResponse(ByteArrayResource.java:101)
at
org.apache.wicket.request.resource.AbstractResource.respond(AbstractResource.java:477)
at
org.apache.wicket.request.handler.resource.ResourceRequestHandler.respond(ResourceRequestHandler.java:77)
at
org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:712)
at
org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:63)
at
org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:96)
at
org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:208)
at
org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:251)
at
org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:162)
at
org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:218)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at
org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:113)
at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405)
at
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:964)
at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515)
at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:304)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)


Here is the code...
public class DownloadGeneratedExcelPage1 extends WebPage {
private static final long serialVersionUID = 1L;
public DownloadGeneratedExcelPage1() {
add(new Link("download") {
private static final long serialVersionUID = 1L;

@Override
public void onClick() {
final IResource resource = new 
ByteArrayResource(
"application/vnd.ms-excel") {
private static final long 
serialVersionUID = 1L;

@Override
protected byte[] getData(Attributes 
attributes) {
InputStream in = 
DownloadGeneratedExcelPage1.class
  

Re: Slow rendering

2012-08-25 Thread steven.li
how to let it render lazily?



--
View this message in context: 
http://apache-wicket.1842946.n4.nabble.com/Slow-rendering-tp4395082p4651491.html
Sent from the Users forum mailing list archive at Nabble.com.

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: Slow rendering

2012-08-25 Thread steven.li
Enable wicket debug log, it will show the begin render and end render time in
log file.

log4j.logger.org.apache.wicket=debug



--
View this message in context: 
http://apache-wicket.1842946.n4.nabble.com/Slow-rendering-tp4395082p4651490.html
Sent from the Users forum mailing list archive at Nabble.com.

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Wicket Render speed

2012-08-25 Thread steven.li
Hi All

 I have a dataview table, for 50 rows, it takes around 10 seconds to show
the page, and the render part take around 8-9 seconds from debug log,  Any
way to improve this ?

Each row, there are 2 input DateText filed, three labels, 4 checkbox, 2
icons and 2-3 placehoder TD. around 100 characters each row.  Is this a two
heavy row for wicket ? 



--
View this message in context: 
http://apache-wicket.1842946.n4.nabble.com/Wicket-Render-speed-tp4651489.html
Sent from the Users forum mailing list archive at Nabble.com.

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: maven archetype

2012-08-25 Thread Bruce McGuire
PS: I forgot to mention that I would like to use testNG.

Thanks again.

Bruce.

On Fri, Aug 24, 2012 at 10:31 AM, Bruce McGuire wrote:

> Hi There.
>
> It has been a while and a new company since I did a project with Wicket,
> and I would like to start out with a properly set up project.
>
> I am looking for an archetype that uses new versions of
>   Wicket
>   Spring
>   Hibernate
>
> Any ideas would be greatly appreciated.
>
> Thanks,
>
> Bruce.
>


maven archetype

2012-08-25 Thread Bruce McGuire
Hi There.

It has been a while and a new company since I did a project with Wicket,
and I would like to start out with a properly set up project.

I am looking for an archetype that uses new versions of
  Wicket
  Spring
  Hibernate

Any ideas would be greatly appreciated.

Thanks,

Bruce.


Re: IOException "ZIP entry size is too large" when downloading excel file

2012-08-25 Thread sdia1400
Thank Francois, 
As mentioned earlier, exactly same piece of code when run on its own works.
However, it throws IOException when I plug the same in my wicket application
with spring/hibernate/mysql.  

The only difference between two setups is spring/hibernate and the following
two lines from exception description mention spring

at 
org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:113)
 
at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)


thanks.



--
View this message in context: 
http://apache-wicket.1842946.n4.nabble.com/IOException-ZIP-entry-size-is-too-large-when-downloading-excel-file-tp4651492p4651495.html
Sent from the Users forum mailing list archive at Nabble.com.

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: Interpolate response with IResponseFilter

2012-08-25 Thread Sven Meier

Just an idea:

You could use an AjaxRequestTarget.IListener which adds a temporary 
behavior to the updated components.


Sven

On 08/24/2012 06:19 PM, guillaume.mary wrote:

Because I didn't know AbstractTransformerBehavior  ! :)
Many thanks !
I put it on my Page instance so it fullfills the last case of post +
redirect (but the filter is still necessary for components refreshed by
Ajax, otherwise I should add AbstractTransformerBehavior to all components
of my Page)





--
View this message in context: 
http://apache-wicket.1842946.n4.nabble.com/Interpolate-response-with-IResponseFilter-tp4651476p4651486.html
Sent from the Users forum mailing list archive at Nabble.com.

-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org




-
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org



Re: IOException "ZIP entry size is too large" when downloading excel file

2012-08-25 Thread Francois Meillet
Have a look to ZipInputStreamZipEntrySource.java line 117
https://svn.apache.org/repos/asf/poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/util/ZipInputStreamZipEntrySource.java

Francois

Le 25 août 2012 à 09:01, sdia1400 a écrit :

> Using eclipse/tomcat, I have a single page wicket app with a single link for
> downloading an excel sheet (*.xlsm, around 6MB) and it works, great. 
> However, when I plug the same piece of code in my main web application
> (wicket + spring + hibernate + mysql), it throws 
> "java.io.IOException: ZIP entry size is too large". I am not able to figure
> out the problem. I suspect it has something to do with springframe that I
> use in my main web app. 
> 
> Here is the exception 
> 
> java.io.IOException: ZIP entry size is too large 
>at
> org.apache.poi.openxml4j.util.ZipInputStreamZipEntrySource$FakeZipEntry.(ZipInputStreamZipEntrySource.java:117)
>  
>at
> org.apache.poi.openxml4j.util.ZipInputStreamZipEntrySource.(ZipInputStreamZipEntrySource.java:55)
>  
>at
> org.apache.poi.openxml4j.opc.ZipPackage.(ZipPackage.java:83) 
>at org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:228) 
>at org.apache.poi.util.PackageHelper.open(PackageHelper.java:39) 
>at
> org.apache.poi.xssf.usermodel.XSSFWorkbook.(XSSFWorkbook.java:187) 
>at
> com.fhlabs.app.DownloadGeneratedExcelPage1$1$1.getData(DownloadGeneratedExcelPage1.java:39)
>  
>at
> org.apache.wicket.request.resource.ByteArrayResource.newResourceResponse(ByteArrayResource.java:101)
>  
>at
> org.apache.wicket.request.resource.AbstractResource.respond(AbstractResource.java:477)
>  
>at
> org.apache.wicket.request.handler.resource.ResourceRequestHandler.respond(ResourceRequestHandler.java:77)
>  
>at
> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:712)
>  
>at
> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:63)
>  
>at
> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:96)
>  
>at
> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:208)
>  
>at
> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:251)
>  
>at
> org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:162)
>  
>at
> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:218) 
>at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>  
>at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>  
>at
> org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:113)
>  
>at
> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>  
>at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>  
>at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>  
>at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
>  
>at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
>  
>at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
>  
>at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168) 
>at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) 
>at
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929) 
>at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
>  
>at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405) 
>at
> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:964)
>  
>at
> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515)
>  
>at
> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:304)
>  
>at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>  
>at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>  
>at java.lang.Thread.run(Thread.java:662) 
> 
> 
>Here is the code... 
> public class DownloadGeneratedExcelPage1 extends WebPage { 
>private static final long serialVersionUID = 1L; 
>public DownloadGeneratedExcelPage1() { 
>add(new Link("download") { 
>private static final long serialVersionUID = 1L; 
> 
>@Override 
>public void onClick() { 
>f

IOException "ZIP entry size is too large" when downloading excel file

2012-08-25 Thread sdia1400
Using eclipse/tomcat, I have a single page wicket app with a single link for
downloading an excel sheet (*.xlsm, around 6MB) and it works, great. 
However, when I plug the same piece of code in my main web application
(wicket + spring + hibernate + mysql), it throws 
"java.io.IOException: ZIP entry size is too large". I am not able to figure
out the problem. I suspect it has something to do with springframe that I
use in my main web app. 

Here is the exception 

java.io.IOException: ZIP entry size is too large 
at
org.apache.poi.openxml4j.util.ZipInputStreamZipEntrySource$FakeZipEntry.(ZipInputStreamZipEntrySource.java:117)
 
at
org.apache.poi.openxml4j.util.ZipInputStreamZipEntrySource.(ZipInputStreamZipEntrySource.java:55)
 
at
org.apache.poi.openxml4j.opc.ZipPackage.(ZipPackage.java:83) 
at org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:228) 
at org.apache.poi.util.PackageHelper.open(PackageHelper.java:39) 
at
org.apache.poi.xssf.usermodel.XSSFWorkbook.(XSSFWorkbook.java:187) 
at
com.fhlabs.app.DownloadGeneratedExcelPage1$1$1.getData(DownloadGeneratedExcelPage1.java:39)
 
at
org.apache.wicket.request.resource.ByteArrayResource.newResourceResponse(ByteArrayResource.java:101)
 
at
org.apache.wicket.request.resource.AbstractResource.respond(AbstractResource.java:477)
 
at
org.apache.wicket.request.handler.resource.ResourceRequestHandler.respond(ResourceRequestHandler.java:77)
 
at
org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:712)
 
at
org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:63)
 
at
org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:96)
 
at
org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:208)
 
at
org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:251)
 
at
org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:162)
 
at
org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:218) 
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
 
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
 
at
org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:113)
 
at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
 
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
 
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
 
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
 
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
 
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
 
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168) 
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) 
at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929) 
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
 
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:405) 
at
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:964)
 
at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:515)
 
at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:304)
 
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
 
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 
at java.lang.Thread.run(Thread.java:662) 


Here is the code... 
public class DownloadGeneratedExcelPage1 extends WebPage { 
private static final long serialVersionUID = 1L; 
public DownloadGeneratedExcelPage1() { 
add(new Link("download") { 
private static final long serialVersionUID = 1L; 

@Override 
public void onClick() { 
final IResource resource = new
ByteArrayResource( 
"application/vnd.ms-excel")
{ 
private static final long
serialVersionUID = 1L; 

@Override 
protected byte[] getData(Attributes
attributes) { 
InputStream in =
Downloa