VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ

Slides:



Advertisements
Podobné prezentace
IKT PHP PHP Tvorba formuláře - 10 Mgr. Josef Nožička
Advertisements

Seminář C++ 5. cvičení Dědičnost Ing. Jan Mikulka.
Na panelu zpráv klikněte na Povolit úpravy,
Špička v každém směru IT 3 Produktivita práce s Eclipse.
Talend Open Studio MDM Ing. David Pejčoch Tutorial.
Formuláře jsou důležitou součástí stránek, slouží:  k přihlašování k některým stránkám (eshopy, bakaláři, diskuze na webu apod.)  k odeslání údajů do.
Formuláře Formuláře lze nalézt téměř na každém webu. Formuláře lze nalézt téměř na každém webu. Použití formulářů: Použití formulářů: Blog Blog Uživatelské.
CSS a HTML 5. HTML 5 HTML5 je nová verze specifikace značkovacího jazyka HTML, která přináší podstatné změny v technologiích webových stránek. HTML5 umožňuje.
UŽITEČNÉ PROGRAMY – MŮJ PRVNÍ SKRIPT Spustíme více prográmků najednou. SPŠ Teplice - 3.V.
YMUSY1 Multimediální systémy 1 Cvičení 5 Formuláře a ovládací prvky.
Princip fungování pošty Vnitřní členění zpráv Protokoly
Ing. Lukáš Burkoň Debugging 2. Testování 3. Unit testy 2.
J a v a Začínáme programovat Lucie Žoltá. Odkazy - oficiální stránky (překladače, help, metody, vývojové prostředí NetBeans,...)
PHP a MySQL Připojení k databázi:
MySQL - Vytvoření nové tabulky  create table jméno_tabulky (jméno_položky typ_položky,... ) Přehled nejběžnějších datových typů Přehled nejběžnějších.
InfoPath Využití formulářů ve výuce zeměpisu. InfoPath Nadstavba k balíku MS Office Prostředí koresponduje s ostatními produkty Microsoftu. Program je.
Tvorba webových aplikací s Apache Maven Využití Mavenu pro efektivní vývoj Jety Pavel Jetenský
Gymnázium, Broumov, Hradební 218 Tematická oblast: Informační a komunikační technologie Číslo materiálu: EU Název: Elektronická pošta Autor: Mgr.
C# - Exceptions (výjimky)
PHP – Základy programování
Objektové programování
4IT445 – Testování a ladění v PHP Ing. Jan Mittner
ANOTACEPrezentace obsahuje informace o elektronické komunikaci, využití u. Druh učebního materiáluDUM Očekávané výstupy Žáci si vytvoří ovou.
MS ACCESS parametrický dotaz
Portlety Jan Krňoul, Jaroslav Vávře, 1.
MS ACCESS - FORMULÁŘE Databázové systémy.
Alg91 Textové soubory Na rozdíl od jiných typů souborů jsou textové soubory určené pro gramotné lidské oko. Textový soubor je posloupnost znaků členěná.
Návrh a tvorba WWW Cvičení 7 PHP & Oracle - Bezpečnost.
NÁZEV ŠKOLY: Základní škola Javorník, okres Jeseník REDIZO: NÁZEV: VY_32_INOVACE_385_Odeslání u AUTOR: Ivana Mikulenková ROČNÍK, DATUM:
Dílna Caché II. CSP pro pokročilé Tomáš Vaverka. Zdroje HTML Tag Reference v sekci Reference Material v dokumentaci Caché HTML Tag Reference v sekci Reference.
Návrh a tvorba WWW Přednáška 5 Úvod do jazyka PHP.
Databázové systémy I Cvičení č. 8 Fakulta elektrotechniky a informatiky Univerzita Pardubice 2013.
PHP Souhrnné cvičení Mgr. Josef Nožička IKT PHP
Metody geoinženýrství Ing. Miloš Cibulka, Ph.D. Brno, 2015 Cvičení č. 3 Vytvořeno s podporou projektu Průřezová inovace studijních programů Lesnické a.
PHP Vytváření formuláře.
Šesté cvičení Výjimky Balíky.
Vytvoření hypertextového odkazu
1 Počítače a programování 1 13.přednáška. 2 Obsah přednášky Vstupy a výstupy – 1.část.
Formuláře Formuláře uzavíráme do elementů Formuláře uzavíráme do elementů a a Tyto elementy jsou součástí jazyka XHTML, to znamená, že při použití v PHP.
Správní a dopravně správní evidence - IISSDE RNDr. Jiří Malátek Zástupce ředitele OIVS MV
Seminář
Vzdálená správa Tomáš Kalný.
VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ Zbyněk Šlajchrt Část 6.
VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ Zbyněk Šlajchrt 1 Část 12.
Registrace uživatele na pro užívání webhostingu.
VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ Zbyněk Šlajchrt Část 7.
VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ
JavaScript úvod. Jazyky webového vývojáře Dynamická stránka  aktivně mění svůj obsah v reakci na činnost uživatele  zpracování na straně serveru (PHP,
© Aastra Integrovaný DHCP server. © Aastra DHCP server DHCP server je určen pro distribuci IP adres a konfiguračních parametrů pro telefony.
VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ Zbyněk Šlajchrt Část 5.
Instalace Javy ( pro Windows )
Algoritmizace a programování
VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ
NÁZEV ŠKOLY: S0Š Net Office, spol. s r.o, Orlová Lutyně
Seminář 11 DHCP + HTTP + IPTABLES
Číslo projektu CZ.1.07/1.4.00/ Název sady materiálů
Výukový materiál zpracován v rámci projektu
VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ
VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ
Výukový materiál zpracován v rámci projektu
TNPW1 JavaScript Ing. Jiří Štěpánek.
Výukový materiál zpracován v rámci projektu
Kofigurace & napájení Windows
Alica Takácsová Lenka Marčišová
VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ
VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ
VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - PŘEDNÁŠKA
Elektronická pošta.
NÁZEV ŠKOLY: S0Š Net Office, spol. s r.o., Orlová-Lutyně
VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ
Transkript prezentace:

VÝVOJ PODNIKOVÝCH APLIKACÍ NA PLATFORMĚ JAVA - CVIČENÍ Zbyněk Šlajchrt http://java.vse.cz/4it447/HomePage Část 2.

Program Vývoj aplikace pro odesílání e-mailu Základní práce se servletem Zpracování parametrů z HTML formuláře Generování jednoduché odpovědi Řešení problémů z češtinou Seznámení s JavaMail API Konfigurace mail session na serveru Injektáž mail session Sestrojení a odeslání zprávy

Vygenerování aplikace Stáhněte si základ aplikace z http://java.vse.cz/4it447/Cviceni alternativně lze použít generátor aplikací v Mavenu z příkazové řádky mvn archetype:generate - DarchetypeCatalog=http://kitscm.vse.cz/maven/archetype -catalog.xml Aplikaci nazvěte emailClient Otevřete projekt v IDE

Servlet MailServlet Vytvořte třídu MailServlet Nastavte dědičnost z javax.servlet.http.HttpServlet Přeřiďte metodu doPost

Registrace servletu Otevřete soubor WEB-INF/web.xml Doplňte prvek deklarace servletu Doplňte prvek pro mapování servletu servlet bude mapován na cestu /sendMail

Formulář pro odesílání zprávy Vytvořte JSP stránku mailForm.jsp <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head><title>E-mail formulář</title></head> <body> <h1>Formulář pro email</h1> <form action="sendMail" method="post"> <label for="to">Komu:</label><br/> <input id="to" name="to" type="text"/><br/> <label for="subject">Předmět:</label><br/> <input id="subject" name="subject" type="text"/><br/> <label for="message">Zpráva:</label><br/> <textarea id="message" name="message" rows="20" cols="60"> </textarea><br/> <input type="submit" value="Odeslat"/> </form> </body> </html>

Uvítací stránka aplikace Ve WEB-INF/web.xml nastavte formulář jako uvítací stránku aplikace <welcome-file-list> <welcome-file>mailForm.jsp</welcome-file> </welcome-file-list>

Sestavení a nasazení mimo NetBeans Spusťte server Glassfish Otevřete administrátorskou konzoli http://localhost:4848 V menu vyberte položku Applications Nakonfigurujte novou aplikaci Tlačítko Deploy Změňte Location na Local Packaged File or Directory Vyberte adresář s rozbaleným archivem aplikace <pracovni_adr>/emailCient/target/emailClient

Spuštění aplikace Zadejte http://localhost:8080/emailClient/ nebo Launch v tabulce aplikací v Admin Consoli

Generování odpovědi servletem @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // nastavíme typ obsahu response.setContentType("text/plain"); // nastavíme znakovou sadu response.setCharacterEncoding("UTF-8"); // získáme writer pro zápis odpovědi PrintWriter output = response.getWriter(); // zápis odpovědi output.println("Email odeslán"); output.flush(); }

Zpracování parametrů v dotazu protected void doPost(HttpServletRequest request, @Override HttpServletResponse response) throws ServletException, IOException { response.setCharacterEncoding("UTF-8"); response.setContentType("text/plain"); PrintWriter output = response.getWriter(); // sdělíme kontejneru, v jakém kódování request.setCharacterEncoding("UTF-8"); // očekáváme data od klienta // metoda getParameter(paramName) vrací // hodnotu parametru String subject = request.getParameter("subject"); String to = request.getParameter("to"); String message = request.getParameter("message"); // zavoláme pomocnou metodu - zatím nedělá nic sendMail(to, subject, message); // Odpověď bude obsahovat resumé output.println("Email odeslán"); output.println("Komu:" + to); output.println("Zpráva:" + message); output.println("Předmět:" + subject); output.flush(); } private void sendMail(String to, String subject, String msg) {

Injektáž javax.mail.Session Vytvořte privátní pole mailSession javax.mail.Session javax.annotation.Resource Prozatím pouze vypište jeho textové vyjádření v resumé posílaném na klienta

Konfigurace JavaMail Session V administrátorské konzoli klikněte na Resources/JavaMail Sessions Klikněte na New Zadejte JNDI Name - mail/myMailSession Mail Host – adresa mail serveru Default User – závisí na mail serveru Default Return Address – vaše emailová adresa

Odeslání zprávy – část 1. private void sendMail(String to, String subject, String msg) throws ServletException { try { // Vytvoříme objekt zprávy Message message = new MimeMessage(mailSession); // Zatím nenastavujeme From, použije se default // z konfigurace serveru //message.setFrom(); message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to, false)); // Nastavíme předmět message.setSubject(subject); // Vložíme text zprávy message.setText(msg); // Nastavíme hlavičku indikující mailového klienta message.setHeader("X-Mailer", "My Mailer"); // Nastavíme datum odeslání Date timeStamp = new Date(); message.setSentDate(timeStamp); // Odešleme zprávu Transport.send(message); getServletContext().log("Mail sent to " + to + "."); } catch (MessagingException e) { throw new ServletException(e); }

Odeslání zprávy – část 2.

Domácí cvičení Nakonfigurovat mail session na Glassfish tak, aby se zprávy odesílaly přes GMail. Návod je na této adrese: http://spitballer.blogspot.com/2010/02/sending- email-via-glassfish-v3.html

Dodatek 1: Čeština v servletech Pro správné fungování češtiny v servletech je třeba provést toto: Nastavit objektu response správné kódování response.setContentType("text/html; charset=utf-8") nebo response.setCharacterEncoding("utf-8") Používat Writer, nikoliv OutputStream response.getWriter() Kompilovat servlety ve správném kódování Čteme-li parametry z dotazu, je třeba kontejneru sdělit, v jakém kódování je očekáváme. request.setCharacterEncoding("utf-8") Odpovídá kódování stránky, ze které byl dotaz odeslán.

Dodatek 2: Ladění Glassfish V administrátorské konzoli nastavit Configuration|JVM Settings|Debug = Enabled Nutný restart serveru V IntelliJ IDEA Select Run/Debug Configuration(kombo na horní liště)|Edit Configuration Add New Configuration (+)|Remote Port = 9009

Linky http://spitballer.blogspot.com/2010/02/sending-email- via-glassfish-v3.html http://kore.fi.muni.cz:5080/wiki/index.php/JavaServlets http://www.linuxzone.cz/index.phtml?idc=191&ids=2