Apache and Tomcat, Sample Form Servlet Application HyunSuk Jung 2002.11.11.

Slides:



Advertisements
Similar presentations
Apache Tomcat as a container for Servlets and JSP
Advertisements

J.Sant Servlets Joseph Sant Sheridan Institute of Technology.
Servlets. A form The HTML source Chapter 1 Please enter your name and password then press start Name: Password: In Netbeans you can graphically create.
Objectives Ch. D - 1 At the end of this chapter students will: Know the general architecture and purpose of servlets Understand how to create a basic servlet.
Servlets Stoney Jackson
CSE 190: Internet E-Commerce Lecture 7. HTML Templates Designed to separate server side logic from HTML presentation Key features –Escapes from HTML into.
An introduction to Java Servlet Programming
Servlets Servlets are modules that extend the functionality of a “java-enabled” web-server They normally generate HTML code and web content dynamically.
June 1, 2000 Object Oriented Programming in Java (95-707) Advanced Topics 1 Lecture 10 Object Oriented Programming in Java Advanced Topics Servlets.
Servlets. A form The HTML source Chapter 1 Please enter your name and password then press start Name: Password: In Netbeans you can graphically create.
1 CS6320 – Servlet Structure and Lifecycle L. Grewe.
Servlets Replace Common Gateway Interface Scripts Extend Server Functionality Modules (software components) Like applets to browsers No GUI.
Servlets. A form The HTML source Chapter 1 Please enter your name and password then press start Name: Password:
Introduction to Servlet & JSP
Java Server and Servlet CS616 Team 9 Kim Doyle, Susan Kroha, Arunima Palchowdhury, Wei Xu.
Servlets. Our Project 3-tier application Develop our own multi-threaded server Socket level communication.
Java Servlets and JSP.
Java Servlets. What Are Servlets? Basically, a java program that runs on the server Basically, a java program that runs on the server Creates dynamic.
Gayle J Yaverbaum, PhD Professor of Information Systems Penn State Harrisburg.
Web technologies and programming cse hypermedia and multimedia technology Fanis Tsandilas April 3, 2007.
Servlets Pranav Maydeo. What is a Servlet ? Servlets are modules of Java code that run in a server application to answer client requests. Servlets are.
Servlets. - Java technology for Common Gateway Interface (CGI) programming. - It is a Java class that dynamically extends the function of a web server.
CSC 2720 Building Web Applications
Chapter 5 Java Servlets. Objectives Explain the nature of a servlet and its operation Use the appropriate servlet methods in a web application Code the.
111 Java Servlets Dynamic Web Pages (Program Files) Servlets versus Java Server Pages Implementing Servlets Example: F15 Warranty Registration Tomcat Configuration.
COMP 321 Week 7. Overview HTML and HTTP Basics Dynamic Web Content ServletsMVC Tomcat in Eclipse Demonstration Lab 7-1 Introduction.
Web Server Programming 1. Nuts and Bolts. Premises of Course Provides general introduction, no in-depth training Assumes some HTML knowledge Assumes some.
Servlet Lifecycle Lec 28. Servlet Life Cycle  Initialize  Service  Destroy Time.
Java Servlets & Java Server Pages Lecture July 2013.
Java Servlets Lec 27. Creating a Simple Web Application in Tomcat.
Servlet Communication Other Servlets, HTML pages, objects shared among servlets on same server Servlets on another server with HTTP request of the other.
Servlets Servlets are modules that extend the functionality of a “java-enabled” web-server They normally generate HTML code and web content dynamically.
Chapter 2 Web app architecture. High-level web app architecture  When a client request coming in and needs servlet to serve dynamic web content, what.
20-Nov-15introServlets.ppt Intro to servlets. 20-Nov-15introServlets.ppt typical web page – source Hello Hello.
S ERVLETS Hits Counter 21-Nov-15. S ERVLETS - H ITS C OUNTER Many times you would be interested in knowing total number of hits on a particular page of.
Java Servlet API CGI / HTTP Concepts Java Servlet API.
Introduction to Server-Side Web Development Introduction to Server-Side Web Development Session II: Introduction to Server-Side Web Development with Servlets.
CSE 403 The Mythical Servlet Goals Introduce basic servlet terminology Formally introduce homework 2 Walkthrough of build & deployment Group discussion.
Middleware 3/29/2001 Kang, Seungwoo Lee, Jinwon. Description of Topics 1. CGI, Servlets, JSPs 2. Sessions/Cookies 3. Database Connection(JDBC, Connection.
CSI 3125, Preliminaries, page 1 SERVLET. CSI 3125, Preliminaries, page 2 SERVLET A servlet is a server-side software program, Responds oriented other.
1 Introduction to Servlets. Topics Web Applications and the Java Server. HTTP protocol. Servlets 2.
Introduction to Servlets. Introduction Servlet is a language to develop the server side applications, and it is also server side component. It can develop.
Java Servlets Java Server Pages (JSP)
Configuration Web Server Tomcat - Install JDK Install Tom cat Configure Tom cat for running Servlet C:\Program Files\Apache Software Foundation\Tomcat.
Java and the Web CSE 3330 Southern Methodist University.
HTTP protocol Java Servlets. HTTP protocol Web system communicates with end-user via HTTP protocol HTTP protocol methods: GET, POST, HEAD, PUT, OPTIONS,
Introduction To HTML Dr. Magdi AMER. HTML elements.
ClaRA web services V. Gyurjyan Clas12 Software Meeting
How CGI and Java Servlets are Run By David Stein 14 November 2006.
 Java Server Pages (JSP) By Offir Golan. What is JSP?  A technology that allows for the creation of dynamically generated web pages based on HTML, XML,
J2EE/Java EE Apache Tomcat v9 IBM Websphere v8 Redhat JBoss EAP v6 Oracle Weblogic v12 Fusion Web Tier ServletsJSPJSF Business Tier JMXJMSEJB.
S ERVLETS Form Data 19-Mar-16. F ORM P ROCESSING You must have come across many situations when you need to pass some information from your browser to.
1 Lecture 8 George Koutsogiannakis/Summer 2011 CS441 CURRENT TOPICS IN PROGRAMMING LANGUAGES.
1 Web Programming with Servlets & JSPs WEB APPLICATIONS – AN OVERVIEW.
Distributed Web Systems Java Servlets Lecturer Department University.
Introduction to Servlets
Building Web Apps with Servlets
Servlet Fudamentals.
Net-centric Computing
JDBC & Servlet CSE 4504/6504 Lab.
Course Outcomes of Advanced Java Programming AJP (17625, C603)
HTTP Servlet Overview Servlets are modules that extend request/response-oriented servers, such as Java-enabled web servers. For example, a servlet might.
HTTP request message two types of HTTP messages: request, response
Servlets and Java Server Pages
Java Servlets and JSP.
Servlets Servlets are modules that extend the functionality of a “java-enabled” web-server They normally generate HTML code and web content dynamically.
Servlets Servlets are modules that extend the functionality of a “java-enabled” web-server They normally generate HTML code and web content dynamically.
Introduction to Servlet
Basic servlet structure
Java Chapter 7 (Estifanos Tilahun Mihret--Tech with Estif)
Presentation transcript:

Apache and Tomcat, Sample Form Servlet Application HyunSuk Jung

2 Data Warehousing Lab. DW Apache 소개 가장 인기있는 internet web server 가장 인기있는 internet web server  지속적 패치 파일 제공  최고의 퍼포먼스  무료 제공

3 Data Warehousing Lab. DW Apache 기본 설정 (httpd.conf) 지시어설명 port 웹 서버의 기본포트는 80 번으로, 이미 또 다른 프로세스에 의해 80 번 포트가 점유되어 있지는 않은가를 살펴본다. 80 번 포트가 사용되어 지고 있다면, 1024 번 이상의 포트번호를 설정하여 재 시도 해본다. Group #-1 과 같이 지정되어 있으나, 이것을 시스템에서 인식하지 못한다면 nobody 와 같은 적절한 그룹을 지정한다. ServerName 주석이 되어 있는 경우, 시스템에서 사용하는 와 같은 FQDN 형식으로 입력하여 주며, 도메인이 없는 경우 시스템의 IP 주소를 입력하거나 또는 localhost 로 입력한다. ServerRoot 아파치 웹 서버가 위치하는 경로가 적절히 지정되어 있는지 확인한다. 이 경로는 아파치 생성시에 --prefix 옵션에 지정된 경로이며, 지정하지 않을 경우에는 ‘ /usr/local/apache ’ 의 기본 경로를 가지게 된다. DocumentRoot 아파치 웹 서버의 기본이 되는 문서 디렉토리로, 클라이언트가 요청시에 제일 먼저 DocumentRoot 에 의해 지정된 디렉토리의 문서 내용을 보여주게 된다.

4 Data Warehousing Lab. DW Tomcat 소개 아파치 소프트웨어에서 개발되고 있는 Java Servlet 과 JSP(Java Server Page) 등의 자바 기술을 이용할 수 있는 Servlet Container 이다. 아파치 소프트웨어에서 개발되고 있는 Java Servlet 과 JSP(Java Server Page) 등의 자바 기술을 이용할 수 있는 Servlet Container 이다. Tomcat 실행시 Tomcat 실행시

5 Data Warehousing Lab. DW Apache 와 Tomcat 을 함께 쓰는 이유 1. Tomcat is not as fast as Apache when it comes to static pages. 2. Tomcat is not as configurable as Apache. 3. Tomcat is not as robust as Apache. 4. Tomcat may not address many sites' need for functionality found only in Apache modules (e.g. Perl, PHP, etc.).

6 Data Warehousing Lab. DW 나의 실행 환경 Jdk1.3+Apache2.0.4+Tomcat4.0.4+cocoon2.0.3 의 환경에서 연동하였다. Jdk1.3+Apache2.0.4+Tomcat4.0.4+cocoon2.0.3 의 환경에서 연동하였다.

7 Data Warehousing Lab. DW

8 Data Warehousing Lab. DW HttpServletRequest, HttpServletResponse 의 개요 HttpServletRequest HttpServletRequest 클라이언트의 모든 요청 정보 보유 request header form data, query parameter InputStream( 클라이언트로부터 전송되어지는 데이터 ) 기타 클라이언트 정보얻기  세션 정보, 쿠키, path... HttpServletResponse HttpServletResponse 클라이언트에게 보내지는 모든 정보 보유 response header OutputStream ( 클라이언트에게 보내지는 데이터 ) 쿠키 설정 세션 설정

9 Data Warehousing Lab. DW HttpServletRequest – Request 메시지를 보내어 페이지 받기

10 Data Warehousing Lab. DW RequestMessage.java import java.io.*; import javax.servlet.*; import javax.servlet.http.*; import java.net.*; public class RequestMessage extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { throws ServletException, IOException { OutputStream out = response.getOutputStream(); OutputStream out = response.getOutputStream(); InetAddress webServer = InetAddress.getByName("kr.yahoo.com"); InetAddress webServer = InetAddress.getByName("kr.yahoo.com"); Socket httpPipe = new Socket(webServer, 80); // 웹서버포트 :80 Socket httpPipe = new Socket(webServer, 80); // 웹서버포트 :80 InputStream is = httpPipe.getInputStream(); InputStream is = httpPipe.getInputStream(); PrintStream os = new PrintStream(httpPipe.getOutputStream()); PrintStream os = new PrintStream(httpPipe.getOutputStream()); os.println("GET " + "/index.html" + " HTTP/1.0\n");// send GET HTTP request os.println("GET " + "/index.html" + " HTTP/1.0\n");// send GET HTTP request int temp; int temp; ByteArrayOutputStream baos = new ByteArrayOutputStream(); ByteArrayOutputStream baos = new ByteArrayOutputStream(); while ( (temp = is.read())!=-1) { while ( (temp = is.read())!=-1) { baos.write(temp); baos.write(temp); } out.write(baos.toByteArray()); out.write(baos.toByteArray()); os.close(); os.close(); is.close(); is.close(); out.close(); out.close(); }}

11 Data Warehousing Lab. DW HttpServletResponse – 다른 페이지 보내기

12 Data Warehousing Lab. DW ResponseRedirect.java import java.io.*; import java.util.*; import javax.servlet.*; import javax.servlet.http.*; public class ResponseRedirect extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { throws ServletException, IOException { response.setContentType("text/html;charset=euc-kr"); response.setContentType("text/html;charset=euc-kr"); PrintWriter out = response.getWriter(); PrintWriter out = response.getWriter(); String gopage = request.getParameter("gopage"); String gopage = request.getParameter("gopage"); if(gopage!=null && gopage.equals("yahoo")){ if(gopage!=null && gopage.equals("yahoo")){ response.sendRedirect(" response.sendRedirect(" }else { }else { out.println(" "); out.println(" "); out.println(" Response 의 sendRedirect "); out.println(" Response 의 sendRedirect "); out.println(" 다른페이지로 이동하기 위해서는 "); out.println(" 다른페이지로 이동하기 위해서는 "); out.println("URL 에 ?gopage=yahoo 를 붙이시오 "); out.println("URL 에 ?gopage=yahoo 를 붙이시오 "); out.println(" "); out.println(" "); } out.close(); out.close(); }}

13 Data Warehousing Lab. DW HttpServletResponse – setHeader

14 Data Warehousing Lab. DW SetHeaderTest.java import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class SetHeaderTest extends HttpServlet{ public void doGet(HttpServletRequest request, HttpServletResponse response) public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException{ throws IOException, ServletException{ response.setContentType("text/html;charset=euc-kr"); response.setContentType("text/html;charset=euc-kr"); PrintWriter out = response.getWriter(); PrintWriter out = response.getWriter(); response.setHeader("Refresh", "URL= response.setHeader("Refresh", "URL= out.println(" "); out.println(" "); out.println(" 잠시만 기다려 주세요... "); out.println(" 잠시만 기다려 주세요... "); out.println(" 5 초후에 yahoo 홈페이지로 이동합니다. "); out.println(" 5 초후에 yahoo 홈페이지로 이동합니다. "); out.println(" "); out.println(" "); }}

15 Data Warehousing Lab. DW

16 Data Warehousing Lab. DW Sample Form Servlet Application Form1.html testing JAVA Servlet Second 메세지를 입력 하세요 :

17 Data Warehousing Lab. DW Form1.java import javax.servlet.*; import javax.servlet.http.*; import java.io.*; import java.util.*; public class form1 extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { String server, protocol, querystring, msg, date; int port, leng; res.setContentType("text/html"); PrintWriter toClient = new PrintWriter(res.getOutputStream(),true); server = req.getServerName(); port = req.getServerPort(); protocol= req.getProtocol(); msg = req.getParameter("msg"); //form tag 에서 msg 라고 이름을 정한 field 값을 받아옴. querystring = req.getQueryString(); Date today = new Date(); date = today.toString(); toClient.println(" test servlets GET "); toClient.println(" "); toClient.println(" From Servlet "); toClient.println(" Your Server name : "+server+" "); toClient.println(" Your Port number: "+port+" "); toClient.println(" Your Protocol : "+protocol+" "); toClient.println(" Message from Client : "+msg+" "); toClient.println(" Your Query String : "+querystring+" "); toClient.println(" "); toClient.println(" "); } }