Outils pour utilisateurs

Outils du site


exercices:debut

Exercices

Voici les codes fournis pour les TP M4102

TP3

Servlet

Le Tiny Java Web Server tjws.zip

Le fichier jquery.js

Le fichier json

Lancement sous Windows quand Fédora n'est pas disponible à l'IUT :

cd ..
set JDK_HOME=C:\Program Files\Java\jdk1.8.0_101
set SERVLET_API=lib\servlet.jar
java -cp "%SERVLET_API%;lib\war.jar;lib\webserver.jar;lib\jsp.jar;lib\jspengine.jar;%JDK_HOME%\lib\tools.jar" -Dtjws.webappdir=webapps -Dtjws.wardeploy.warname-as-context=yes Acme.Serve.Main -a aliases.properties -p 80 -l -c cgi-bin -j gnu.jspengine.JspServlet -gnu.jspengine.JspServlet.scratchdir <nowiki>deploydir</nowiki>/~~~/_jsp -gnu.jspengine.JspServlet.classloadername <nowiki>classloader</nowiki>

Exemple d'arborescence

.
├── appli.war
├── compilation.sh
├── index.html
├── makewar.sh
├── src
│   └── com
│       └── iut
│           └── servlets
│               └── Action.java
└── WEB-INF
    ├── classes
    │   └── com
    │       └── iut
    │           └── servlets
    │               └── Action.class
    ├── lib
    └── web.xml

Exemple de fichier web.xml :

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns="http://java.sun.com/xml/ns/javaee"
  xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="M4201C" version="2.5">
 
   <display-name>M4102C</display-name>
 
   <description>Cours M4102C - François MERCIOL</description>
 
   <welcome-file-list>
     <welcome-file>index.html</welcome-file>
   </welcome-file-list>
 
   <servlet>
      <servlet-name>ServletAction</servlet-name>
      <servlet-class>com.iut.servlets.Action</servlet-class>
   </servlet>
   <servlet-mapping>
      <servlet-name>ServletAction</servlet-name>
      <url-pattern>/action</url-pattern>
   </servlet-mapping>
 
   <servlet>
     <servlet-name>Date</servlet-name>
     <servlet-class>HorlogeServlet</servlet-class>
   </servlet>
   <servlet-mapping>
     <servlet-name>Date</servlet-name>
     <url-pattern>/date</url-pattern>
   </servlet-mapping>
 
</web-app>

Exemple de classe Java :

import java.io.*;
import java.util.Date;
import java.text.*;
import javax.servlet.*;
import javax.servlet.http.*;
 
public class HorlogeServlet extends HttpServlet {
   public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
      SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
      PrintWriter pw;
 
      response.setContentType("text/html");
      pw=response.getWriter();
      pw.println("<h1>"+ dateFormat.format(new Date())+"<h2>");
   }
}

Commandes utiles :

javac -cp ../Tjws/lib/servlet.jar -d --racine-des-classes-- --les-sources--
 
jar cf --mon-war-- WEB-INF
jar uf --mon-war-- index.html

Si Fédora ne fonctionne pas :

"C:\Program Files\Java\jdk1.8.0_101\bin\javac.exe" -cp ../Tjws/lib/servlet.jar -d --racine-des-classes-- --les-sources--
 
"C:\Program Files\Java\jdk1.8.0_101\bin\jar.exe" cf --mon-war-- WEB-INF
"C:\Program Files\Java\jdk1.8.0_101\bin\jar.exe" uf --mon-war-- index.html

TP4

Servlet & Json

Vous pouvez télécharger la libraire Java pour utiliser JSON :

$.ajax({
   url : 'http://localhost:8080/Demo/myServlet',
   dataType : 'json',
   type : 'GET',
   data : { name : 'John', location : 'Boston' },
   success : function(data) {
      if (data.firstname=='Bill')
        console.log("C'est Bill !");
   },
   error : function() {
      console.log('Grave erreur !');
   }
});
console.log("Une petite trace ...");
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
 
      JSONObject jsonObject;
      JSONArray jsonArray;
 
      jsonObject = new JSONObject ();
      jsonObject.put ("type", f.isDirectory () ? "d" : "f");
      jsonObject.put ("name", f.getName ());
      jsonArray.add (jsonObject);
 
      response.setContentType ("application/json");
      pw = response.getWriter ();
      pw.print (jsonObject.toJSONString ());
      pw.flush ();
$ javac -cp ../Tjws/lib/servlet.jar:WEB-INF/lib/json-simple-1.1.1.jar -d WEB-INF/classes/ src/RemoteDir.java

TP5

Vous pouvez télécharger la libraire JQuery :

TP6 & TP7

Le seveur pour le DNS dynamique est ici :

exercices/debut.txt · Dernière modification: 20/02/2021 20:26 de webmestre

Outils de la page