Servlets :: Forwarding Request Attributes From JSP
Jun 24, 2014
I am building an application that has two types of users. While some of the fields (ie: username, email address, password) are the same for both user types, other fields are different for each user type.
Therefore, I would like to split up the process of registering (ie: writing the user info to database) into two parts:
1) registering the common fields among both user types (servlet 1)
2) registering the specific fields based on the user type that is registering (servlet 2a and servlet 2b).
Therefore, once servlet 1 is processed, I wish to forward the request to servlet 2a or 2b depending on what type of user is registering.
I wish to do this since I will have other parts of my application that will make use of servlets 2a and 2b as well. Is this possible to do (redirect request parameters from jsp to servlet and then to another servlet)?
When we forward the request to a jsp , I noticed that the url bar address does not change .
I made a form form.html , and set action to a servlet then in servlet class I set an attribute and forward the request to jsp ,which prints the value of that attribute.But the url in address does not actually points to that jsp to which i forwarded the request.
1. Does a GET HTTP request contain a request body? If yes what is contained in it? Are the request headers also part of the request body? 2. Is it possible to send a byte array as part of the GET request in its body? 3. Is there a size limitation on the data that can be sent via a GET request?
What is the difference between Attributes and Parameters.that is difference between two methods request.getAttribute() and request.getParameter() and why we have this two methods?
The authenticatedUser and menu attributes are gone. I never know when it's going to happen so I can't trace it. Any guesses why those type session objects would die?
I attached an image of what menu object looks like.
I am trying to use three cookies in a servlet to store the background and foreground color and text size but my code is not working for some reason. When I run the servlet I get an IndexOutOfBounds exception and in my code is says my cookies are not ever used, when they should be to store the variables?
I am trying to make the variables that will be taken in from a type='text' box in HTML in NetBeans available to the other servlets as well as store and display the latest value passed into these boxes on the servlet page when the submit button is clicked or display null if the box has not yet received a value. However, I do not understand how to do this and do not understand as to why my current output is always null?
i) Is ServletContext().getAttribute("name of my textbox") really the way to pass the attributes to all servlets?
ii) Is ServletContext() passed in the service request?
iii) How to store the latest value passed into the submit box?
I'm a new Java user and I'm trying to code a simple login page. In first page (NewFile.jsp) users should enter their username and password and should click on "login", or click on "sign up".
1.) If user enters his username and password correctly, a login page (LoginPage.jsp) appears and says "welcome null" but it should show the name of that user instead of null.
2.) In that login page there is an edit button to edit profile information. When I clicked on it, every information is "null" and when I edit them and click on "Submit" button;
HTTP Status 404 - type Status report message description The requested resource () is not available. GlassFish Server Open Source Edition 3.1.2
that message appears.
3.) If I click on "Sign Up" button at the beginning, a registration jsp (SignUpPage.jsp) appears. After filling up text boxes and clicking on "Submit", same Status 404 screen appears.
I created a mysql database called "loginpage" using xampp. In that database there is a table called "users" and it has un, pass, name, surname, email and degree attributes.
I have to forward my request to another webApplication using post request parameters. In this case Webaplication-1 need send request using post request params to Webapplication-2 & once Webaaplication-2 receives request it has to process & display output.
For this have tried below 2 options which Servlet API provides.
1. RequestDispatcher : this will used to forward request to another resource within the application.
2. sendRedirect() : this method support doGet() of Servlet.
3. Using HttpClient, which is provided by Apache able to do but it will not displaying Output,It sending back response to Webapplication-1 .
Is there any option which will handover request from one webapplication to another webapplication.
We have a big application which is implemented in basic servlet. WE have Get and Post request in servlet. I want to provide them security if any malicious attack will happen on the form submit method. I want to make it secure. In detail, suppose if any user want to submit form/ any ajax request from my application and if he/she changes the method of submission from POST to GET then how I will recognize this?
I know that HTTPServletRequest object have GetMethod() but how I will detect that it is not changed by Tamper data/Fidler/Watir. One more way, I googled is by using GetQueryString() method but lot of the places I have query paramater in my POST request.
I have to send a request with post parameters from one web application to another web application,both are running different servers.
In my application i don't have any JSP,html only controller part which will handle request extract request parameters & based on request params i'll do a web service call.
My current requirement is based on request parameters i'll send request to another web application with received parameters.
I tried with sendRedirect() ,but it support only get() method.
After confirmation to the login details I added new cookie having logging information and then dispatched this request to controller servlet where this cookie is checked if it is present then user is forwarded to a particular page. Otherwise is redirected to the sign in page. Now the problem is when we add cookies then it is added into "response" object and when we get cookies we get them from "request" object. So for the first time redirection to controller servlet "response" object would not have this cookie as it is not available in "request" object. But will be available for later requests.
My question is what is the way to get this cookie in the first request. Or is there any way to send refresh like response to the browser so that this cookie is added??
We are starting to deploy virtual desktops in our factory.I have a file upload form that works on conventional desktops but fails on the virtual machines. Notice the lifecycle parameter is not being passed to servlet on these virtual machines but does get passed when ran from standard desktop machine.
I have used jsp's to passing request to the servlet or controllers. but we can also pass request from javascript using ajax and sending data using json.
what is the good approach and why? or does it depends on the situations? is yes, what kind of situations?
my Servlet as I would like my Servlet to run first and to create a session var then forward the value to the JSP (the GUI ) and have the JSP able to send a var back to the Servlet for reprocessing and update the session var to again be sent to the JSP and so on . - The Servlet contains logic to handle incorrect input types and directly out puts a HTML error page..
Below I will add the code I have so far and a link to the question in my Text Book.
My code:
JSP Page:
bank.JSP :
<% //Starts outputting the HTML Form %> <html> <head>
I would like getting a specific parameter name from the set of request parameters. In particular the name of the 4th parameter in the request parameter set.
/** * Servlet implementation class InvoicingDeptServlet */ @WebServlet("/InvoicingDeptServlet") public class InvoicingDeptServlet extends HttpServlet { private static final long serialVersionUID = 1L; //Make arraylist global object ArrayList<InvoiceData> invoiceList = new ArrayList<InvoiceData>();
Now that I have set up my dev environment on a new machine with new eclipse, it does not work.
It displays Ï instead of π.
I've already tried adding URIEncoding="UTF-8" to server.xml which did not work since it only affect get not post. I figured out how to get the parameter with correct encoding on the new system:
How the server know the device type from which request came from. I have requirement to implement the logic based on the type of the device. Eg: Mobile, TAB, PC or Laptop. Is there any existing API in Jquery to know the details about the client?
I know when including remember me token in request header, it will contain expiry date. does this mean the token generated must be able to be reversed back to it's original string?
In one jsp page, I submit a form with a message body with following html code (which is store in "MsgBody" in my request)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
[code]....
But when I submit my form, I received in my servlet a parameter "MsgBody" without several tag like <html>/<body> ... do you know this behavior, by default tag are delete ?
I have a controller that on the basis of commands (formaction and subaction) dispatch requests to different jsp pages. But somehow when I am debugging my application, I can find duplicate request coming to the controller, so one jsp page does load twice. I am not sure from where the duplicate request is generating.