You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@wicket.apache.org by fachhoch <fa...@gmail.com> on 2010/11/16 18:36:57 UTC

download file from database

I am trying to use wicket donwload 


here is my code


						add(new Link<Void>("downloadHelp"){
			@Override
			public void onClick() {
					
					
				IResourceStream resourceStream = new ByteArrayResourceStream(
manualService.getManualBytes(UserContextHolder.getOrgAbbrev(),"user_guide"));
				getRequestCycle().setRequestTarget(new
ResourceStreamRequestTarget(resourceStream)
				{
					@Override
					public String getFileName()
					{
						return ("User Guide.pdf");
					}
				});
			}
		});




ByteArrayResourceStream


public class ByteArrayResourceStream implements IResourceStream {
	
	
	private byte[] content = null; 

	public ByteArrayResourceStream( byte[] content) { 
	    this.content = content; 
	  } 
	
	
	@Override
	public void close() throws IOException {
		// TODO Auto-generated method stub

	}

	@Override
	public String getContentType() {
		// TODO Auto-generated method stub
		return "application/octet-stream";
	}

	@Override
	public InputStream getInputStream() throws ResourceStreamNotFoundException
{
		// TODO Auto-generated method stub
		return(new ByteArrayInputStream( content ));
	}

	@Override
	public Locale getLocale() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public long length() {
		// TODO Auto-generated method stub
		return 0;
	}

	@Override
	public void setLocale(Locale locale) {
		// TODO Auto-generated method stub

	}

	@Override
	public Time lastModifiedTime() {
		// TODO Auto-generated method stub
		return null;
	}

}



I am getting this exception when I click on donwload link


2010-11-16 12:31:34,412 [qtp30574165-21] ERROR
org.apache.wicket.RequestCycle - Unable to write the response
org.apache.wicket.WicketRuntimeException: Unable to write the response
	at org.apache.wicket.Response.handleException(Response.java:286)
	at org.apache.wicket.Response.write(Response.java:310)
	at
org.apache.wicket.request.target.resource.ResourceStreamRequestTarget.respond(ResourceStreamRequestTarget.java:160)
	at
org.apache.wicket.request.AbstractRequestCycleProcessor.respond(AbstractRequestCycleProcessor.java:105)
	at
org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1258)
	at org.apache.wicket.RequestCycle.step(RequestCycle.java:1329)
	at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1436)
	at org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
	at
org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:484)
	at
org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:317)
	at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1187)
	at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
	at
org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
	at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
	at
org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
	at
org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
	at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1187)
	at
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
	at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
	at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1187)
	at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:421)
	at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
	at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:493)
	at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
	at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:924)
	at
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:358)
	at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:183)
	at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:860)
	at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
	at
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:245)
	at
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)
	at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:113)
	at org.eclipse.jetty.server.Server.handle(Server.java:335)
	at
org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:588)
	at
org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:1029)
	at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:549)
	at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:211)
	at org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:418)
	at
org.eclipse.jetty.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:476)
	at
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:436)
	at java.lang.Thread.run(Thread.java:619)
Caused by: java.io.IOException: Closed
	at org.eclipse.jetty.server.HttpOutput.write(HttpOutput.java:140)
	at org.eclipse.jetty.server.HttpOutput.write(HttpOutput.java:86)
	at org.apache.wicket.util.io.Streams.copy(Streams.java:159)
	at org.apache.wicket.util.io.Streams.copy(Streams.java:126)
	at org.apache.wicket.Response.write(Response.java:306)
	... 39 more
2010-11-16 12:31:34,443 [qtp30574165-21] ERROR
org.apache.wicket.protocol.http.WebResponse - Unable to redirect to:
?x=0lpYWwsnieQdoW5DWjKI2g, HTTP Response has already been committed.
2010-11-16 12:31:34,443 [qtp30574165-21] ERROR
org.apache.wicket.protocol.http.WicketFilter - closing the buffer error
java.lang.IllegalStateException: Committed
	at org.eclipse.jetty.server.Response.resetBuffer(Response.java:1052)
	at org.eclipse.jetty.server.Response.sendRedirect(Response.java:441)
	at
javax.servlet.http.HttpServletResponseWrapper.sendRedirect(HttpServletResponseWrapper.java:136)
	at
org.acegisecurity.context.HttpSessionContextIntegrationFilter$OnRedirectUpdateSessionResponseWrapper.sendRedirect(HttpSessionContextIntegrationFilter.java:525)
	at
org.apache.wicket.protocol.http.WebResponse.redirect(WebResponse.java:249)
	at
org.apache.wicket.protocol.http.BufferedWebResponse.close(BufferedWebResponse.java:67)
	at
org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:500)
	at
org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:317)
	at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1187)
	at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
	at
org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
	at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
	at
org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
	at
org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
	at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1187)
	at
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
	at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
	at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1187)
	at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:421)
	at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
	at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:493)
	at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
	at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:924)
	at
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:358)
	at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:183)
	at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:860)
	at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
	at
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:245)
	at
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)
	at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:113)
	at org.eclipse.jetty.server.Server.handle(Server.java:335)
	at
org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:588)
	at
org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:1029)
	at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:549)
	at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:211)
	at org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:418)
	at
org.eclipse.jetty.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:476)
	at
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:436)
	at java.lang.Thread.run(Thread.java:619)






-- 
View this message in context: http://apache-wicket.1842946.n4.nabble.com/download-file-from-database-tp3045320p3045320.html
Sent from the Users forum mailing list archive at Nabble.com.

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