Seth Christian Levi Kayl Jiebo Alex S Vanessa Siddartha Rerajitha
He He Mike C Jiahao Keqin Max (Yinan) Arthi Joe B Andrew T Sunghyun 
Alex Q Zhiwei Xing #ep-l Chenrui Xinyu Haoyuang Andrew R Brandon P
Kevin S David Lee 

We started with a summary from this morning. 

 (a) Inheritance and composition are related. 

 (b) System.out.println("Can you explain this line?");

System is a class 

out is a static member of System

The type of out is: PrintWriter

What is println? Where can I find it in the documentation? 

https://docs.oracle.com/javase/8/docs/api/java/lang/System.html

https://docs.oracle.com/javase/8/docs/api/java/lang/System.html#out

https://docs.oracle.com/javase/8/docs/api/java/io/PrintStream.html

https://docs.oracle.com/javase/8/docs/api/java/io/PrintStream.html#println-java.lang.String-

Lab today is 12, finishes Tomcat. 

1. Log into silo.

2. Activate your Tomcat environment (done automatically). 

3. Go to the squash context and confirm set up:

[vanander@silo webapps]$ cd $CATALINA_HOME/webapps
[vanander@silo webapps]$ ls -l
total 24
drwx------ 13 vanander students 4096 Jul 12 11:38 docs
drwx------  6 vanander students 4096 Jul 12 11:38 examples
drwx------  5 vanander students 4096 Jul 12 11:38 host-manager
drwx------  5 vanander students 4096 Jul 12 11:38 manager
drwx------  3 vanander students 4096 Jul 12 11:38 ROOT
drwx------  3 vanander students 4096 Jul 18 15:03 squash
[vanander@silo webapps]$ du -a squash
4       squash/index.html
4       squash/WEB-INF/classes/One.class
4       squash/WEB-INF/classes/One.java
12      squash/WEB-INF/classes
4       squash/WEB-INF/lib
4       squash/WEB-INF/web.xml
24      squash/WEB-INF
32      squash
[vanander@silo webapps]$

4. Check that your server is up and running, start it if not. 

   Our URL is this and our server is up.

       http://silo.cs.indiana.edu:60221/

   https://www.cs.indiana.edu/classes/c212-dgerman/spr2015/faq.html

5. http://silo.cs.indiana.edu:60221/squash/

   Run the servlet and determine the shortcoming. 

6. Fix the servlet, recompile, try again: doesn't reload or something.

[vanander@silo WEB-INF]$ cd classes/
[vanander@silo classes]$ ls -l
total 8
-rw------- 1 vanander students 1074 Jul 18 15:01 One.class
-rw------- 1 vanander students  514 Jul 18 15:01 One.java
[vanander@silo classes]$ nano -w One.java
[vanander@silo classes]$ cat One.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class One extends HttpServlet {
  public void doGet(HttpServletRequest request,
                    HttpServletResponse response) throws IOException, ServletException {
    String name = request.getParameter("who");

    String age = request.getParameter("age");

    response.setContentType("text/html");
    PrintWriter out = response.getWriter();
    out.println("Well, " + name + " you will be " +
                (Integer.parseInt(age) + 1) + " next year.");
             // add this while in nano or pico
  }
}
[vanander@silo classes]$

Now recompile and connect and see it doesn't work any better. 

[vanander@silo classes]$ ls -l
total 8
-rw------- 1 vanander students 1074 Jul 18 15:01 One.class
-rw------- 1 vanander students  550 Jul 18 15:10 One.java
[vanander@silo classes]$ javac One.java
Picked up _JAVA_OPTIONS: -Xms512m -Xmx512m
[vanander@silo classes]$ ls -l
total 8
-rw------- 1 vanander students 1151 Jul 18 15:13 One.class
-rw------- 1 vanander students  550 Jul 18 15:10 One.java
[vanander@silo classes]$

Then go online to check. 

7. Go to http://silo.cs.indiana.edu:60221/index.jsp and 
click on Manager App to become manager then click Cancel. 

8. Move into $CATALINA_HOME/conf

9. Open tomcat-users.xml and make yourself manager. 

[vanander@silo conf]$ ls -l
total 208
drwx------ 3 vanander students   4096 Jul 11 15:48 Catalina
-rw------- 1 vanander students  12128 Jan 10  2013 catalina.policy
-rw------- 1 vanander students   6392 Jan 10  2013 catalina.properties
-rw------- 1 vanander students   1394 Jan 10  2013 context.xml
-rw------- 1 vanander students   3288 Jan 10  2013 logging.properties
-rw------- 1 vanander students    736 Jul 12 12:51 server.xml
-rw------- 1 vanander students   6435 Jan 10  2013 server.xml-old
-rw------- 1 vanander students   1530 Jan 10  2013 tomcat-users.xml
-rw------- 1 vanander students 162905 Jan 10  2013 web.xml
[vanander@silo conf]$ nano -w tomcat-users.xml
[vanander@silo conf]$ cat tomcat-users.xml
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="manager-gui"/>
<user username="narwhal" password="whatev3r" roles="manager-gui"/>
</tomcat-users>
[vanander@silo conf]$

10. Stop and start again Tomcat. 

$CATALINA_HOME/bin/shutdown.sh

$CATALINA_HOME/bin/startup.sh

11. Go to squash and reload the context. 

http://silo.cs.indiana.edu:60221/manager/html

Log in with narwhal/whatev3r then reload the context then run it. 

--

JSP is to servlets what PHP is to CGI. 

Deliverable for this: post the username and password to OnCourse. 

Now what do you think is this:

( nohup grails run-app -Dserver.port=14819 --non-interactive 2>&1 > /dev/null & )