Re: Native WebSockets - exceptions and sendRedirect inside WebSocketResponse

2016-01-11 Thread Martin Grigorov
And https://issues.apache.org/jira/browse/WICKET-6073 for Wicket 6.x to use
NIO connector.

Martin Grigorov
Wicket Training and Consulting
https://twitter.com/mtgrigorov

On Mon, Jan 11, 2016 at 9:03 PM, Martin Grigorov 
wrote:

> Hi,
>
> I have improved the quickstart in 7.x/8.x to enable support for JSR-356
> websocket in the quickstart by just uncommenting two lines in Start.java:
> https://issues.apache.org/jira/browse/WICKET-6072
>
> Thank you for all the feedback!
>
> Martin Grigorov
> Wicket Training and Consulting
> https://twitter.com/mtgrigorov
>
> On Mon, Jan 4, 2016 at 2:57 PM, Daniel Stoch 
> wrote:
>
>> On Fri, Jan 1, 2016 at 10:25 PM, Martin Grigorov 
>> wrote:
>> > Hi,
>> >
>> >
>> > On Mon, Dec 28, 2015 at 4:49 PM, Daniel Stoch 
>> > wrote:
>> >
>> >> Hi,
>> >>
>> >> As I wrote in my previous post "Native WebSockets - cookies and last
>> >> handler question": In WebSocketResponse many methods throws
>> >> UnsupportedOperationException. Some of them can be customized now
>> >> thanks to WICKET-6054.
>> >>
>> >> But I have found another problem with WebSocketResponse.sendRedirect()
>> >> method. When you send a message using
>> >> IWebSocketConnection.sendMessage() and an exeption is raised somewhere
>> >> during processing of this message you can get the following exception
>> >> (the orignal exception is lost):
>> >>
>> >> Error during processing error message
>> >> java.lang.UnsupportedOperationException
>> >> at
>> >>
>> org.apache.wicket.protocol.ws.api.WebSocketResponse.sendRedirect(WebSocketResponse.java:205)
>> >> at
>> >>
>> org.apache.wicket.request.handler.render.WebPageRenderer.redirectTo(WebPageRenderer.java:176)
>> >> at
>> >>
>> org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:327)
>> >> at
>> >>
>> org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175)
>> >> at
>> >>
>> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:890)
>> >> at
>> >>
>> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
>> >> at
>> >>
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:310)
>> >> at
>> >>
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> >> at
>> >>
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> >> at
>> >>
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> >> at
>> >>
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> >> at
>> >>
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> >> at
>> >>
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> >> at
>> >>
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> >> at
>> >>
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> >> at
>> >>
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> >> at
>> >>
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> >> at
>> >>
>> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:233)
>> >> at
>> >>
>> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
>> >> at
>> >>
>> org.apache.wicket.protocol.ws.api.AbstractWebSocketProcessor.broadcastMessage(AbstractWebSocketProcessor.java:251)
>> >> at
>> >>
>> org.apache.wicket.protocol.ws.api.AbstractWebSocketConnection.sendMessage(AbstractWebSocketConnection.java:43)
>> >>
>> >>
>> >> This is because WebPageRenderer by default calls redirectTo method. So
>> >> it looks like WebSocketResponse.sendRedirect() should not throw
>> >> exception in the default implementation?
>> >>
>> >
>> > The default is to throw an exception so that you know that you are
>> trying
>> > to do something that is really not supported.
>> > But now I think we can actually add support for it - as Ajax does with
>> > ...
>> > Please file a ticket with a quickstart app!
>> > Thank you!
>> >
>>
>> WICKET-6064
>>
>>
>> BTW: The quickstart app is not compatible with websockets when you are
>> trying to use Start.main():
>>
>> java.lang.IllegalStateException: Websockets not supported on blocking
>> connectors
>> at
>> org.eclipse.jetty.websocket.WebSocketFactory.upgrade(WebSocketFactory.java:237)
>> at
>> org.eclipse.jetty.websocket.WebSocketFactory.acceptWebSocket(WebSocketFactory.java:396)
>> at
>> org.apache.wicket.protocol.ws.jetty.Jetty7WebSocketFilter.acceptWebSocket(Jetty7WebSocketFilter.java:74)
>>   

Re: Native WebSockets - exceptions and sendRedirect inside WebSocketResponse

2016-01-11 Thread Martin Grigorov
Hi,

I have improved the quickstart in 7.x/8.x to enable support for JSR-356
websocket in the quickstart by just uncommenting two lines in Start.java:
https://issues.apache.org/jira/browse/WICKET-6072

Thank you for all the feedback!

Martin Grigorov
Wicket Training and Consulting
https://twitter.com/mtgrigorov

On Mon, Jan 4, 2016 at 2:57 PM, Daniel Stoch  wrote:

> On Fri, Jan 1, 2016 at 10:25 PM, Martin Grigorov 
> wrote:
> > Hi,
> >
> >
> > On Mon, Dec 28, 2015 at 4:49 PM, Daniel Stoch 
> > wrote:
> >
> >> Hi,
> >>
> >> As I wrote in my previous post "Native WebSockets - cookies and last
> >> handler question": In WebSocketResponse many methods throws
> >> UnsupportedOperationException. Some of them can be customized now
> >> thanks to WICKET-6054.
> >>
> >> But I have found another problem with WebSocketResponse.sendRedirect()
> >> method. When you send a message using
> >> IWebSocketConnection.sendMessage() and an exeption is raised somewhere
> >> during processing of this message you can get the following exception
> >> (the orignal exception is lost):
> >>
> >> Error during processing error message
> >> java.lang.UnsupportedOperationException
> >> at
> >>
> org.apache.wicket.protocol.ws.api.WebSocketResponse.sendRedirect(WebSocketResponse.java:205)
> >> at
> >>
> org.apache.wicket.request.handler.render.WebPageRenderer.redirectTo(WebPageRenderer.java:176)
> >> at
> >>
> org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:327)
> >> at
> >>
> org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175)
> >> at
> >>
> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:890)
> >> at
> >>
> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
> >> at
> >>
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:310)
> >> at
> >>
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> >> at
> >>
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> >> at
> >>
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> >> at
> >>
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> >> at
> >>
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> >> at
> >>
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> >> at
> >>
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> >> at
> >>
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> >> at
> >>
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> >> at
> >>
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> >> at
> >>
> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:233)
> >> at
> >>
> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
> >> at
> >>
> org.apache.wicket.protocol.ws.api.AbstractWebSocketProcessor.broadcastMessage(AbstractWebSocketProcessor.java:251)
> >> at
> >>
> org.apache.wicket.protocol.ws.api.AbstractWebSocketConnection.sendMessage(AbstractWebSocketConnection.java:43)
> >>
> >>
> >> This is because WebPageRenderer by default calls redirectTo method. So
> >> it looks like WebSocketResponse.sendRedirect() should not throw
> >> exception in the default implementation?
> >>
> >
> > The default is to throw an exception so that you know that you are trying
> > to do something that is really not supported.
> > But now I think we can actually add support for it - as Ajax does with
> > ...
> > Please file a ticket with a quickstart app!
> > Thank you!
> >
>
> WICKET-6064
>
>
> BTW: The quickstart app is not compatible with websockets when you are
> trying to use Start.main():
>
> java.lang.IllegalStateException: Websockets not supported on blocking
> connectors
> at
> org.eclipse.jetty.websocket.WebSocketFactory.upgrade(WebSocketFactory.java:237)
> at
> org.eclipse.jetty.websocket.WebSocketFactory.acceptWebSocket(WebSocketFactory.java:396)
> at
> org.apache.wicket.protocol.ws.jetty.Jetty7WebSocketFilter.acceptWebSocket(Jetty7WebSocketFilter.java:74)
> at
> org.apache.wicket.protocol.ws.AbstractUpgradeFilter.processRequestCycle(AbstractUpgradeFilter.java:55)
> at
> org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
> at
> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
> at
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletH

Re: Native WebSockets - exceptions and sendRedirect inside WebSocketResponse

2016-01-04 Thread Daniel Stoch
On Fri, Jan 1, 2016 at 10:25 PM, Martin Grigorov  wrote:
> Hi,
>
>
> On Mon, Dec 28, 2015 at 4:49 PM, Daniel Stoch 
> wrote:
>
>> Hi,
>>
>> As I wrote in my previous post "Native WebSockets - cookies and last
>> handler question": In WebSocketResponse many methods throws
>> UnsupportedOperationException. Some of them can be customized now
>> thanks to WICKET-6054.
>>
>> But I have found another problem with WebSocketResponse.sendRedirect()
>> method. When you send a message using
>> IWebSocketConnection.sendMessage() and an exeption is raised somewhere
>> during processing of this message you can get the following exception
>> (the orignal exception is lost):
>>
>> Error during processing error message
>> java.lang.UnsupportedOperationException
>> at
>> org.apache.wicket.protocol.ws.api.WebSocketResponse.sendRedirect(WebSocketResponse.java:205)
>> at
>> org.apache.wicket.request.handler.render.WebPageRenderer.redirectTo(WebPageRenderer.java:176)
>> at
>> org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:327)
>> at
>> org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175)
>> at
>> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:890)
>> at
>> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
>> at
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:310)
>> at
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> at
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> at
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> at
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> at
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> at
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> at
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> at
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> at
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> at
>> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
>> at
>> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:233)
>> at
>> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
>> at
>> org.apache.wicket.protocol.ws.api.AbstractWebSocketProcessor.broadcastMessage(AbstractWebSocketProcessor.java:251)
>> at
>> org.apache.wicket.protocol.ws.api.AbstractWebSocketConnection.sendMessage(AbstractWebSocketConnection.java:43)
>>
>>
>> This is because WebPageRenderer by default calls redirectTo method. So
>> it looks like WebSocketResponse.sendRedirect() should not throw
>> exception in the default implementation?
>>
>
> The default is to throw an exception so that you know that you are trying
> to do something that is really not supported.
> But now I think we can actually add support for it - as Ajax does with
> ...
> Please file a ticket with a quickstart app!
> Thank you!
>

WICKET-6064


BTW: The quickstart app is not compatible with websockets when you are
trying to use Start.main():

java.lang.IllegalStateException: Websockets not supported on blocking connectors
at 
org.eclipse.jetty.websocket.WebSocketFactory.upgrade(WebSocketFactory.java:237)
at 
org.eclipse.jetty.websocket.WebSocketFactory.acceptWebSocket(WebSocketFactory.java:396)
at 
org.apache.wicket.protocol.ws.jetty.Jetty7WebSocketFilter.acceptWebSocket(Jetty7WebSocketFilter.java:74)
at 
org.apache.wicket.protocol.ws.AbstractUpgradeFilter.processRequestCycle(AbstractUpgradeFilter.java:55)
at 
org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
at 
org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
at 
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1291)
at 
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:443)
at 
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
at 
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:556)
at 
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:227)
at 
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1044)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:372)
at 
org.eclipse.jetty.server.session.SessionHandler.doScope(Sessio

Re: Native WebSockets - exceptions and sendRedirect inside WebSocketResponse

2016-01-04 Thread Daniel Stoch
On Fri, Jan 1, 2016 at 10:26 PM, Martin Grigorov  wrote:
> Hi,
>
> On Tue, Dec 29, 2015 at 2:14 PM, Daniel Stoch 
> wrote:
>
>> Another problem with WebSocketRequest:
>>
>> @Override
>> public Url getUrl()
>> {
>> return null;
>> }
>>
>> @Override
>> public Url getClientUrl()
>> {
>> return null;
>> }
>>
>> null result in getUrl() method can leed to execptions in
>> UrlRequestParametersAdapter:
>>
>> java.lang.IllegalArgumentException: Argument 'url' may not be null.
>> at org.apache.wicket.util.lang.Args.notNull(Args.java:41)
>> at
>> org.apache.wicket.request.parameter.UrlRequestParametersAdapter.(UrlRequestParametersAdapter.java:48)
>> at
>> org.apache.wicket.request.Request.getQueryParameters(Request.java:128)
>> at
>> org.apache.wicket.request.Request.getRequestParameters(Request.java:136)
>>
>> Maybe these methods should better return empty Url instead of null (
>> return new Url(); )?
>>
>
> Please file a separate ticket with a quickstart app!
> Thank you!

WICKET-6063

--
Daniel

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



Re: Native WebSockets - exceptions and sendRedirect inside WebSocketResponse

2016-01-01 Thread Martin Grigorov
Hi,

On Tue, Dec 29, 2015 at 2:14 PM, Daniel Stoch 
wrote:

> Another problem with WebSocketRequest:
>
> @Override
> public Url getUrl()
> {
> return null;
> }
>
> @Override
> public Url getClientUrl()
> {
> return null;
> }
>
> null result in getUrl() method can leed to execptions in
> UrlRequestParametersAdapter:
>
> java.lang.IllegalArgumentException: Argument 'url' may not be null.
> at org.apache.wicket.util.lang.Args.notNull(Args.java:41)
> at
> org.apache.wicket.request.parameter.UrlRequestParametersAdapter.(UrlRequestParametersAdapter.java:48)
> at
> org.apache.wicket.request.Request.getQueryParameters(Request.java:128)
> at
> org.apache.wicket.request.Request.getRequestParameters(Request.java:136)
>
> Maybe these methods should better return empty Url instead of null (
> return new Url(); )?
>

Please file a separate ticket with a quickstart app!
Thank you!


>
> --
> Daniel
>
>
> On Mon, Dec 28, 2015 at 4:49 PM, Daniel Stoch 
> wrote:
> > Hi,
> >
> > As I wrote in my previous post "Native WebSockets - cookies and last
> > handler question": In WebSocketResponse many methods throws
> > UnsupportedOperationException. Some of them can be customized now
> > thanks to WICKET-6054.
> >
> > But I have found another problem with WebSocketResponse.sendRedirect()
> > method. When you send a message using
> > IWebSocketConnection.sendMessage() and an exeption is raised somewhere
> > during processing of this message you can get the following exception
> > (the orignal exception is lost):
> >
> > Error during processing error message
> > java.lang.UnsupportedOperationException
> > at
> org.apache.wicket.protocol.ws.api.WebSocketResponse.sendRedirect(WebSocketResponse.java:205)
> > at
> org.apache.wicket.request.handler.render.WebPageRenderer.redirectTo(WebPageRenderer.java:176)
> > at
> org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:327)
> > at
> org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175)
> > at
> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:890)
> > at
> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
> > at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:310)
> > at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> > at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> > at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> > at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> > at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> > at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> > at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> > at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> > at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> > at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> > at
> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:233)
> > at
> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
> > at
> org.apache.wicket.protocol.ws.api.AbstractWebSocketProcessor.broadcastMessage(AbstractWebSocketProcessor.java:251)
> > at
> org.apache.wicket.protocol.ws.api.AbstractWebSocketConnection.sendMessage(AbstractWebSocketConnection.java:43)
> >
> >
> > This is because WebPageRenderer by default calls redirectTo method. So
> > it looks like WebSocketResponse.sendRedirect() should not throw
> > exception in the default implementation?
> >
> > --
> > Best regards,
> > Daniel
>
> -
> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> For additional commands, e-mail: users-h...@wicket.apache.org
>
>


Re: Native WebSockets - exceptions and sendRedirect inside WebSocketResponse

2016-01-01 Thread Martin Grigorov
Hi,


On Mon, Dec 28, 2015 at 4:49 PM, Daniel Stoch 
wrote:

> Hi,
>
> As I wrote in my previous post "Native WebSockets - cookies and last
> handler question": In WebSocketResponse many methods throws
> UnsupportedOperationException. Some of them can be customized now
> thanks to WICKET-6054.
>
> But I have found another problem with WebSocketResponse.sendRedirect()
> method. When you send a message using
> IWebSocketConnection.sendMessage() and an exeption is raised somewhere
> during processing of this message you can get the following exception
> (the orignal exception is lost):
>
> Error during processing error message
> java.lang.UnsupportedOperationException
> at
> org.apache.wicket.protocol.ws.api.WebSocketResponse.sendRedirect(WebSocketResponse.java:205)
> at
> org.apache.wicket.request.handler.render.WebPageRenderer.redirectTo(WebPageRenderer.java:176)
> at
> org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:327)
> at
> org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175)
> at
> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:890)
> at
> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
> at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:310)
> at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at
> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:233)
> at
> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
> at
> org.apache.wicket.protocol.ws.api.AbstractWebSocketProcessor.broadcastMessage(AbstractWebSocketProcessor.java:251)
> at
> org.apache.wicket.protocol.ws.api.AbstractWebSocketConnection.sendMessage(AbstractWebSocketConnection.java:43)
>
>
> This is because WebPageRenderer by default calls redirectTo method. So
> it looks like WebSocketResponse.sendRedirect() should not throw
> exception in the default implementation?
>

The default is to throw an exception so that you know that you are trying
to do something that is really not supported.
But now I think we can actually add support for it - as Ajax does with
...
Please file a ticket with a quickstart app!
Thank you!


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


Re: Native WebSockets - exceptions and sendRedirect inside WebSocketResponse

2015-12-29 Thread Daniel Stoch
Another problem with WebSocketRequest:

@Override
public Url getUrl()
{
return null;
}

@Override
public Url getClientUrl()
{
return null;
}

null result in getUrl() method can leed to execptions in
UrlRequestParametersAdapter:

java.lang.IllegalArgumentException: Argument 'url' may not be null.
at org.apache.wicket.util.lang.Args.notNull(Args.java:41)
at 
org.apache.wicket.request.parameter.UrlRequestParametersAdapter.(UrlRequestParametersAdapter.java:48)
at org.apache.wicket.request.Request.getQueryParameters(Request.java:128)
at org.apache.wicket.request.Request.getRequestParameters(Request.java:136)

Maybe these methods should better return empty Url instead of null (
return new Url(); )?

--
Daniel


On Mon, Dec 28, 2015 at 4:49 PM, Daniel Stoch  wrote:
> Hi,
>
> As I wrote in my previous post "Native WebSockets - cookies and last
> handler question": In WebSocketResponse many methods throws
> UnsupportedOperationException. Some of them can be customized now
> thanks to WICKET-6054.
>
> But I have found another problem with WebSocketResponse.sendRedirect()
> method. When you send a message using
> IWebSocketConnection.sendMessage() and an exeption is raised somewhere
> during processing of this message you can get the following exception
> (the orignal exception is lost):
>
> Error during processing error message
> java.lang.UnsupportedOperationException
> at 
> org.apache.wicket.protocol.ws.api.WebSocketResponse.sendRedirect(WebSocketResponse.java:205)
> at 
> org.apache.wicket.request.handler.render.WebPageRenderer.redirectTo(WebPageRenderer.java:176)
> at 
> org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:327)
> at 
> org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175)
> at 
> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:890)
> at 
> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
> at 
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:310)
> at 
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at 
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at 
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at 
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at 
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at 
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at 
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at 
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at 
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at 
> org.apache.wicket.request.cycle.RequestCycle.executeExceptionRequestHandler(RequestCycle.java:319)
> at 
> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:233)
> at 
> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
> at 
> org.apache.wicket.protocol.ws.api.AbstractWebSocketProcessor.broadcastMessage(AbstractWebSocketProcessor.java:251)
> at 
> org.apache.wicket.protocol.ws.api.AbstractWebSocketConnection.sendMessage(AbstractWebSocketConnection.java:43)
>
>
> This is because WebPageRenderer by default calls redirectTo method. So
> it looks like WebSocketResponse.sendRedirect() should not throw
> exception in the default implementation?
>
> --
> Best regards,
> Daniel

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