होम > AJAX , जावा > HTTP POST अनुरोध फॉर्म का प्रयोग Servlet AJAX और

HTTP POST फार्म का उपयोग AJAX और Servlet अनुरोध

जावा जावा विश्व में लोकप्रिय मॉडल देखें नियंत्रक (MVC) डिजाइन पैटर्न के लिए किया जाता है. यह लेख आपको AJAX आधारित अनुप्रयोग है कि डेटा Servlet करने के लिए पोस्ट करेंगे लेखन पर मार्गदर्शन और Servlet से computed डेटा दिलकश जाएगा. इस दृष्टिकोण के साथ पृष्ठ ताज़ा jsp / HTML पृष्ठ के बिना सर्वर से अद्यतन सामग्री मिल जाएगा.

JSP कोड:

 "text/javascript" > function getXMLObject ( ) //XML OBJECT { var xmlHttp = false ; try { xmlHttp = new ActiveXObject ( "Msxml2.XMLHTTP" ) // For Old Microsoft Browsers } catch ( e ) { try { xmlHttp = new ActiveXObject ( "Microsoft.XMLHTTP" ) // For Microsoft IE 6.0+ } catch ( e2 ) { xmlHttp = false // No Browser accepts the XMLHTTP Object then false } } if ( ! xmlHttp && typeof XMLHttpRequest != 'undefined' ) { xmlHttp = new XMLHttpRequest ( ) ; //For Mozilla, Opera Browsers } return xmlHttp ; // Mandatory Statement returning the ajax object created } var xmlhttp = new getXMLObject ( ) ; //xmlhttp holds the ajax object function ajaxFunction ( ) { if ( xmlhttp ) { var txtname = document. getElementById ( "txtname" ) ; xmlhttp. open ( "POST" , "getname" , true ) ; //getname will be the servlet name xmlhttp. onreadystatechange = handleServerResponse ; xmlhttp. setRequestHeader ( 'Content-Type' , 'application/x-www-form-urlencoded' ) ; xmlhttp. send ( "txtname=" + txtname. value ) ; //Posting txtname to Servlet } } function handleServerResponse ( ) { if ( xmlhttp. readyState == 4 ) { if ( xmlhttp. status == 200 ) { document. myForm . message . innerHTML = xmlhttp. responseText ; //Update the HTML Form element } else { alert ( "Error during AJAX call. Please try again" ) ; } } } </ script > <body> <form name="myForm" method="POST" action="getname"> <table> <tr> <td>Enter Name</td> <td><input type="text" name="txtname" id="txtname" /></td> </tr> <tr> <td colspan="2"><input type="button" value="Submit"  onclick="ajaxFunction();" /></td> </tr> </table> <div id="message"></div> </form> </body> </head> </html> <html> <head> <title> JSP और Servlet (AJAX का उपयोग </ शीर्षक> <"स्क्रिप्ट प्रकार = ActiveXObject पाठ / जावास्क्रिप्ट" getXMLObject> समारोह () / / XML वस्तु (var xmlHttp = झूठी; कोशिश (xmlHttp = नया " Msxml2.XMLHTTP ") / / पुराने ब्राउज़रों के लिए माइक्रोसॉफ्ट) पकड़ (ई) (xmlHttp कोशिश (= नए ActiveXObject (" Microsoft.XMLHTTP ") / / IE के लिए माइक्रोसॉफ्ट 6.0 +) पकड़ e2) ((ब्राउज़र xmlHttp नहीं = झूठी / / तो स्वीकार XMLHTTP वस्तु झूठी)) अगर (निर्मित वस्तु! xmlHttp & & typeof! XMLHttpRequest '= अपरिभाषित') (xmlHttp = नए XMLHttpRequest ();) / / के लिए मोज़िला, ओपेरा ब्राउज़र्स वापसी xmlHttp, / / लौट अनिवार्य वक्तव्य AJAX) var = नई xmlhttp getXMLObject (); / xmlhttp / दस्तावेज़ धारण AJAX वस्तु (समारोह ajaxFunction = अगर) ((xmlhttp) (var txtname getElementById. ("" txtname); xmlhttp. खुला ("पोस्ट", "" getname, सच ;) / / xmlhttp नाम servlet getname जाएगा. onreadystatechange = handleServerResponse; xmlhttp. setRequestHeader ('सामग्री' प्रकार 'के आवेदन / x-www-फार्म-urlencoded'); xmlhttp. भेज ("txtname =" + txtname. ) मूल्य; / / Servlet करने txtname पोस्टिंग)) समारोह) handleServerResponse ((अगर (== xmlhttp. readyState 4) (अगर (xmlhttp. स्थिति == 200) (दस्तावेज़ myForm.. संदेश. innerHTML xmlhttp;. responseText, / / अद्यतन तत्व और HTML FORM) "कॉल के दौरान त्रुटि AJAX ((चेतावनी" कृपया पुन: प्रयास करें). action="getname">);)) </ script> method="POST" <body> <form name="myForm" <table> <tr> <td> <दर्ज नाम / <td> <td> <input type="text" name="txtname" id="txtname" /> / <td> / <tr> <tr> td colspan = ""> 2 <input type="button" value="Submit" onclick="ajaxFunction();" /> </ <td> / <tr> / सारणी> <div id="message"> </ div> </ फार्म> </ body> </> सिर html> </ 

Servlet कोड

  ; आयात java.io. *;

 ; आयात java.text .*;

 ; आयात java.util .*;

 ; आयात javax.servlet .*;

 ; आयात javax.servlet.http .*;

 HttpServlet { सार्वजनिक वर्ग getname HTTPServlet फैली (

	 init ( ServletConfig config ) throws ServletException { सार्वजनिक शून्य init (ServletConfig config) ServletException फेंकता (	
		 ( config ) ; सुपर. init (config);
	 )

	 destroy ( ) { सार्वजनिक शून्य नष्ट () (

	 )

	 doPost ( HttpServletRequest request,HttpServletResponse response ) throws IOException , ServletException { सार्वजनिक शून्य अनुरोध doPost (HttpServletRequest, HttpServletResponse प्रतिक्रिया) फेंकता फेंकता है, ServletException (
		 null ; स्ट्रिंग नाम = बातिल;
		 response. getWriter ( ) ; PrintWriter बाहर = प्रतिक्रिया. GetWriter ();
		 request. getParameter ( "txtname" ) != null ) { getParameter अगर (request. ("txtname) अशक्त! =) (
			 ( "txtname" ) ; नाम = अनुरोध करता हूँ. getParameter ("txtname);
		 )
                 और (
                        ; "नाम =";
                 )
  	         "You have successfully made Ajax Call:" + name ) ; बाहर. println ("आप कॉल है Ajax सफलतापूर्वक बनाया:" + नाम);
	 )
 ) 

AJAX कोड विवरण के लिए

मैं यहाँ 3 जावास्क्रिप्ट समारोह की घोषणा की है:
) GetXMLObject (- ब्राउज़र पर AJAX Object निर्भर बनाने के लिए जिम्मेदार.
AJAX ajaxFunction माध्यम से (कॉल servlet फोन करने के लिए जिम्मेदार) -.
) HandleServerResponse (- सर्वर से पुनः प्राप्त डेटा जवाबदेह के लिए प्रदर्शित.

कैसे AJAX कोड काम करता है:

  • जब पेज लोड मैं () समारोह getXMLObject और xmlhttp चर में निर्मित वस्तु लौटने बुला द्वारा एक AJAX Object बना रहा हूँ
  • जब इनपुट बटन, ajaxFunction () पर प्रयोक्ता क्लिकें कि Ajax वस्तु बनाया है या नहीं और है कि दूरस्थ स्क्रिप्ट कॉल के आधार पर जाँच के लिए जो कहा जाता है. यहाँ एक समारोह हैंडलर handleServerResponse भी सर्वर से पुन: प्राप्त करने के लिए मूल्य परिभाषित किया गया है
  • जब AJAX कॉल के readystate 4 और HTTP स्थिति तक पहुँच 200 हम डेटा पास है सर्वर से textbox करने के लिए दिलवाया

आपका ईमेल:

कोड Servlet विवरण के लिए

  • डिफ़ॉल्ट doPost कार्य के द्वारा कहा जाता है जब आप करने के लिए servlet सामग्री पोस्ट
  • doPost समारोह में मैं txtname के रूप में पोस्ट डेटा दिलकश हूँ और यह स्थानीय चर नाम बताए
  • मैं अंत में डेटा प्रदर्शित हूँ पोस्ट के माध्यम से मिला है. सभी प्रदर्शित डेटा Ajax करने के लिए प्रतिक्रिया के रूप में Ajax Object करने के लिए पारित हो जाता है फोन करने के लिए बनाया servlet


कस्टम खोज

लोकप्रिय लेख:

साझा करें और आनंद लें:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • DZone
  • email
  • IndianPad
  • LinkedIn
  • Live
  • MySpace
  • Netvibes
  • RSS
  • Technorati
  • Yahoo! Bookmarks
  • Yahoo! Buzz
  • Reddit
  • Add to favorites
  • PDF
  • Twitter
Tags: , चैनल: AJAX , जावा टैग: ,
  1. 8 अप्रैल, 2008 | 4:50 पर # 1

    अच्छा साइट मैं "आज इसे और Stumbledupon" यह तुम .. के लिए एक ठोकर दिया आगे देख देखने के लिए और क्या है .. बाद में

  2. रिया
    19 फ़रवरी 2009 | 3:54 पर # 2

    कोड काम यू अपने कोड पर मुकदमा नहीं! काम करता है ... के बाद servlet उत्पादन प्रस्तुत दिखाया गया है .. यह मदद के रूप में नहीं रहना पृष्ठ

  3. रिया
    19 फ़रवरी 2009 | 3:55 पर # 3

    मैं एक ही नाम दे दिया है और कोड ठीक से जाँच की ...

  4. अहमद
    16 मार्च, 2009 | 11:05 पर # 4

    हाय कोड वास्तव में काम किया, लेकिन फार्म में से एक मान पोस्टिंग के लिए काम कर केवल अपनी, मैं एक फार्म है कि कुछ पाठ क्षेत्रों से आठ पदों के कई मूल्यों, इस कोड को उन आदानों का कोई एक समाधान का सुझाव देते हैं तो कृपया के साथ काम नहीं कर रहा है,
    और इसके तत्काल ive मेरा अंतिम sem परियोजना में उपयोग करने के लिए

    धन्यवाद अग्रिम में एक बहुत

  5. ली
    25 नवंबर, 2009 | 22:14 पर # 5

    प्रयोग
    ") Document.getElementById (" संदेश "innerHTML. =; Xmlhttp.responseText"
    जगह
    "Document.myForm.message.innerHTML =; xmlhttp.responseText"

  6. गुमनाम
    7 जुलाई, | 2010 05:15 पर # 6

    हाय हितेश

    मैं AJAX नया हूँ. मैं एक समस्या है जो मैं के लिए एक AJAX का उपयोग कर समाधान की जरूरत है ..
    अपने आवेदन में जैसे ही मैंने प्रवेश यह एक servelt जो Businesslogic और आउटपुट फ़ाइल के लिए संदर्भित करता है एक मेज प्रदर्शित एक jsp ... मैं किसी भी कार्रवाई या घटना के बिना एक निश्चित अंतराल के बाद इस jsp अद्यतन करने की आवश्यकता है यह प्राप्त करने के लिए डेटा ताज़ा किया गया है. डेटाबेस से
    कर सकते हैं u pls कुछ उदाहरण प्रदान

  1. 31 मार्च, 2010 में | 18:29 # 1