On Thu, Feb 21, 2019 at 5:35 PM Matteo Alessandroni <[email protected]> wrote:
> > > On 21/02/19 16:30, Martin Grigorov wrote: > > On Thu, Feb 21, 2019 at 5:24 PM Matteo Alessandroni < > [email protected]> > > wrote: > > > >> On 21/02/19 16:07, Martin Grigorov wrote: > >>> On Thu, Feb 21, 2019 at 4:41 PM Matteo Alessandroni < > >> [email protected]> > >>> wrote: > >>> > >>>> On 21/02/19 12:14, Martin Grigorov wrote: > >>>>> On Thu, Feb 21, 2019 at 12:11 PM Matteo Alessandroni < > >>>>> [email protected]> wrote: > >>>>> > >>>>>> Hi, > >>>>>> > >>>>>> On 21/02/19 11:05, Martin Grigorov wrote: > >>>>>>> When the WebSocket connection is established (maybe when the page > is > >>>>>>> loaded) you should see an entry in the Network tab. > >>>>>>> If you select this entry then on the right-side you should see any > WS > >>>>>>> messages to/from the server. > >>>>>> Yes I know how about WS debugging, but I do not see any WS request > >> (with > >>>>>> WS devtool filter and without it). > >>>>>> > >>>>> Maybe this is the problem. > >>>>> If there is no WebSocket response at all then there is no way the JS > >> code > >>>>> to be executed. > >>>>> > >>>>> But since your WebSocketBehavior callback method is executed then > there > >>>>> must be an established WebSocket connection. > >>>>> I have no idea what goes wrong. > >>>> It is strange because in our application version that uses Wicket 7.x > I > >>>> see no WS requests in DevTools console as well, but the code is > >>>> correctly executed and everything works. > >>>> Yes the WebSocket connection seems to be established anyway in both > our > >>>> versions so with both Wicket 7.x and 8.x, but for some reason the > >>>> "appendJavaScript()" method does not work on the > >>>> "WebSocketRequestHandler" object with Wicket 8.x. > >>>> > >>>> Is there anything else we can try to make it work? > >>>> > >>> Put a breakpoint at > >>> > >> > https://github.com/apache/wicket/blob/3704144b73521c6b10de5fa7864773230762e86c/wicket-core/src/main/java/org/apache/wicket/page/XmlPartialPageUpdate.java#L141 > >>> and see whether it is called. > >>> And another one at > >>> > >> > https://github.com/apache/wicket/blob/3704144b73521c6b10de5fa7864773230762e86c/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/api/WebSocketResponse.java#L86 > >>> to see whether the XML response is being written back to the browser in > >> the > >>> WebSocketConnection. > >> Thanks! > >> Ok the first method [1] was called many times and once was the one I'm > >> interested on where the "script" variable was: > >> > >> > >> > "window.Wicket.WebSocket.send('{"kind":"ADD_ENDPOINT","target":"...","source":"...","scope":"..."}');" > >> > >> also the second one [2] was called, but *only once* and both the "text" > >> and "binary" variables were null. > >> > > What is the type of "response" variable at > > > https://github.com/apache/wicket/blob/3704144b73521c6b10de5fa7864773230762e86c/wicket-core/src/main/java/org/apache/wicket/page/XmlPartialPageUpdate.java#L141 > > ? > > It seems it is not WebSocketResponse > > Ideed, it's "StringResponse"! > And it's content is something like this: > I didn't expect this! Can you please put a breakpoint at org.apache.wicket.response.StringResponse#StringResponse() (the constructor) and see where it is instantiated. AjaxRequestHandler uses StringResponse, but WebSocketRequestHandler does not. > > <?xml version="1.0" encoding="UTF-8"?><ajax-response><component > id="id178" ><![CDATA[<span id="id178"> > <div class="wizard-form"> > <div id="id204"> > <div class="wizard-overview"> > > </div> > <div class="wizard-header"> > <div> > <div> > <div class="wizard-step-title"> > <div></div> > </div> > <div class="wizard-step-summary"> > <div></div> > </div> > </div> > </div> > </div> > <div class="wizard-view"> > <div id="id207"> > <span id="id226"> > <span id="id227"> > > ... > > > > > > >> > >> [1] > >> > >> > https://github.com/apache/wicket/blob/3704144b73521c6b10de5fa7864773230762e86c/wicket-core/src/main/java/org/apache/wicket/page/XmlPartialPageUpdate.java#L141 > >> [2] > >> > >> > https://github.com/apache/wicket/blob/3704144b73521c6b10de5fa7864773230762e86c/wicket-native-websocket/wicket-native-websocket-core/src/main/java/org/apache/wicket/protocol/ws/api/WebSocketResponse.java#L86 > >> > >>>> Thanks > >>>> > >>>>>>> What is the type of resourceCreateEvent.getTarget() ? > >>>>>>> Is it WebSocketRequestHandler or AjaxRequestHandler ? > >>>>>> "resourceCreateEvent.getTarget()"type is "AjaxRequestHandler". > >>>>>> > >>>>>>>> [1] > >>>>>>>> > >>>>>>>> > >> > https://github.com/apache/syncope/blob/2_1_X/client/console/src/main/java/org/apache/syncope/client/console/topology/Topology.java#L602-L609 > >>>>>>>> On 21/02/19 10:01, Martin Grigorov wrote: > >>>>>>>>> Hi, > >>>>>>>>> > >>>>>>>>> Check the browser's Dev Tools' console for any JavaScript errors. > >>>>>>>>> If there are no errors then check in the DevTools Network tab > >> whether > >>>>>> the > >>>>>>>>> WebSocket response frame contains the JS code in its body. It > must > >> be > >>>>>>>>> inside <execution> XML element. If it is not there at all then it > >>>> must > >>>>>> be > >>>>>>>>> something on the server side. > >>>>>>>>> > >>>>>>>>> On Thu, Feb 21, 2019 at 10:54 AM Matteo Alessandroni < > >>>>>>>> [email protected]> > >>>>>>>>> wrote: > >>>>>>>>> > >>>>>>>>>> Hi, > >>>>>>>>>> > >>>>>>>>>> we have a logic where a websocket message is sent from an > >>>> "onEvent()" > >>>>>>>>>> method [1] and catched in a WebSocketBehavior class [2]. > >>>>>>>>>> Then, a call to a js method "addEndpoint()"[3] must be executed. > >>>>>>>>>> Our problem is that the js code "addEndpoint(...)" inside > >>>>>>>>>> "handler.appendJavaScript(...)" [4] is not executed, so the code > >>>>>>>>>> correctly reaches that switch case but it's like the > >>>>>>>>>> "appendJavaScript(...)" is not working. > >>>>>>>>>> > >>>>>>>>>> On our application v2.0.x that code works and it uses Wicket > 7.x, > >>>>>> while > >>>>>>>>>> the newer v2.1.x uses Wicket 8.x and it does not work. > >>>>>>>>>> > >>>>>>>>>> Could you please give us an hint of this? Is there anything we > are > >>>>>>>>>> missing to make it work for Wicket 8.x? > >>>>>>>>>> > >>>>>>>>>> Thank you! > >>>>>>>>>> > >>>>>>>>>> > >>>>>>>>>> [1] > >>>>>>>>>> > >>>>>>>>>> > >> > https://github.com/apache/syncope/blob/2_1_X/client/console/src/main/java/org/apache/syncope/client/console/topology/Topology.java#L602-L609 > >>>>>>>>>> [2] > >>>>>>>>>> > >>>>>>>>>> > >> > https://github.com/apache/syncope/blob/2_1_X/client/console/src/main/java/org/apache/syncope/client/console/topology/TopologyWebSocketBehavior.java#L153-L157 > >>>>>>>>>> [3] > >>>>>>>>>> > >>>>>>>>>> > >> > https://github.com/apache/syncope/blob/2_1_X/client/console/src/main/resources/META-INF/resources/js/topology.js#L269-L280 > >>>>>>>>>> [4] > >>>>>>>>>> > >>>>>>>>>> > >> > https://github.com/apache/syncope/blob/2_1_X/client/console/src/main/java/org/apache/syncope/client/console/topology/TopologyWebSocketBehavior.java#L154 > >>>>>>>>>> -- > >>>>>>>>>> > >>>>>>>>>> Dott. Matteo Alessandroni > >>>>>>>>>> > >>>>>>>>>> Software Engineer @ Tirasa S.r.l. > >>>>>>>>>> > >>>>>>>>>> Viale Vittoria Colonna, 97 - 65127 Pescara > >>>>>>>>>> Tel +39 0859116307 / FAX +39 0859111173 > >>>>>>>>>> > >>>>>>>>>> http://www.tirasa.net > >>>>>>>>>> > >>>>>>>>>> Apache Syncope PMC Member > >>>>>>>>>> http://people.apache.org/phonebook.html?uid=skylark17 > >>>>>>>>>> <http://people.apache.org/phonebook.html?uid=skylark17> > >>>>>>>>>> > >>>>>>>>>> Tirasa S.r.l. <http://www.tirasa.net> > >>>>>>>>>> > >>>>>>>> -- > >>>>>>>> > >>>>>>>> Dott. Matteo Alessandroni > >>>>>>>> > >>>>>>>> Software Engineer @ Tirasa S.r.l. > >>>>>>>> > >>>>>>>> Viale Vittoria Colonna, 97 - 65127 Pescara > >>>>>>>> Tel +39 0859116307 / FAX +39 0859111173 > >>>>>>>> > >>>>>>>> http://www.tirasa.net > >>>>>>>> > >>>>>>>> Apache Syncope PMC Member > >>>>>>>> http://people.apache.org/phonebook.html?uid=skylark17 > >>>>>>>> <http://people.apache.org/phonebook.html?uid=skylark17> > >>>>>>>> > >>>>>>>> Tirasa S.r.l. <http://www.tirasa.net> > >>>>>>>> > >>>>>> -- > >>>>>> > >>>>>> Dott. Matteo Alessandroni > >>>>>> > >>>>>> Software Engineer @ Tirasa S.r.l. > >>>>>> > >>>>>> Viale Vittoria Colonna, 97 - 65127 Pescara > >>>>>> Tel +39 0859116307 / FAX +39 0859111173 > >>>>>> > >>>>>> http://www.tirasa.net > >>>>>> > >>>>>> Apache Syncope PMC Member > >>>>>> http://people.apache.org/phonebook.html?uid=skylark17 > >>>>>> <http://people.apache.org/phonebook.html?uid=skylark17> > >>>>>> > >>>>>> Tirasa S.r.l. <http://www.tirasa.net> > >>>>>> > >>>> -- > >>>> > >>>> Dott. Matteo Alessandroni > >>>> > >>>> Software Engineer @ Tirasa S.r.l. > >>>> > >>>> Viale Vittoria Colonna, 97 - 65127 Pescara > >>>> Tel +39 0859116307 / FAX +39 0859111173 > >>>> > >>>> http://www.tirasa.net > >>>> > >>>> Apache Syncope PMC Member > >>>> http://people.apache.org/phonebook.html?uid=skylark17 > >>>> <http://people.apache.org/phonebook.html?uid=skylark17> > >>>> > >>>> Tirasa S.r.l. <http://www.tirasa.net> > >>>> > >> -- > >> > >> Dott. Matteo Alessandroni > >> > >> Software Engineer @ Tirasa S.r.l. > >> > >> Viale Vittoria Colonna, 97 - 65127 Pescara > >> Tel +39 0859116307 / FAX +39 0859111173 > >> > >> http://www.tirasa.net > >> > >> Apache Syncope PMC Member > >> http://people.apache.org/phonebook.html?uid=skylark17 > >> <http://people.apache.org/phonebook.html?uid=skylark17> > >> > >> Tirasa S.r.l. <http://www.tirasa.net> > >> > > -- > > Dott. Matteo Alessandroni > > Software Engineer @ Tirasa S.r.l. > > Viale Vittoria Colonna, 97 - 65127 Pescara > Tel +39 0859116307 / FAX +39 0859111173 > > http://www.tirasa.net > > Apache Syncope PMC Member > http://people.apache.org/phonebook.html?uid=skylark17 > <http://people.apache.org/phonebook.html?uid=skylark17> > > Tirasa S.r.l. <http://www.tirasa.net> >
