html + scriptlet
Ogólnie to jest stronka na zaliczenie a nie taka do sieci.
tu jest kod serwletu:
[codebox]
import java.io.;
import java.text.;
import java.util.;
import javax.servlet.;
import javax.servlet.http.*;
public class sesja extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws IOException, ServletException
{
HttpSession session = request.getSession(true);
DaneSesji Sesja = null;
String zawartosc ="";
Sesja = (DaneSesji) session.getValue("sesja");
if (Sesja==null)
{
Sesja = new DaneSesji();
session.putValue("sesja", Sesja);
zawartosc="nowa sesja
";
}
else
{
zawartosc="poprzednia sesja
";
String Login = request.getParameter("login");
String Haslo = request.getParameter("haslo");
if (Login!=null || Haslo!=null)
{
Sesja.Login=Login;
Sesja.Haslo=Haslo;
}
}
if (!Sesja.Login.equals("-"))
{
zawartosc+="jestes zalogowany jako: "+Sesja.Login;
}
response.setContentType("text/html");
PrintWriter out = response.getWriter();
int znak;
String str="";
try{
// nowy strumień wejściowy
FileInputStream wejscie = new FileInputStream("C:/Program Files/Apache Software Foundation/Tomcat 6.0/webapps/way/index2.html");
// wczytanie całego pliku do stringu
znak = wejscie.read();
while( znak != -1 ){
str += (char) znak;
znak = wejscie.read();
}
wejscie.close();
}catch(IOException ex){
System.out.println("Blad zwiazany z odczytem z pliku. "+ex);
}
String wyjscie="";
wyjscie=str.replace("way", zawartosc);
//str.replaceFirst(arg0, arg1)
out.println(wyjscie);
//out.println(zawartosc);
if ( Sesja.Login.equals("-")==false || Sesja.Haslo.equals("-")==false)
{
out.println ("<br> Login: <b>"+Sesja.Login+" </b>Haslo:<b> "+Sesja.Haslo+"</b><br>");
}
}
public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException
{
doGet(request, response);
}
}
[/codebox]