Hi Ben,

great that you've solved the issue already.

Indeed, with that method you tell Wicket not to schedule an AjaxRequestHandler.

Sven

Am 23. August 2019 00:30:26 MESZ schrieb Benjamin Chew <bc...@smarthealth.com>:
>I solved this! I added this to the class and it worked:
>
>@Override
>public boolean rendersPage() {
>    return false;
>}
>
>Thanks,
>Ben
>
>
>On Thu, Aug 22, 2019 at 1:33 PM Benjamin Chew <bc...@smarthealth.com>
>wrote:
>
>> I forgot to add that this iframe is loaded in an ajax modal of base
>class
>> GenericPanel.
>>
>> Thanks,
>> Ben
>>
>>
>> On Thu, Aug 22, 2019 at 1:04 PM Benjamin Chew <bc...@smarthealth.com>
>> wrote:
>>
>>> Hi,
>>>
>>> I'm pretty new to Wicket, and am trying to figure out how to stream
>a PDF
>>> into an iFrame. I've searched for a solution and come across
>Ernesto's
>>> DocumentInlineFrame class here:
>>>
>>>
>>>
>https://github.com/reiern70/antilia-bits/blob/master/content-iframe/src/main/java/com/antilia/iframe/DocumentInlineFrame.java
>>>
>>> Since IResourceListener is no longer a part of Wicket 8, I've
>modified
>>> the class in these ways:
>>> 1) The class implements IRequestListener
>>> 2) Return urlForListener(null) in getURL()
>>> 3) Renamed onResourceRequested() to onRequest()
>>>
>>> But I'm getting an error:
>>> ERROR org.apache.wicket.DefaultExceptionMapper  - Unexpected error
>>> occurred
>>> java.lang.IllegalStateException: Committed
>>>
>>> The code and full stack trace are below. Any ideas on what I'm doing
>>> wrong?
>>>
>>> Thanks,
>>> Ben
>>>
>>> /*** CODE ***/
>>> public class DocumentInlineFrame extends WebMarkupContainer
>implements
>>> *IRequestListener* {
>>>     private static final long serialVersionUID = 1 L;
>>>
>>>     private IResource documentResource;
>>>
>>>     /**
>>>      * Constructor receiving an IResourceStream..
>>>      *
>>>      * @param id
>>>      * @param stream
>>>      */
>>>     public DocumentInlineFrame(String id, IResourceStream stream) {
>>>         this(id, new ResourceStreamResource(stream));
>>>     }
>>>
>>>     /**
>>>      * Constructor receiving an IResource..
>>>      *
>>>      * @param id
>>>      * @param resourceListener
>>>      */
>>>     public DocumentInlineFrame(final String id, IResource
>>> documentResource) {
>>>         super(id);
>>>         this.documentResource = documentResource;
>>>     }
>>>
>>>     /**
>>>      * Gets the url to use for this link.
>>>      *
>>>      * @return The URL that this link links to
>>>      */
>>>     protected CharSequence getURL() {
>>>         //return urlForListener(new PageParameters());
>>>         *return urlForListener(null);*
>>>     }
>>>
>>>     /**
>>>      * Handles this frame's tag.
>>>      *
>>>      * @param tag the component tag
>>>      * @see org.apache.wicket.Component#onComponentTag(ComponentTag)
>>>      */
>>>     @Override
>>>     protected void onComponentTag(final ComponentTag tag) {
>>>         checkComponentTag(tag, "iframe");
>>>
>>>         // Set href to link to this frame's frameRequested method
>>>         CharSequence url = getURL();
>>>
>>>         // generate the src attribute
>>>         tag.put("src", Strings.replaceAll(url, "&", "&amp;"));
>>>
>>>         super.onComponentTag(tag);
>>>     }
>>>
>>>     @Override
>>>     protected boolean getStatelessHint() {
>>>         return false;
>>>     }
>>>
>>>     @Override
>>>     public void onRequest() {
>>>
>>>
>>> *RequestCycle requestCycle = RequestCycle.get();        Attributes
>>> attributes = new Attributes(requestCycle.getRequest(),
>>> requestCycle.getResponse(), null);
>>> this.documentResource.respond(attributes);*
>>>     }
>>> }
>>> /*** END CODE ***/
>>>
>>> /*** STACK TRACE ***/
>>> Aug 22 12:37:54 WARN  RequestCycleExtra  -
>>> ********************************
>>> Aug 22 12:37:54 ERROR org.apache.wicket.DefaultExceptionMapper  -
>>> Unexpected error occurred
>>> java.lang.IllegalStateException: Committed
>>> at
>org.eclipse.jetty.server.HttpChannel.resetBuffer(HttpChannel.java:894)
>>> at
>>>
>org.eclipse.jetty.server.HttpOutput$Interceptor.resetBuffer(HttpOutput.java:116)
>>> at
>org.eclipse.jetty.server.HttpOutput.resetBuffer(HttpOutput.java:959)
>>> at org.eclipse.jetty.server.Response.resetBuffer(Response.java:1312)
>>> at org.eclipse.jetty.server.Response.sendRedirect(Response.java:720)
>>> at org.eclipse.jetty.server.Response.sendRedirect(Response.java:729)
>>> at
>>>
>org.apache.wicket.protocol.http.servlet.ServletWebResponse.sendRedirect(ServletWebResponse.java:288)
>>> at
>>>
>org.apache.wicket.protocol.http.HeaderBufferingWebResponse.sendRedirect(HeaderBufferingWebResponse.java:117)
>>> at
>>>
>org.apache.wicket.request.handler.render.WebPageRenderer.redirectTo(WebPageRenderer.java:161)
>>> at
>>>
>org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:280)
>>> at
>>>
>org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:202)
>>> at
>>>
>org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:914)
>>> at
>>>
>org.apache.wicket.request.RequestHandlerExecutor.execute(RequestHandlerExecutor.java:65)
>>> at
>>>
>org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:282)
>>> at
>>>
>org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:253)
>>> at
>>>
>org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:221)
>>> at
>>>
>org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:275)
>>> at
>>>
>org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:206)
>>> at
>>>
>org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:299)
>>> at
>>>
>org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
>>> at
>>>
>org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533)
>>> at
>>>
>org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
>>> at
>>>
>org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:740)
>>> at
>>>
>org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
>>> at
>>>
>org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
>>> at
>>>
>org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
>>> at
>>>
>org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
>>> at
>>>
>org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1340)
>>> at
>>>
>org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
>>> at
>>>
>org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)
>>> at
>>>
>org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
>>> at
>>>
>org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
>>> at
>>>
>org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1242)
>>> at
>>>
>org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
>>> at
>>>
>org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
>>> at org.eclipse.jetty.server.Server.handle(Server.java:503)
>>> at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364)
>>> at
>>>
>org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)
>>> at
>>>
>org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
>>> at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
>>> at
>org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118)
>>> at
>>>
>org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
>>> at
>>>
>org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
>>> at
>>>
>org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
>>> at
>>>
>org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
>>> at
>>>
>org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
>>> at
>>>
>org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
>>> at
>>>
>org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
>>> at java.lang.Thread.run(Thread.java:745)
>>> Aug 22 12:37:54 ERROR org.apache.wicket.request.cycle.RequestCycle 
>-
>>> Exception retry count exceeded
>>> java.lang.IllegalStateException: STREAM
>>> at org.eclipse.jetty.server.Response.getWriter(Response.java:931)
>>> at
>>>
>org.apache.wicket.protocol.http.servlet.ServletWebResponse.write(ServletWebResponse.java:110)
>>> at
>>>
>org.apache.wicket.protocol.http.HeaderBufferingWebResponse.write(HeaderBufferingWebResponse.java:179)
>>> at
>>>
>org.apache.wicket.protocol.http.BufferedWebResponse$WriteCharSequenceAction.invoke(BufferedWebResponse.java:171)
>>> at
>>>
>org.apache.wicket.protocol.http.BufferedWebResponse.writeTo(BufferedWebResponse.java:602)
>>> at
>>>
>org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:198)
>>> at
>>>
>org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:202)
>>> at
>>>
>org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:914)
>>> at
>>>
>org.apache.wicket.request.RequestHandlerExecutor.execute(RequestHandlerExecutor.java:65)
>>> at
>>>
>org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:282)
>>> at
>>>
>org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:327)
>>> at
>>>
>org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:335)
>>> at
>>>
>org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:335)
>>> at
>>>
>org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:335)
>>> at
>>>
>org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:335)
>>> at
>>>
>org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:335)
>>> at
>>>
>org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:335)
>>> at
>>>
>org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:335)
>>> at
>>>
>org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:335)
>>> at
>>>
>org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:335)
>>> at
>>>
>org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:335)
>>> at
>>>
>org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:259)
>>> at
>>>
>org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:221)
>>> at
>>>
>org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:275)
>>> at
>>>
>org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:206)
>>> at
>>>
>org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:299)
>>> at
>>>
>org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
>>> at
>>>
>org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533)
>>> at
>>>
>org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
>>> at
>>>
>org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:740)
>>> at
>>>
>org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
>>> at
>>>
>org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
>>> at
>>>
>org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
>>> at
>>>
>org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
>>> at
>>>
>org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1340)
>>> at
>>>
>org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
>>> at
>>>
>org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)
>>> at
>>>
>org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
>>> at
>>>
>org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
>>> at
>>>
>org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1242)
>>> at
>>>
>org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
>>> at
>>>
>org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
>>> at org.eclipse.jetty.server.Server.handle(Server.java:503)
>>> at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:364)
>>> at
>>>
>org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)
>>> at
>>>
>org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
>>> at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
>>> at
>org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118)
>>> at
>>>
>org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
>>> at
>>>
>org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
>>> at
>>>
>org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
>>> at
>>>
>org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
>>> at
>>>
>org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
>>> at
>>>
>org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:765)
>>> at
>>>
>org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:683)
>>> at java.lang.Thread.run(Thread.java:745)
>>> /*** END STACK TRACE ***/
>>>
>>

Reply via email to