Showing posts with label jsp. Show all posts
Showing posts with label jsp. Show all posts

Wednesday, March 20, 2013

comment_icon 0 Handling Session in JSP

In this Tutorial we are going to see that how can we Handle SESSION in JSP.


1. Setting Session : 

Before we validate or check the existing session it is important to know that how we set session in JSP. 
we use session.setAttribute("ATTRIBUTE NAME","ATTRIBUTE VALUE"); you can set as many attribute as you want.

2. Retrieving valuse from session attribute

To retrieve value from session attribute we use  following method. session.getAttribute("attribute name");
to store the retrieved value in a variable we write code as shown below.
 data-type variable-name=(data type cast)session.getAttribute("attribute name");
e.g.  String  signin=(String)session.getAttribute("username");

3. Ending or Invalidating session.

To End the current session and all attributes value we use session.invalidate(); method.

4. To Prevent user from going back to the previous page after logout put following META-TAG in every page's Header

<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE"> 


working Example 

 1. index.jsp


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><%@page
 language="java" contentType="text/html; charset=ISO-8859-1"
 pageEncoding="ISO-8859-1"%>
 <html>
<head>
<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE"> 
<title>index</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
</head>
<body>
<% String  signin=(String)session.getAttribute("username");
 
 if(signin==null) { 
/** perform some your own logic for not signed in user , i'm just forwarding to login page
 **/
  %> <a href="login.jsp">click to login</a>
 <%
 }
 else {
 
 /** logic for logges in users **/
  %>

<h3>successfull login</h3>
  <a href="logout.jsp">click to logout</a>
  <%} %>
</body>
</html>

2. Login.jsp


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><%@page
 language="java" contentType="text/html; charset=ISO-8859-1"
 pageEncoding="ISO-8859-1"%>
<html>
<head>
<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE"> 
<title>login</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
</head>
<body>
<%
/** setting username here . you  will do it after processing login code **/
 session.setAttribute("username","your user's username");
 %>
 i set the session, now click on index page link to verify it
 <a href="index.jsp">go to index page</a>
</body>
</html>

3. Logout.jsp

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><%@page
 language="java" contentType="text/html; charset=ISO-8859-1"
 pageEncoding="ISO-8859-1"%>
<html>
<head>
<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE"> 
<title>logout</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
</head>
<body>
<% //session.setAttribute("username",null);
 session.invalidate();
 %> 
 <jsp:forward page="index.jsp"/>

</body>
</html>

Friday, April 6, 2012

comment_icon 0 working with Java Beans

In this tutorial i am going to talk about the java beans.
i am going to cover the following  things


  1. what is  Java Bean ?
  2. how we use java beans in JSP
  3. scope of java Beans
what is  Java Bean ?
   If i say in general wordings java beans is the component that can be reused again and again .it just follow write once and use whenever required.

for more details and basics follow the link java Beans

how we use java beans in JSP

JSP provides a usebean tag for using beans in java

 Syntax :
   <jsp:useBean 
id="beanInstanceName" 
  scope="page|request|session|application"
 { class="package.class" | 
  type="package.class" | 
  class="package.class" type="package.class" |
  beanName="{ package.class | <%= expression %> }" type="package.class"  
 }
/>
Example:

Examples

<jsp:useBean id="db" scope="session" class="database.DataConnect" />
How it works (from  http://java.sun.com ) ? 
The <jsp:useBean> tag attempts to locates a Bean, or if the Bean does not exist, instantiates it from a class or serialized template. To locate or instantiate the Bean, <jsp:useBean> takes the following steps, in this order:
  1. Attempts to locate a Bean with the scope and name you specify.
  2. Defines an object reference variable with the name you specify.
  3. If it finds the Bean, stores a reference to it in the variable. If you specified type, gives the Bean that type.
  4. If it does not find the Bean, instantiates it from the class you specify, storing a reference to it in the new variable. If the class name represents a serialized template, the Bean is instantiated byjava.beans.Beans.instantiate.
  5. If it has instantiated (rather than located) the Bean, and if it has body tags (between <jsp:useBean> and </jsp:useBean>), executes the body tags.
Attributes and their Usage 
  • id="beanInstanceName"Names a variable that identifies the Bean in the scope you specify. You can use the variable name in expressions or scriptlets in the same JSP file. The name is case sensitive and must conform to the naming conventions of the page scripting language.
  • scope="page|request|session|application"Defines a scope in which the Bean exists and the variable named in id is available. The default value is page. latter we see explanation about other scopes
  • class="package.class"Instantiates a Bean from a class, using the new keyword and the class constructor. The class must not be abstract and must have a public, no-argument constructor. The package and class name are case sensitive.
  • class="package.class" type="package.class"Instantiates a Bean from a class, using the new keyword and the class constructor, and gives the Bean the type you specify in type. The class you specify in class must not be abstract and must have a public, no-argument constructor. The package and class names you use with both class and type are case sensitive. The value of type can be the same as class, a superclass of class, or an interface implemented by class.
  • type="package.class"If the Bean already exists in the specified scope, gives the Bean the type you specify. If you use type without class or beanName, no Bean is instantiated. The package and class name are case sensitive
 Bean Scopes page Scope:in this scope bean is available for that particular page, as soon as page finishes the the processing the bean will disappear. request scope :if a bean is set to request scope it will be available until that request get processed , if the request results in the page redirection the bean will be also available on the redirected page. session Scope: when a bean is requested as session scope the bean instance will be available for the whole session Application scope: here the bean will be available for the entire application it will exist until application is running on server

Working demo of java Bean : using Bean For db2 connectivity

Download files used in demo  Demo.zip





Sunday, February 5, 2012

comment_icon 0 Uploading a File in JSP

This Tutorial tell that how to upload a File using JSP .
This tutorial is based on the tutorial i found on tutorialspoint .
I updated the code according to RAD so you can easily work on it .
few things to take care about it are
1. copy the class packages from src folder or you can find in links given bellow

Following example depends on FileUpload, so make sure you have the latest version of commons-fileupload.x.x.jar file in your classpath. You can download it from http://commons.apache.org/fileupload/.

FileUpload depends on Commons IO, so make sure you have the latest version of commons-io-x.x.jar file in your classpath. You can download it from http://commons.apache.org/io/.

2.Make sure you have created directories temp and upload in webcontet folder of your project in
advance.
3. change the filepath to to project workspace use \\ in place of \

4. Download Complete Source


INDEX.JSP

File Upload:

Select a file to upload:




UPLOAD.JSP

<%@ page import="java.io.*,java.util.*, javax.servlet.*" %>
<%@ page import="javax.servlet.http.*" %>
<%@ page import="org.apache.commons.fileupload.*" %>
<%@ page import="org.apache.commons.fileupload.disk.*" %>
<%@ page import="org.apache.commons.fileupload.servlet.*" %>
<%@ page import="org.apache.commons.io.output.*" %>


<%
   File file,file1 ;
   int maxFileSize = 5000 * 1024;
   int maxMemSize = 5000 * 1024;
   ServletContext context = pageContext.getServletContext();
  String dir = request.getServletPath();
    int slashIndex = dir.lastIndexOf('/');
    dir = slashIndex != -1 ? dir.substring(0, slashIndex+1) : "";
     String temppath=  application.getRealPath(dir + "\\temp\\"); //temp directory  crete two directory in web content folder
   dir = application.getRealPath(dir + "\\upload\\"); /* upload directoy if it is not saved then file will not get updated until you restart your RAD/eclipse
   */
   //dir=application.getContextPath();
   //String filePath = dir;
  /*original file path on system Dir path will store image till ur application is running on server */
   String filePath = "C:\\Documents and Settings\\Abhi\\IBM\\rationalsdp\\workspace\\uploadtest\\WebContent\\upload\\";
   // Verify the content type
   String contentType = request.getContentType();
   if ((contentType.indexOf("multipart/form-data") >= 0)) {

      DiskFileItemFactory factory = new DiskFileItemFactory();
      // maximum size that will be stored in memory
      factory.setSizeThreshold(maxMemSize);
      // Location to save data that is larger than maxMemSize.
      factory.setRepository(new File(temppath));

      // Create a new file upload handler
      ServletFileUpload upload = new ServletFileUpload(factory);
      // maximum file size to be uploaded.
      upload.setSizeMax( maxFileSize );
      try{ 
         // Parse the request to get file items.
         List fileItems = upload.parseRequest(request);

         // Process the uploaded file items
         Iterator i = fileItems.iterator();

         out.println("");
         out.println("");
         out.println("JSP File upload");  
         out.println("");
         out.println("");
         while ( i.hasNext () ) 
         { dir=dir+"\\";
         
            FileItem fi = (FileItem)i.next();
            if ( !fi.isFormField () ) 
            {
            // Get the uploaded file parameters
            String fieldName = fi.getFieldName();
            String fileName = fi.getName();
            boolean isInMemory = fi.isInMemory();
            long sizeInBytes = fi.getSize();
            // Write the file
            if( fileName.lastIndexOf("\\") >= 0 ){
            file = new File( filePath + 
            fileName.substring( fileName.lastIndexOf("\\"))) ;
           file1=new File( dir +
            fileName.substring( fileName.lastIndexOf("\\"))) ;
            }else{
            file = new File( filePath + 
            fileName.substring(fileName.lastIndexOf("\\")+1)) ;
            file1 = new File( dir + 
            fileName.substring(fileName.lastIndexOf("\\")+1)) ;
            }
            fi.write( file ) ;
            fi.write(file1);
            out.println("Uploaded Filename: " + dir + " "+
            fileName + "
");
            }
         }
         out.println("");
         out.println("");
      }catch(Exception ex) {
         System.out.println(ex);
      }
   }else{
      out.println("");
      out.println("");
      out.println("Servlet upload");  
      out.println("");
      out.println("");
      out.println("No file uploaded
"); out.println(""); out.println(""); } %>












Friday, December 9, 2011

comment_icon 175 Sending sms via way2sms using Java


This Page has been no more upadted please visit thie link for updated information How to send sms in java : onl9class.com

API NOT WORKING ANYMORE - INDYAROCKS MESSAGE NOT GETTING DELIVERED

i have a paid API
If you are willing to pay small amount such as 50-100RS for 100-300sms
contact me at abhirathore2006@gmail.com

The sole purpose of the Api is to be used in development by students.so i am not releasing the actual sour

UPDATED CODE
This Tutorial showz that how you can use the http://www.indyarocks.com/ for sending message using your java application
Steps to Follow

  1. create a account on http://www.indyarocks.com/ 
  2. after getting indiarocks username and password use the code given below.
  3. modify the following details
    1. put your email id in Email string
    2. put your indiarocks username
    3. put your indiarocks password
    4. put number as the number on which you want to send sms
    5. put your messgae in messgae string , i limited the length to 110 char for stopping the misuse
  4. if you copy the code in your application's jsp page don't forget to import java.net.*,java.io.*,java.net.URLEncoder

Sunday, December 4, 2011

comment_icon 0 Ajax From Scratch - a WORKING demo for Jquery-Ajax in jsp

This tutorial covers a working example of ajax in jsp
note: example is just same as i used in my previous tutorial so to setup thing use that tutorial :creating-simple-db2-database-Application




Thursday, November 24, 2011

comment_icon 40 Creating A simple DB2 Database Application with jsp


in this session we are going to see that How to Create A simple DB2 Database Application with JSP (java server pages) . Application which we are going to build is login form
Topics Covered :
1. creating database for an application

2.Creating A form and sending data to server

3. connection to database with jsp

Steps to Follow
1.    Create database"VOTERS"