Université Versailles-Saint-Quentin Promotion 2011-2012 Composants logiciels Web et distribués Groupe JAVA EE - BD Formation continue Évaluation QCM Partie Java Web1 Question 1: Quels sont les composants spécifiques de l'architecture JEE Web ? A Classes et interfaces Java B Classes JavaBean C Classes Enterprise Java Bean D Classes Servlet et pages JSP Question 2: Quel est le cycle de vie d'une page JSP avant d'être exécutée ? A Exécutée directement comme une page par le serveur d'application B Traduite en Byte Code Java puis exécutée par le serveur d'application C Traduite en code source d'une servlet, puis compilée et enfin exécutée D Renvoyée directement par la Common Gateway Interface Question 3: Quel est l'intérêt du Design Pattern Modèle-Vue-Contrôleur ? A Il contient et centralise des interactions de bas niveau entre composants métier B Il sépare les aspects d'une application en découplant l'accès aux données, la logique métier et la présentation des données C Il centralise le service distribué de recherche d'objets, il fournit un point de contrôle centralisé et peut se comporter comme un cache D Il s'agit d'une classe qui réalise la récupération de données pour une vue, adaptant une source de données à une simple API utilisable par les vues des applications 1 pour répondre aux questions, cocher la ou les cases (seconde colonne de chaque tableau) FC-Vélzy 1/12 JJLC Question 4: Quelle est la bonne définition du modèle MVC 2 ? A Le modèle MVC adapté à l'architecture J2EE Web B Le modèle MVC à deux couches C Le modèle MVC en configuration client/serveur D La deuxième version du modèle MVC Question 5: Quels sont les frameworks connus du monde JEE Web ? A Struts B Eclipse C Spring D JSF Question 6: Quels sont les types de clients d'une application JEE Web ? A Client léger B Client de services Webs C Client riche D Client CORBA ou RMI Java Question 7: Quel est le fichier de déploiement d'une application JEE Web ? A web.xml B application.xml C ejb-jar.xml Question 8: Une application JEE Web s'exécute dans une simple JVM ? A OUI B NON FC-Vélzy 2/12 JJLC Question 9: <servlet> <servlet-name>shopping</servlet-name> <servlet-class>org.myorg.ShoppingServlet</servlet-class> <init-param> <param-name>year</param-name> <param-value>2004</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>shopping</servlet-name> <url-pattern>/shop/*</url-pattern> </servlet-mapping> Quelle est la réponse juste ? A La requête http://www.myorg.org/shopping est envoyée vers la servlet : org.myorg.ShoppingServlet B Il est invalide d'ajouter une autre section <servlet> avec le même nom : <servlet-name>shopping</servlet-name> C A chaque fois que le mot ''shopping'' est utilisé dans une requête, le paramètre qui a pour nom ''year'' avec la valeur ''2004'' est passé à la servlet D Il est invalide d'ajouter une autre section <servlet-mapping> qui contient aussi : <servlet-name>shopping</servlet-name> Question10: <context-param> <param-name>com.jspservletcookbook.BoundObj</param-name> <param-value>com.jspservletcookbook.BoundObj</param-value> </context-param> Quel est le code qui permet à la servlet d'obtenir le paramètre ? A String boundObjectName = getServletContext().getInitParameter("com.jspservletcook book.BoundObj"); B com.jspservletcookbook.BoundObj boundObject = (com.jspservletcookbook.BoundObj) getServletContext().getAttribute("com.jspservletcookbook .BoundObj"); C String boundObjectName = request.getParameter("com.jspservletcookbook.BoundObj"); D com.jspservletcookbook.BoundObj boundObject = (com.jspservletcookbook.BoundObj) getSession().getAttribute("com.jspservletcookbook.BoundO bj"); FC-Vélzy 3/12 JJLC Question 11: Quelle est la méthode HttpSession qui permet de stocker un objet dans la session ? A setId() B setObject(String objectName) C setSessionObject(String objectName) D setAttribute(String attributeName,Object value) Question 12: A partir de la méthode HttpServlet : doGet(HttpServletRequest, HttpServletResponse) Quelle est l'instruction qui est réalisée ? A La version de la servlet est retournée B Le contexte de la servlet est retourné C Le service HTTP GET est réalisé D Le service HTTP OPTIONS est réalisé Question 13: Quel est le répertoire qui stocke le descripteur de déploiement de l'application Web monappli ? A monappli/WEB-INF B monappli/WEB-INF/lib C monappli/WEB-INF/catalog D monappli/WEB-INF/classes Question 14: Quel est l'élément fils valide de l'élément <web-app> ? A <location> B <res-type> C <filter> D <param-name> Question 15: FC-Vélzy 4/12 JJLC A partir de : 1. 2. 3. 4. 5. 6. 7. <html> <body> <% x = x + 50; %> Set it to: <%= x %> </body> </html> Quelle est l'instruction à insérer en ligne 3 pour que la compilation de la JSP réussisse et pour que la sortie en ligne 4 affiche la valeur 94 ? A <% int x = 44 %> B <%! int x = 44; %> C <%! int x = 44; !%> D <%@ int x = 44; @%> Question 16: A partir de : <%= bean1.getSize() %> Quelle est l'instruction qui produit le même résultat ? A <jsp:getProperty bean1.size /> B <jsp:getProperty "bean1.size" /> C <jsp:getProperty name=bean1 property=size /> D <jsp:getProperty name="bean1" property="size" /> Question17: Avec cette ligne dans web.xml :<url-pattern>/*.titi</url-pattern> Quelle est l'action HTTP qui permet d'invoquer la servlet ? A action=''titi'' B action=''toto.titi'' Question18: Avec cette ligne dans web.xml :<welcome-file>page.html</welcome-file> L'application peut être invoquée par page.html ? A OUI B NON FC-Vélzy 5/12 JJLC Partie JSF Question 1: <servlet> <servlet-name> faces-servlet-name </servlet-name> <servlet-class>javax.faces.FacesServlet</servlet-class> </servlet> <servlet> <servlet-mapping> faces-servlet-name </servlet-mapping> <servlet-class>javax.faces.FacesServlet</servlet-class> </servlet> <servlet> <servlet-name> myfaces </servlet-name> <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> </servlet> <servlet> <servlet-mapping> myfaces </servlet-mapping> <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> </servlet> Parmi ces définitions, quelle est celle qui est correcte ? A Première B Seconde C Troisième D Quatrième Question 2: Quel est le préfixe recommandé pour le mapping de la FacesServlet ? A /faces B /faces/* C *.jsf Question 3: Est-ce que les composants JSF détectent automatiquement quand utiliser les getter ou les setter des ManagedBean ? A Toujours vrai B Toujours faux C Vrai si le composant JSF est défini dans une form D Vrai si le composant JSF est défini dans une form et à l'attribut immediate à true FC-Vélzy 6/12 JJLC Question 4: JSF récupère les informations provenant des form ? A VRAI B FAUX Question 5: Quelle est la balise qui définit la page de destination dans un cas de navigation du faces-config.xml ? A <from-outcome></from-outcome> B <to-view-id></to-view-id> C <navigation-case></navigation-case> Question 6: Quelle est la balise qui permet de déclarer une classe POJO dont le cycle de vie est géré par JSF ? A <managed-bean></managed-bean> B <mapping-bean></mapping-bean> C <pojo-bean></pojo-bean> D <managed-pojo></managed-pojo> Question 7: Quelles sont les portées applicables sur un ManagedBean ? A Session, Cache, Low B Application, Session, Request C Http, Session, Transaction D Query, Bean, Backing Question 8: Est-il possible de déclarer dans faces-config.xml qu'un ManagedBean en référence un autre ? A OUI B NON FC-Vélzy 7/12 JJLC Question 9: Dans cette liste quelles sont les balises JSF ? A h:inputText B h:result C h:Icon D h:inputSecret Question 10: <h:commandButton action="#{carstore.buyCurrentCar}" value="#{bundle.buy}" /> Quelles sont les bonnes affirmations ? A L'atrtribut « action » référence une méthode sur un Bean B L'attribut « value » référence le message dans le label du bouton FC-Vélzy 8/12 JJLC Partie Enterprise Java Bean Question 1: A quoi servent les Enterprise Java Bean ? A Présenter l'information B Implémenter la logique métier C Implémenter la logique applicative D Implémenter des données Question 2: Quelles sont les familles d' Enterprise Java Bean ? A Entity B Session C Association D Message Driven Question 3: Quels sont les types de client des EJB ? A CORBA et RMI JAVA B Composants Web (servlet, JSP) C Application Java Desktop D Applet Java E Client Services Web Question 4: Quel est l'acronyme qui dit qu'un Entity Bean voit sa persistance gérée par le serveur ? A CMT B CMR C CMS D CMP FC-Vélzy 9/12 JJLC Question 5: Quelle est l'annotation qui déclare un composant EJB sans état ? A @Stateful B @EJB C @Stateless D @Entity Question 6: Quelle est l'annotation qui déclare un composant EJB avec état non persistant ? A @Stateful B @EJB C @Stateless D @Entity Question 7: Quelle est l'annotation qui déclare un composant EJB avec état persistant ? A @Stateful B @EJB C @Stateless D @Entity Question 8: Un client distant peut récupérer l'interface distante d'un Entity Bean ? A OUI B NON Question 9: Quelles annotations peuvent qualifier les interfaces de Session Bean ? A @EJB B @Local C @Remote D @Internal FC-Vélzy 10/12 JJLC Question 10: Quelle est l'assertion vraie quant à l''utilisation d'une interface distante d'un Bean Session ? A Acquérir un InitialContext est requis pour les clients distants B L'injection @EJB est requise pour les clients distants Question 11: Comment passe l'information entre un client local et un EJB ? A Par référence B Par valeur Question 12: Comment passe l'information entre un client distant et un EJB ? A Par référence B Par valeur Question 13: A quels types d' EJB s'applique le mécanisme de passivation ? A Entity B Session Stateful C Session Stateless D Message Driven Question 14: A quelle règle correspond le déclenchement du mécanisme de passivation ? A Aléatoire B Par système d'estampille (timing) C Par ordonnancement FIFO ou LIFO D Par algorithme Least Recent Used FC-Vélzy 11/12 JJLC Question 15: Quelles sont les nouveauté de la version 3 des EJB ? A Annotations Java 5 B Plus besoin d'interface d'accueil C Plus besoin de descripteur de déploiement D Pas de polymorphisme Question 16: Quel est le nom du descripteur de déploiement si nécessaire ? A ejb-jar.xml B build.xml C web.xml Question 17: Quelles sont les formes d'archives pour les applications JEE avec EJB ? A war B jar C ear D tar Question 18: Quelle est l'annotation pour obtenir du serveur un gérant de persistance ? A @Resources B @EJB C @PersistenceContext Question 19: Quelle est l'annotation pour déclarée une relation entre deux Session Bean ? A @Resources B @EJB C @PersistenceContext FC-Vélzy 12/12 JJLC