Scope of a JavaBean in a JSP page

Is there any default scope for a Java Bean in a JSP page. If so, wht is it. IF the bean is assigned a "application scope", is it that the system resources are allocated to the bean.

The default scope of javaBean is page
and you can also change it to
1.page
The bean exists for the life of the page
2.request
The bean's internal information is stored in the ServletRequest object
3.session
The bean is available to all of your JSP pages for the entire session
4.application
The bean will remain until the application is reloaded or the sever is restarted
From Timothy

Similar Messages

  • Using JavaBeans in a JSP Page

    I wan't to know the advantages and disadvantages of using JavaBeans in a JSP page.
    Like for example general traditional approach for a database connection
    is to create a connection and access the database from that and close the connection
    at the end of the page, instead of the If I use a common connection bean for making connections,
    is that suggestable and then when should i close the connection then.
    One good application of JavaBeans is using a Set and Get methods for form fields in
    a registration form to get back the values.
    So may i know how best can we use the JavaBeans other than this application.
    ThanX in advance,
    kiran
    [email protected]

    I believe putting processing and query code in the JavaBean was one of the reasons for putting JavaBeans support in JSP in the first place. The original idea was to use the setXXX methods to populate the bean's data from the posted form, then do the processing (or database query), then use the getXXX methods to display the bean's data.
    Efficiency-wise, it's exactly the same as putting all the code in-line in the JSP page (actually, it might be a bit slower, because of the reflection required to do it.) Code-wise though, it makes the JSP easier to read.
    Of course, we have EJBs now too, which tie very closely and can match database queries almost one-to-one, one way to incorporate these is inside the JavaBean you reference from the JSP, another way from a servlet you redirect the JSP to, etc...

  • Scope of a java class in JSP page

    Hi
    If I use a java bean using the
    <jsp:useBean
    id="beanSomeName"
    scope="page|request|session|applicaton
    I can specify the scope of of the bean after which I can assume it is Garbage Collected.
    However if I just create a new Java Class in a jsp bean ( I inherited this code ) what will be scope of this java class. When will it be Garbage collected.
    Is it Page scope?
    Thanks
    bib/-

    If you do
    <% MyClass c = new MyClass(); %>
    and don't do anything else to store it in the request or session than it is like page scope.
    if you do
    <%! MyClass c = new MyClass(); %>
    it is more like application scope.

  • How to use value returned from a bean in jsp page

    Hi All,
    I have a string array value being returned from a javabean to a jsp page. I want to be able to assign the value to a variable in the jsp page.
    How do I do this?
    Many thanks :)

    thanks for your response.
    I actually used something like this:
    <% String loggedin = log.User(user,password);
    out.println(loggedin);
    %>i am not yet as much of an expert on beans as i would like to be, but i thought it is not really a bean if it has a getter method which takes arguments?

  • How to use class in JSP page ? In java works in JSP not...

    Hello developers,
    I need check if URL exists.. i use this code in java.. it works fine..
    import java.net.*;
    import java.io.*;
    public class Check {
    public static void main(String s[]) {
        System.out.println(exists("http://www.google.com"));
        System.out.println(exists("http://www.thisURLdoesntexis.com"));
    static boolean exists(String URLName){
      try {
        HttpURLConnection.setFollowRedirects(false);
        // note : you may also need
        //        HttpURLConnection.setInstanceFollowRedirects(false)
        HttpURLConnection con =
           (HttpURLConnection) new URL(URLName).openConnection();
        con.setRequestMethod("HEAD");
        return (con.getResponseCode() == HttpURLConnection.HTTP_OK);
      catch (Exception e) {
           e.printStackTrace();
           return false;
    }in java all works fine.. it shows
    TRUE
    FALSE
    but i have no idea how can i implement this java code to my check.jsp page..
    i tried something like this..
    <%@ page import="java.io.*" %>
    <%@ page import ="java.net.*" %>
    <BODY>
    <%
    static boolean exists(String URLName){
      try {
        HttpURLConnection.setFollowRedirects(false);
        // note : you may also need
        //        HttpURLConnection.setInstanceFollowRedirects(false)
        HttpURLConnection con =
           (HttpURLConnection) new URL(URLName).openConnection();
        con.setRequestMethod("HEAD");
        return (con.getResponseCode() == HttpURLConnection.HTTP_OK);
      catch (Exception e) {
           e.printStackTrace();
           return false;
    String a="http://www.google.com";
    %>
    <%= exists(a)%>and i want to see in my jsp page the result.. it means that JSP page shows
    TRUE
    Thanks in advance,

    Hi there,
    One solution is to use JavaBeans and call the methods for the JavaBean from the JSP page.
    Suppose you have a JavaBean called TestConnectionBean as follows:
    package test22;
    import java.net.HttpURLConnection;
    import java.net.URL;
    import java.net.MalformedURLException;
    import java.io.IOException;
      Set the testUrl before checking if connection exists.
    public class TestConnectionBean {
        String testUrl;
        boolean connectionExists;
        public TestConnectionBean() {
        public String getTestUrl() {
            return testUrl;
        public void setTestUrl(String testUrl) {
            this.testUrl = testUrl;
        public boolean getConnectionExists() throws IOException, MalformedURLException {
            HttpURLConnection.setFollowRedirects(false);
            // note : you may also need
            //        HttpURLConnection.setInstanceFollowRedirects(false)
            HttpURLConnection con = null;
            con = (HttpURLConnection) new URL(this.testUrl).openConnection();
            con.setRequestMethod("HEAD");
            return (con.getResponseCode() == HttpURLConnection.HTTP_OK);
        public void setConnectionExists(boolean connectionExists) {
            this.connectionExists = connectionExists;
    }Then you can create a JSP page like this:
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
      <head><title></title></head>
      <body>
      <jsp:useBean id="testConnectionBean" class="test22.TestConnectionBean"/>
      <jsp:setProperty name="testConnectionBean" property="testUrl" value="http://www.google.com" />
      <br/><br/>
      Does the connection exist for http://www.google.com : <jsp:getProperty name="testConnectionBean" property="connectionExists"/>
      <br/><br/>
      <jsp:setProperty name="testConnectionBean" property="testUrl" value="http://www.thisURLdoesntexis.com" />
      <br/><br/>
      <%-- The following will give an exception : java.net.UnknownHostException: www.thisURLdoesntexis.com since the URL doesn't exist. 
      --%>
      <%--
      Does the connection exist for http://www.thisURLdoesntexis.com : <jsp:getProperty name="testConnectionBean" property="connectionExists"/>
      --%>
      </body>
    </html>The output you see looks like:
    Does the connection exist for http://www.google.com : true
    I think it is better to handle the exceptions in the JavaBean itself, so now yyou can change the method signature of getConnectionExists , remove all exceptions from method signature but handle them with a try/catch inside the method itself.

  • Populating combobox in jsp page from javabean using jsp:getProperty tag

    hi,
    i am new to jsp, so i don;t know how to populate a combobox in jsp page with productid attribute from a javabean called Bid . i want to have a code to automatically populating combobox using the attribute value from javabean.
    please reply me.
    <jsp:useBean id="bidpageid" class="RFPSOFTWARE.Bid" scope="session" />
    <jsp:setProperty name="bidpageid" property="*"/>
      <table  width="50%" align="center" border="0">
       <tr>
        <td  width="30%" align="left"><h4><b><label>Date (dd/mm/yyyy) </label></b></h4> </td>
        <td><input type="text" name="date" size="11" maxlength="10" readonly="readonly" value="<jsp:getProperty name="bidpageid" property="date"/>"  > </td>
      </tr>
      <tr> <td > </td> </tr>
      <tr>
        <td  width="30%" align="left"><h4><b><label>ProductId </label></b></h4> </td>
        <td><select name="productid" tabindex="1" size="1" >
          <option  value="<jsp:getProperty name=bidpageid" />Sachin</option>
          <option value="Hello">Vishal</option>
        </select></td>
      </tr>  and the javabean for Bid is as follow :
    import java.util.Date;
    import RFPSOFTWARE.Product;
    public class Bid{
    private Product product;
    private Integer bid_id;
    private String description;
    private Date date= new Date();
    public Integer getBid_id() {
    return bid_id;
    public Date getDate() {
    return date;
    public String getDescription() {
    return description;
    public Product getProduct() {
    return product;
    public void setBid_id(Integer bid_id) {
    this.bid_id = bid_id;
    public void setDate(Date date) {
    this.date = date;
    public void setDescription(String description) {
    this.description = description;
    public void setProduct(Product product) {
    this.product = product;
    }

    No Sir,
    I think I did not explained clearly.what I try to say is I dont want to use JSTL.I am using only Scriptlets only.I can able to receive the values from the database to the resultset.But I could not populate it in Combobox.
    My code is :
    <tr>
    <td width="22%"><font color="#000000"><strong>Assign To Engineer</strong></font></td>          
    <td width="78%">
         <select NAME="Name" size="1">
    <option><%=Username%></option>
    </select> </td>
    </tr>
    in HTML
    and in Scriptlets:
    ps1 = con.prepareStatement
              ("SELECT Username FROM Users");
              rs2=ps1.executeQuery();
              System.out.println("SECOND Succesfully Executed");
              while(rs2.next())
                   System.out.println("Coming inside rs2.next loop to process");
                   Username=rs2.getString("Username");
                   System.out.println("Success");
                   System.out.println("The value retrieved from UsersTable Username is:"+Username);
    In the server(Jboss console) I can able to display the username but I could not populate it in the Combobox .
    Can you now suggest some changes in my code,Please..
    Thanks a lot
    With kind Regds
    Satheesh

  • How to use Session scope in jsp page

    Hello, I have login form, where user provides username and password. Then click on submit, it will forward to validation.jsp. Where it will check in database make sure username and password exit. Now i can also retrive accountid of perticular user. I want to put that username and accountid in session scope. so all other pages can use that username and accountid. How can i do that. I'm new at this, so please provide me example too. Here is my code for login.jsp and validation.jsp..
    Validation.jsp
    <%@ page import="java.util.*" %>
    <%@ page import="java.sql.*" %>
    //String name = request.getParameter( "username" );//
    //session.setAttribute( "accountID",accountID );//
    <%
    String connURL = "jdbc:oracle:thin:@orca.csc.ncsu.edu:1521:ORCL";
         Connection conn = null;
         Statement stmt = null;
         ResultSet rs = null;
    Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
    conn = DriverManager.getConnection(connURL, "vapatel","pjdas");
    stmt = conn.createStatement();
    String user=request.getParameter("userName");
    String password=request.getParameter("password");
    boolean entrance=false;
    stmt.excuteQuery("SELECT AccountID From Password WHERE USERNAME='"+user+"'");
    rs = stmt.executeQuery("SELECT * FROM Password WHERE USERNAME='"+user+"' AND PASSWORD='"+password+"'");
    while(rs.next()){
    String dbUser = rs.getString("USERNAME");
    String dbPassword= rs.getString("PASSWORD");
    if ((user.equals(dbUser)) && (password.equals(dbPassword))){
    entrance=true;
    if (entrance==true){%>
    <jsp:forward page="form.jsp"/>
    <%}
    else{%>
    <jsp:forward page="login.jsp"/>
    <%}
    %>

    hi,
    to put something into session scope in a jsp page use:
    session.setAttribute("counter", Integer.toString(5));to retrieve is from a jsp page use:
    String counterAttribute = (String)session.getAttribute("counter");

  • Can't use relative paths in jsp pages or javabeans

    Hi everyone,
    Can someone please help me with this little problem.
    When I want to use in a JSP page the object 'FileReadInput' to read in a file, it can't find when I only give the filename. The target file and source file are in the same directory so I would expect if I only give the filename, it will automatically search in the current directory. But when I give the complete absolute path, everything works fine. Is it possible to use relative paths in a jsp or javabean file?
    By the way, I am working with JDeveloper from Oracle. (maybe that has something to do with my problem)
    Can someone help me???
    Thx

    My dear friend,
    It will not work at all. coz, for any jsp file, ur application server will create a .java file and then .class file in a directory other than the directory where ur .jsp file present. that's why, ur file to be read can't be found. that's why use the following.
    String path=getServletConfig().getServletContext().getRealPath("/")+File.seperator+"yourfilename";

  • Seting a JSp variable to session scope in JSp page itself

    Hi,
    I have code like this
    <HTML>
         <HEAD>
              <TITLE>Change Password</TITLE>
              <LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet/vclinical.css" TITLE="Style">
    </HEAD>
    <BODY>
    <form name="form">
    <select name="ss" onChange="this.form.qq.value=options[selectedIndex].value;getit()">
    <option value=1>ss1</option>
    <option value=2>ss2</option>
    </select>
    <input type="text" name="qq" value="">
    <%
    String asd=request.getParameter("qq");
    session.setAttribute("Stored", asd);
    System.out.println("value is"+asd);
    %>
    </form>
    </BODY>
    </HTML>
    here i want to set value of a JSP variable qq to session scope and here i am not invoking any servlet i want value of qq in next JSP page i am not submitting the page so how i can handle this. this code does not work so please tell me how to do this i am using struts frame work

    if you are using the struts framework, then you can make an ActionForm with getters and setters for the stuff that you are writing in the JSP i mean the radio buttons and text boxes etc
    from that action form you can get the values any time any where
    you just need to enter some thing like below in the struts-config.xml file
    <form-bean name="the action form name" type="package name.Actionform name" />
    <action path="/controller " type="package name.controller name" name="Action form name" scope="session">
    you can either put the action form in request scope or session scope

  • JavaBeans and Tags in JSP pages

    I have a java package and some code that already works but I need to "Webify" it. I have heard the words Tag Libraries and Beans to use with JSP pages instead of writing out the java code in the page. I have read the tutorial on Tag Libraries and it still makes no sense. I need some kind of beginners guide and instruction. I already have the java in the .jar file and have Tomcat setup. I know I need to make a tag library and stuff, but beyond that I'm a bit lost. I'm just not sure where to put what. Also, I did do a practice JSP page but it won't automatically find the jar file - they are in the WEB-INF/lib directory. I actually have to set the CLASSPATH separately by doing export CLASSPATH=.... which I know can't be right - is there a way to do this in the actual JSP program itself - like set the classpath just for that webpage?

    Here's a good basic tutorial that helped me when I was getting started with tags:
    http://www.theserverside.com/resources/article.jsp?l=JSP-XML3

  • No. of javabeans in jsp pages

    Hi,
    If i am having 180-200 textfield in a jsp page and i want to submit the whole data in database table then how many beans should be used to improve the performance . Can it be done using only single bean and if not then what should be the criteria to split it in multiple bean ?

    I am not sure if I understand correctly, but do you have 180-200 different text fields? If so, of course you can do it in one bean. I would suggest either passing in an ArrayList or some sort of similar structure ... maybe just an array ... and have the bean do the work. I can't imagine a problem that would 'require' you to use multiple beans for one operation. Your SQL statement will probably be very long, but regardless, one bean should be able to handle it without a problem.
    dan

  • Javabean class not found by jsp page

    I have created one bean which has setFunctionId(String) and getFunctionId() methods. I put the class files at /weblogic/myserver/serverclasses directory. While I am accessing the .jsp page it is telling "Thu Aug 03 15:46:16 EDT 2000:<E> <ServletContext-General> Servlet failed with Ex
              ception
              java.lang.NoSuchMethodError: myjsp.TestBean: method setFunctionId(Ljava/lang/Str
              ing;)V not found
              at jsp_servlet._testasfs._jspService(_testasfs.java:90)
              at weblogic.servlet.jsp.JspBase.service(Compiled Code)
              at weblogic.servlet.internal.ServletStubImpl.invokeServlet(Compiled Code
              at weblogic.servlet.internal.ServletContextImpl.invokeServlet(Compiled C
              ode)
              at weblogic.servlet.internal.ServletContextImpl.invokeServlet(Compiled C
              ode)
              at weblogic.servlet.internal.ServletContextManager.invokeServlet(Compile
              d Code)
              at weblogic.socket.MuxableSocketHTTP.invokeServlet(Compiled Code)
              at weblogic.socket.MuxableSocketHTTP.execute(Compiled Code)
              at weblogic.kernel.ExecuteThread.run(Compiled Code)"
              Would appreciate your help..
              

    Thank you for your valuable feedback duffymo. Could
    you explain a little what you mean by "Putting .class
    files in the Tomcat examples directory is a really bad
    idea in the long run". Also, could you direct me to
    some source where I can find more information on
    creating WAR files keeping in mind that I am a
    beginner.
    Thanks.But putting your web apps into WAR files, you can have quite a few different web apps running on the tomcat server as compared to if u place your files into the default webapp folder, u can only have 1 web app running.
    For creating WAR file, the easiest way is to use an IDE like JBuilder.

  • JSP on BEA  Weblogic: random error when loading a jsp page that uses a Bean

    Hi!
    I wrote a simple jsp page that stores a String in a JavaBean, and then forwards to another jsp page to display that String. The jsp pages are deployed on a BEA Weblogic 6 Server, but I get a weird behaviour when loading the page into my browser. Usually I get an error message:
    /Response.jsp(9): class 'query.jsp.QueryBean' could not be loaded
    probably occurred due to an error in /Query.jsp line 9:
    <jsp:useBean id = "queryBean" scope = "request" class = "query.jsp.QueryBean" />
    But the funny thing is that after reloading the page a few times it eventually works. The bahaviour seems to be totally random - sometimes it works, sometimes it claims not finding the JavaBean class.
    Anyone experienced something similar?
    Thank you very much,
    Charlie

    Is QueryBean.class located under '<appname>/Web_inf/query/jsp/'?
    If it is please try changing the package name to something else like com.myclass or something like that.

  • How to pass variables between 2 jsp pages-help

    Hi,
    I have a question like this.
    As an example consider I have 3 .jsp pages.
    page1.jsp - In this html form it has some textboxes to enter employee details.
    page2.jsp - In this page it has a "PRINT" button which allows the user to click.
    page3.jsp - A new popup window which having the same content as page2.jsp, but without the PRINT button.
    But my problem is this. In this page3.jsp,it should be display the entered textbox values as page2.jsp. But these values are not displaying here. They display as NULL.
    I use as follows, but it still not working.
    <%= request.getParameter("effDate")%>.
    Could you please tell me how to hold these values when I came from page2 to page3.
    I'm using JSP 1.2 with javaBeans.
    Thanks.

    Well,
    If you are popping up a new window, and you insisting on pulling the data out of the request's parameter map. Then you will need to add the values to the query string of your url.
    window.open("http:localhost/page3.jsp?itemOne=itemOneValue&itemTwo=ItemTwoValue, '', '');
    Alternative Option:
    When posting from page 1 to page two, store your information into session scope
    request.getSession().setAttribute("valeuOne", "valueOneValue");
    Then instead of pulling from the paramter map, use request.getSession().getAttribute("valueOne") in your third page.
    Hope that helps.
    Thanx
    Cardwell

  • Reloading JavaBeans in a JSP without re-starting the server

     

              The JSP will get recompiled but the bean is already sucked in by the server. Even if you break the session by doing reqest.getSession.invalidate() at the end of your JSP - it still persists. Even try removing your bean class and you will still see that the page is working. That proves it doesn't use .class anymore. However when you touch your .jsp at this time and try to re-display it in the browser you will get compilation error because .class cannot be imported. When you put a new class and repeat it, it compiles against that new class but still executes with the old one. Until you restart the WebLogic server...
              "Carl Ansley" <[email protected]> wrote:
              >
              >I've found that you need to "touch" the JSP that references the javabean,
              >i.e. to force the server to recompile. Plus you'll need to create a new
              >session if the bean has session scope.
              >
              >"Eli Tucker" <[email protected]> wrote in message
              >news:8hom7d$puk$[email protected]..
              >> Hello.
              >>
              >> I have a JSP page that uses a simple JavaBean (not an EJB). If I modify
              >the
              >> bean, the server appears to use the old version of it. The only way I've
              >> found to force the server to use the latest version is to re-start the
              >> server.
              >>
              >> Is there a way to use the latest class without re-starting the server?
              >I'm
              >> using WebLogic Server 5.1.0 on an NT system.
              >>
              >> Thanks,
              >> Eli
              >
              >
              >
              

Maybe you are looking for

  • Help please! I can not get my movies and picture in to iDVD.

    I open IDVD, go to media, go to movies, but when I "pull" a movie in to iDVD it just "jump back". Some times it says " It is not a movie". And it is all types of movies.

  • BW vs APO InfoObjects

    What is the difference between creating a BW InfoObject and creating an APO InfoObject in SCM BW?  Does one type or the other limits certain functionality if used in both systems?  Similarly, what's the difference in creating BW vs APO InfoCubes?  Do

  • A cmr-field and a cmp-field on the bean are using the same name. The names

    Hi: I am using weblogic 8.1 and MyEclipse 5.1.1. I am deploying my ear application through MyEclipse 5.1.1 as an ear file. When I ran the following EJB QL: SELECT OBJECT(p) FROM Product p.category = ?1 I get the following error: n relation Category-P

  • Limits for email move to archive mailbox?

    Exchange 2010/Outlook 2010 Is there a limit to how many (or size) for moving emails from Exchange (on premise mailbox) to the Exchange Archive (on premise mailbox) using drag and drop within the outlook client? I have a user who says it will work on

  • Scans with image capture don't show up in destination folders

    When I tell Image Capture to save a scan in a particular folder, it doesn't show up there in the Finder.  This is a fairly new trick.  Sometimes after considerable fiddling, they will suddenly be there.  I have no idea what it was that I did to get t