You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@guacamole.apache.org by messido <mo...@gmail.com> on 2019/02/02 10:23:58 UTC

HttpServletRequest getParameter function returning null

So I came across two issues once I updated the version of guacamole to 1.0.0

1) HttpServletRequest doesn't hold any of my parameters anymore
2) Can't connect to clients anymore due to *java.lang.NullPointerException

org.apache.guacamole.protocol.GuacamoleInstruction.toString(GuacamoleInstruction.java:112)*

Looks like the guacamole tunnel is receiving the request fine, here are the
logs:
*guacd[1]: INFO: Creating new client for protocol "rdp"
guacd[1]: INFO: Connection ID is "$2db8ad42-9af5-4b61-922d-f4a58eca1eaf"
guacd[395]: INFO:       Security mode: ANY
guacd[395]: INFO:       Resize method: none
guacd[395]: INFO:       User "@f595f174-b94b-4f14-a3b4-f2e3b4a14596" joined
connection "$2db8ad42-9af5-4b61-922d-f4a58eca1eaf" (1 users now present)
guacd[395]: INFO:       Recording of session will be saved to "XXXXXXXXX".
guacd[395]: INFO:       Loading keymap "base"
guacd[395]: INFO:       Loading keymap "en-us-qwerty"
guacd[395]: INFO:       guacdr connected.
guacd[395]: INFO:       guacsnd connected.
guacd[395]: INFO:       Connected to RDPDR 1.12 as client 0x0002
guacd[395]: INFO:       Ignoring server capability set type=0x0001,
length=44
guacd[395]: INFO:       Ignoring server capability set type=0x0002, length=8
guacd[395]: INFO:       Ignoring server capability set type=0x0003, length=8
guacd[395]: INFO:       Ignoring server capability set type=0x0004, length=8
guacd[395]: INFO:       Ignoring server capability set type=0x0005, length=8
guacd[395]: INFO:       Sending capabilities...
guacd[395]: INFO:       Capabilities sent.
guacd[395]: INFO:       Client ID confirmed
guacd[395]: ERROR:      User is not responding.
guacd[395]: INFO:       User "@f595f174-b94b-4f14-a3b4-f2e3b4a14596"
disconnected (0 users remain)
guacd[395]: INFO:       Last user of connection
"$2db8ad42-9af5-4b61-922d-f4a58eca1eaf" disconnected
guacd[395]: INFO:       Unloading device 0 (Guacamole Filesystem)
guacd[395]: INFO:       Internal RDP client disconnected
connected to XXX.XXX.XXX.XXX:3389
guacd[1]: INFO: Connection "$2db8ad42-9af5-4b61-922d-f4a58eca1eaf" removed.
guacd[1]: INFO: Guacamole connection closed during handshake
*

Checking through the network tab of the inspect element tool, I can verify
that form data is being populated when sending request to the tunnel...

Now when I take off any *getParameter* and just hardcode the parameters, I
get this error back when making a request to the tunnel:

*java.lang.NullPointerException

org.apache.guacamole.protocol.GuacamoleInstruction.toString(GuacamoleInstruction.java:112)

org.apache.guacamole.io.WriterGuacamoleWriter.writeInstruction(WriterGuacamoleWriter.java:80)

org.apache.guacamole.protocol.ConfiguredGuacamoleSocket.<init>(ConfiguredGuacamoleSocket.java:135)

org.apache.guacamole.protocol.ConfiguredGuacamoleSocket.<init>(ConfiguredGuacamoleSocket.java:102)

org.apache.guacamole.net.example.TutorialGuacamoleTunnelServlet.doConnect(TutorialGuacamoleTunnelServlet.java:74)

org.apache.guacamole.servlet.GuacamoleHTTPTunnelServlet.handleTunnelRequest(GuacamoleHTTPTunnelServlet.java:215)

org.apache.guacamole.servlet.GuacamoleHTTPTunnelServlet.doGet(GuacamoleHTTPTunnelServlet.java:139)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)*



--
Sent from: http://apache-guacamole-general-user-mailing-list.2363388.n4.nabble.com/

Re: HttpServletRequest getParameter function returning null

Posted by Nick Couchman <vn...@apache.org>.
On Sat, Feb 2, 2019 at 5:33 AM messido <mo...@gmail.com> wrote:

> So I came across two issues once I updated the version of guacamole to
> 1.0.0
>
> 1) HttpServletRequest doesn't hold any of my parameters anymore
>

Are you using a custom-written application based on the Guacamole Common
code, or are you using the Guacamole Client?  It might be useful if you
share your code - I'm not sure what you mean by this - where the parameters
are coming from, etc.?



> 2) Can't connect to clients anymore due to *java.lang.NullPointerException
>
>
> org.apache.guacamole.protocol.GuacamoleInstruction.toString(GuacamoleInstruction.java:112)*
>
> Looks like the guacamole tunnel is receiving the request fine, here are the
> logs:
> *guacd[1]: INFO: Creating new client for protocol "rdp"
> guacd[1]: INFO: Connection ID is "$2db8ad42-9af5-4b61-922d-f4a58eca1eaf"
> guacd[395]: INFO:       Security mode: ANY
> guacd[395]: INFO:       Resize method: none
> guacd[395]: INFO:       User "@f595f174-b94b-4f14-a3b4-f2e3b4a14596" joined
> connection "$2db8ad42-9af5-4b61-922d-f4a58eca1eaf" (1 users now present)
> guacd[395]: INFO:       Recording of session will be saved to "XXXXXXXXX".
> guacd[395]: INFO:       Loading keymap "base"
> guacd[395]: INFO:       Loading keymap "en-us-qwerty"
> guacd[395]: INFO:       guacdr connected.
> guacd[395]: INFO:       guacsnd connected.
> guacd[395]: INFO:       Connected to RDPDR 1.12 as client 0x0002
> guacd[395]: INFO:       Ignoring server capability set type=0x0001,
> length=44
> guacd[395]: INFO:       Ignoring server capability set type=0x0002,
> length=8
> guacd[395]: INFO:       Ignoring server capability set type=0x0003,
> length=8
> guacd[395]: INFO:       Ignoring server capability set type=0x0004,
> length=8
> guacd[395]: INFO:       Ignoring server capability set type=0x0005,
> length=8
> guacd[395]: INFO:       Sending capabilities...
> guacd[395]: INFO:       Capabilities sent.
> guacd[395]: INFO:       Client ID confirmed
> guacd[395]: ERROR:      User is not responding.
> guacd[395]: INFO:       User "@f595f174-b94b-4f14-a3b4-f2e3b4a14596"
> disconnected (0 users remain)
> guacd[395]: INFO:       Last user of connection
> "$2db8ad42-9af5-4b61-922d-f4a58eca1eaf" disconnected
> guacd[395]: INFO:       Unloading device 0 (Guacamole Filesystem)
> guacd[395]: INFO:       Internal RDP client disconnected
> connected to XXX.XXX.XXX.XXX:3389
> guacd[1]: INFO: Connection "$2db8ad42-9af5-4b61-922d-f4a58eca1eaf" removed.
> guacd[1]: INFO: Guacamole connection closed during handshake
> *
>
> Checking through the network tab of the inspect element tool, I can verify
> that form data is being populated when sending request to the tunnel...
>
> Now when I take off any *getParameter* and just hardcode the parameters, I
> get this error back when making a request to the tunnel:
>

Again, without the code to reference, this doesn't make a lot of sense.


>
> *java.lang.NullPointerException
>
>
> org.apache.guacamole.protocol.GuacamoleInstruction.toString(GuacamoleInstruction.java:112)
>
> org.apache.guacamole.io
> .WriterGuacamoleWriter.writeInstruction(WriterGuacamoleWriter.java:80)
>
>
> org.apache.guacamole.protocol.ConfiguredGuacamoleSocket.<init>(ConfiguredGuacamoleSocket.java:135)
>
>
> org.apache.guacamole.protocol.ConfiguredGuacamoleSocket.<init>(ConfiguredGuacamoleSocket.java:102)
>
> org.apache.guacamole.net
> .example.TutorialGuacamoleTunnelServlet.doConnect(TutorialGuacamoleTunnelServlet.java:74)
>
>
> org.apache.guacamole.servlet.GuacamoleHTTPTunnelServlet.handleTunnelRequest(GuacamoleHTTPTunnelServlet.java:215)
>
>
> org.apache.guacamole.servlet.GuacamoleHTTPTunnelServlet.doGet(GuacamoleHTTPTunnelServlet.java:139)
>         javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
>         javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
>
> org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)*
>
>

So, somehow something that shouldn't be null is null in
GuacamoleInstruction.java, line 112.  A quick glance at the code indicates
that maybe opcode is null when it shouldn't be, but it's hard to say.

-Nick