abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 01:11 | Nová verze

    Po půl roce vývoje od vydání verze 48 bylo vydáno GNOME 49 s kódovým názvem Brescia (Mastodon). S přehrávačem videí Showtime místo Totemu a prohlížečem dokumentů Papers místo Evince. Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    včera 16:22 | Nová verze

    Open source softwarový stack ROCm (Wikipedie) pro vývoj AI a HPC na GPU od AMD byl vydán ve verzi 7.0.0. Přidána byla podpora AMD Instinct MI355X a MI350X.

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | Nová verze

    Byla vydána nová verze 258 správce systému a služeb systemd (GitHub).

    Ladislav Hagara | Komentářů: 5
    včera 15:11 | Nová verze

    Byla vydána Java 25 / JDK 25. Nových vlastností (JEP - JDK Enhancement Proposal) je 18. Jedná se o LTS verzi.

    Ladislav Hagara | Komentářů: 0
    včera 14:44 | Humor

    Věra Pohlová před 26 lety: „Tyhle aféry každého jenom otravují. Já bych všechny ty internety a počítače zakázala“. Jde o odpověď na anketní otázku deníku Metro vydaného 17. září 1999 na téma zneužití údajů o sporožirových účtech klientů České spořitelny.

    Ladislav Hagara | Komentářů: 4
    včera 11:33 | Zajímavý článek Ladislav Hagara | Komentářů: 0
    16.9. 21:44 | Nová verze

    Byl vydán Mozilla Firefox 143.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Nově se Firefox při ukončování anonymního režimu zeptá, zda chcete smazat stažené soubory. Dialog pro povolení přístupu ke kameře zobrazuje náhled. Obzvláště užitečné při přepínání mezi více kamerami. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 143 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    16.9. 17:22 | Nová verze

    Byla vydána betaverze Fedora Linuxu 43 (ChangeSet), tj. poslední zastávka před vydáním finální verze, která je naplánována na úterý 21. října.

    Ladislav Hagara | Komentářů: 0
    16.9. 12:22 | Nová verze

    Multiplatformní emulátor terminálu Ghostty byl vydán ve verzi 1.2 (𝕏, Mastodon). Přehled novinek, vylepšení a nových efektů v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    16.9. 00:11 | Nová verze

    Byla vydána nová verze 4.5 (𝕏, Bluesky, Mastodon) multiplatformního open source herního enginu Godot (Wikipedie, GitHub). Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (47%)
     (53%)
     (0%)
     (7%)
     (13%)
     (7%)
     (20%)
     (7%)
     (13%)
    Celkem 15 hlasů
     Komentářů: 1, poslední včera 13:49
    Rozcestník

    Dotaz: JAVA - propojeni servletu s .JSP

    tomes.io avatar 21.4.2013 21:39 tomes.io | skóre: 12 | blog: tomesh
    JAVA - propojeni servletu s .JSP
    Přečteno: 454×
    Ahoj,

    potrebuju propojit java servlet s JSP souborem. jedna se o formular ,ktery vytvari novou entitu a ja potrebuju dostat data z formulare co uzivatel vlozi do servletu.

    v servletu mam metodu addContact a provadim ji v doGet i v doPost

    Domnivam se, ze problem bude zrejme v nastaveni cesty v jsp souboru. zkousel jsem treba

    <form action="/jmenoServletu/urlPatternServletu" method="post"> ale pri vykonavani metody addContact se nenacetla data z formulare proste se mi to nepropoji... proste potrebuju propojit jsp formular se sevletem a nevim presne co mam napsat do action="????"

    Servlet nejprve vypise seznam entit v db a pak se zobrazi formular pro vytvoreni noveho kontaktu.

    Budu rad za kazde nakopnuti

    Servlet:
    
    @WebServlet(name = "AddressBookServlet", urlPatterns = {"/do"})
    
    public class AddressBookServlet extends HttpServlet {
    
        private GroupManagerImpl groupManager = new GroupManagerImpl();
        private ContactManagerImpl contactManager = new ContactManagerImpl();
       
        @Resource(name = "jdbc/AddressBookManagerWeb")
        private void setDataSource(DataSource dataSource) {
            groupManager.setDataSource(dataSource);
            contactManager.setDataSource(dataSource);
            
        }
    
        protected void processRequest(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            response.setContentType("text/html;charset=UTF-8");
    
            List<Group> groups = groupManager.getAllGroups();
            request.setAttribute("groups", groups);
            List<Contact> contact = contactManager.getAllContacts();
            request.setAttribute("contacts", contact);
            request.getRequestDispatcher("/list.jsp").forward(request, response);
            
        }
        
        protected void addContact(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
            
            
    
                    String name = request.getParameter("name");
                    String surname = request.getParameter("surname");
                    String phoneNumber = request.getParameter("phonenumber");
                    String email = request.getParameter("email");
    
                    //zpracování dat - vytvoření záznamu v databázi
                    try {
                        Contact contact = new Contact();
                        contact.setName(name);
                        contact.setSurname(surname);
                        contact.setPhoneNumber(phoneNumber);
                        contact.setEmail(email);
                        
                        contactManager.createContact(contact);
                        
                    } catch (Exception e) {
                        response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e.getMessage());
                        
                    }
                
            
        }
           
    
     
        @Override
        protected void doGet(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            processRequest(request, response);
            addContact(request, response);
        }
    
       
        @Override
        protected void doPost(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            processRequest(request, response);
            addContact(request, response);
        }
    
      
        @Override
        public String getServletInfo() {
            return "Short description";
        }
    }
    Inicializace formulare v jsp souboru. Nejsem s to sem dat celu obsah kvuli tagum, formular mi porad hazi same chyby typu:
    Značky PRE a TH jsou překříženy!
    atd... proste nasleduje klasicky formular pro zadavani parametru
            
    
    
    <form action="/servlet/do" method="post">
    <table>
            <tr>
                Name:
                <td><input type="text" name="name" value="<c:out value='${param.name}'/>"/>TD tag
         
    </form>
    

    Řešení dotazu:


    Odpovědi

    Luboš Doležel (Doli) avatar 22.4.2013 10:31 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: JAVA - propojeni servletu s .JSP
    No, musíte tam dát URL, kam jste ten servlet namapoval. Takže kontext (prefix celé aplikace) + vlastní URL servletu (vidím tam "/do").
    tomes.io avatar 22.4.2013 21:30 tomes.io | skóre: 12 | blog: tomesh
    Rozbalit Rozbalit vše Re: JAVA - propojeni servletu s .JSP
    Diky, to pomohlo.

    Rad bych se jeste zeptal, jak vicekrat pouzit tentyz parametr z JSP. Jednou ho totiz do servletu dostanu podruhe ne.

    JSP:
     <c:forEach items="${contacts}" var="contact" varStatus="loopStatus">
                 <tr class="${loopStatus.index % 2 == 0 ? 'odd' : 'even'}">
                     <td> <c:out value="${contact.name}"/</td>
                     <td><c:out value="${contact.surname}"/</td>
                     <td><c:out value="${contact.phoneNumber}"/></td>
                     <td><c:out value="${contact.email}"/></td>       
                    
                     <td>
                         <form action="<c:url value="/DeleteContact"/>" method="post">
                            <input type="hidden" id="id" value="${contact.id}" name="id"/>
                            <p><input type="Submit" value="Delete contact" name="submit"/></p>
                        </form>
                            
                        <form action=" <c:url value="/UpdateContact"/>" method="post">
                             <input type="hidden" value="${contact.id}" name="id"/>
                             <p> <a href=" <c:url value="/UpdateContact"/>">Update Contact</a></p>
                        </form>        
                     </td>
                 </tr>
                                
            </c:forEach>
    
    Ja potrebuju do servletu dostat parametr
    id
    Ta nacte ID prislusne entity, takze kdyz chci smazat Contact, tak se mi t odari, v prislusne metode servletu mam:
    Long id = Long.valueOf(request.getParameter("id"));
    Jenze pro
    /Update Contact
    se mi id nepodari dostat. Vraci null. Ten UpdateContact presmerovava na formulat, ktery nacita nova data, ktera budou updatovat atributy entity Contact. V servletove metode pro Update pouzovam tutez metodu pro ziskani ID jako v metode pro delete:
    Long id = Long.valueOf(request.getParameter("id"));
    Jde mi o to, abych mel u kazde entity tlacitko na DELETE nebo UPDATE. Ale pro update se mi z nejakeho duvodu nedari ziskat to ID. Nevedel by nekdo proc?
    tomes.io avatar 23.4.2013 08:21 tomes.io | skóre: 12 | blog: tomesh
    Rozbalit Rozbalit vše Re: JAVA - propojeni servletu s .JSP
    Tak jsem zjistil, ze problem je v
    href
    tagu:
    http://stackoverflow.com/questions/11913609/hidden-input-in-jsp-produces-null-when-passing-it-to-the-servlet
    A melo by se pouzit submit (tak, jak to mam pro DELETE). Jenze jak to v JSP napsat tak, aby se po kliknuti na SUBMIT do servletu nacetl hidden parametr a zobrazila se stranka s formularem, kam uzivatel vyplni udaje k updatu? Potreboval bych to ze SUBMIT presmerovat na muj .jsp soubor kde je formular pro update.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.