在网址中发送标签

First, sorry for my english it's not my native language.

So, I am working on an application in JSP and in one of my forms I have a field "comments". When I submit this form, the value of this field is sent to my servlet by an ajax request.

var request = 'mainServlet?command=SendRequest';
request += ('&comments=' + $('#comments').val());

But when there is a "<" or ">" in the field, $('#comments').val() translate them into "&lt" or "&gl". For exemple, is converted to &lt ;test&gl ;

And when I want to recover the value in my servlet, I do:

String comments = request.getParameter("comments");

But the url looks like : mainServlet?command=SendRequest&comments=&lt ;test&gl ;

So request.getParameter("comments"); returns an empty string.

I thought that I could replace the string like &lt by my own code and then replace it again in my servlet, but is there a simpler way to do this?

Thanks.

Edit: After, I reuse the comments in an other jsp.

I believe what you need is the encodeURIComponent function. It will convert any string into a format that you can use inside a URI.

Just remember to decode it on the receiving end, I believe the URLDecoder class can do this for you.