Re: HttpServletRequest and Platform HTTP
Thank you, Claus, I'll get familiarized myself with the Vert.X internals! In the meantime, there must be some way to "send redirect" (respond with the 302 header) by the Camel means, can you please give some hint on that? On 16.10.2023 11:18, Claus Ibsen wrote: Hi I created a ticket https://issues.apache.org/jira/browse/CAMEL-19994 Yeah check vertx-http docs what it offers https://vertx.io/docs/vertx-web/java/ On Mon, Oct 16, 2023 at 10:12 AM Fyodor Kravchenko wrote: Hi, thanks, I get that. And without the Vertx object, what would be a correct way to obtain somewhat like a session attributes? I'm having trouble to navigate the documentation and find "vertx-http" description, can't get how to see and set, for example, the cookies. There are 3 "vertx" entries in the docs, the client, the websocket and some "vertx json eventbus", so I'm sorry to admit I'm a bit lost. in essence I need 2 things: organize some sort of a session with a session state (through cookies or if camel vertx component allows, differently), and be able to read/print raw bytes to/from the web client. On 16.10.2023 09:33, Claus Ibsen wrote: Hi platform-http-main is based on vertx-http as HTTP server and this is NOT servlet based. But vertx-http has a similar API where you can get access to headers / cookies etc. However we don't store the "raw vertx object" that makes this easy with Camel. This needs to be enhanced in camel-platform-http-vertx. On Sun, Oct 15, 2023 at 9:17 PM Fyodor Kravchenko wrote: Hello, in Camel 2 and Jetty I used to get my hands on HttpServletRequest by HttpMessage http = exchange.getIn(HttpMessage.class); HttpServletRequest request = http.getRequest(); , but now I'm migrating to 4.0.1 and platform-http (currently camel-platform-http-main), and now I'm getting null instead of the HttpMessage. Is it related to the note in the Camel 4 migration guide - " And all |HttpMessage| has been changed to generic |Message| types"? What is the correct method of getting the raw HttpServletRequest and its internals like headers, sessions and cookies, if there is any? Can't find a documented way of doing this, for example, by calling `HttpServletRequest request = http.getBody(HttpServletRequest.class);`. Thank you! -fedd
Re: HttpServletRequest and Platform HTTP
Hi I created a ticket https://issues.apache.org/jira/browse/CAMEL-19994 Yeah check vertx-http docs what it offers https://vertx.io/docs/vertx-web/java/ On Mon, Oct 16, 2023 at 10:12 AM Fyodor Kravchenko wrote: > Hi, thanks, I get that. And without the Vertx object, what would be a > correct way to obtain somewhat like a session attributes? I'm having > trouble to navigate the documentation and find "vertx-http" description, > can't get how to see and set, for example, the cookies. There are 3 > "vertx" entries in the docs, the client, the websocket and some "vertx > json eventbus", so I'm sorry to admit I'm a bit lost. > > in essence I need 2 things: organize some sort of a session with a > session state (through cookies or if camel vertx component allows, > differently), and be able to read/print raw bytes to/from the web client. > > On 16.10.2023 09:33, Claus Ibsen wrote: > > Hi > > > > platform-http-main is based on vertx-http as HTTP server and this is NOT > > servlet based. > > But vertx-http has a similar API where you can get access to headers / > > cookies etc. > > However we don't store the "raw vertx object" that makes this easy with > > Camel. > > > > This needs to be enhanced in camel-platform-http-vertx. > > > > > > On Sun, Oct 15, 2023 at 9:17 PM Fyodor Kravchenko > wrote: > > > >> Hello, > >> > >> in Camel 2 and Jetty I used to get my hands on HttpServletRequest by > >> > >> HttpMessage http = exchange.getIn(HttpMessage.class); > >> HttpServletRequest request = http.getRequest(); > >> > >> , but now I'm migrating to 4.0.1 and platform-http (currently > >> camel-platform-http-main), and now I'm getting null instead of the > >> HttpMessage. > >> > >> Is it related to the note in the Camel 4 migration guide - " And all > >> |HttpMessage| has been changed to generic |Message| types"? What is the > >> correct method of getting the raw HttpServletRequest and its internals > >> like headers, sessions and cookies, if there is any? Can't find a > >> documented way of doing this, for example, by calling > >> `HttpServletRequest request = http.getBody(HttpServletRequest.class);`. > >> > >> > >> Thank you! > >> > >> -fedd > >> > >> > -- Claus Ibsen - @davsclaus Camel in Action 2: https://www.manning.com/ibsen2
Re: HttpServletRequest and Platform HTTP
Hi, thanks, I get that. And without the Vertx object, what would be a correct way to obtain somewhat like a session attributes? I'm having trouble to navigate the documentation and find "vertx-http" description, can't get how to see and set, for example, the cookies. There are 3 "vertx" entries in the docs, the client, the websocket and some "vertx json eventbus", so I'm sorry to admit I'm a bit lost. in essence I need 2 things: organize some sort of a session with a session state (through cookies or if camel vertx component allows, differently), and be able to read/print raw bytes to/from the web client. On 16.10.2023 09:33, Claus Ibsen wrote: Hi platform-http-main is based on vertx-http as HTTP server and this is NOT servlet based. But vertx-http has a similar API where you can get access to headers / cookies etc. However we don't store the "raw vertx object" that makes this easy with Camel. This needs to be enhanced in camel-platform-http-vertx. On Sun, Oct 15, 2023 at 9:17 PM Fyodor Kravchenko wrote: Hello, in Camel 2 and Jetty I used to get my hands on HttpServletRequest by HttpMessage http = exchange.getIn(HttpMessage.class); HttpServletRequest request = http.getRequest(); , but now I'm migrating to 4.0.1 and platform-http (currently camel-platform-http-main), and now I'm getting null instead of the HttpMessage. Is it related to the note in the Camel 4 migration guide - " And all |HttpMessage| has been changed to generic |Message| types"? What is the correct method of getting the raw HttpServletRequest and its internals like headers, sessions and cookies, if there is any? Can't find a documented way of doing this, for example, by calling `HttpServletRequest request = http.getBody(HttpServletRequest.class);`. Thank you! -fedd
Re: HttpServletRequest and Platform HTTP
Hi platform-http-main is based on vertx-http as HTTP server and this is NOT servlet based. But vertx-http has a similar API where you can get access to headers / cookies etc. However we don't store the "raw vertx object" that makes this easy with Camel. This needs to be enhanced in camel-platform-http-vertx. On Sun, Oct 15, 2023 at 9:17 PM Fyodor Kravchenko wrote: > Hello, > > in Camel 2 and Jetty I used to get my hands on HttpServletRequest by > > HttpMessage http = exchange.getIn(HttpMessage.class); > HttpServletRequest request = http.getRequest(); > > , but now I'm migrating to 4.0.1 and platform-http (currently > camel-platform-http-main), and now I'm getting null instead of the > HttpMessage. > > Is it related to the note in the Camel 4 migration guide - " And all > |HttpMessage| has been changed to generic |Message| types"? What is the > correct method of getting the raw HttpServletRequest and its internals > like headers, sessions and cookies, if there is any? Can't find a > documented way of doing this, for example, by calling > `HttpServletRequest request = http.getBody(HttpServletRequest.class);`. > > > Thank you! > > -fedd > > -- Claus Ibsen - @davsclaus Camel in Action 2: https://www.manning.com/ibsen2