IT rekvalifikácia. Seniorní programátori zarábajú až 6 000 €/mesiac a rekvalifikácia je prvým krokom. Zisti, ako na to!

Diskusia – 5. diel - Úvod do Context Dependency Injection (CDI)

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Avatar
Jirka Stejskal:25.2.2021 11:57

Máš na stránce chybu. pises :

Předtím, než vytvoříme novou třídu do našeho projektu, musíme vytvořit složku java/ ve složkách webapp/main/:

Ale tu složku máš v main/webapp.

Taky mi chybí popisek, jak to sakra mám debugovat?. Hodně by to pomohlo.

 
Odpovedať
25.2.2021 11:57
Avatar
Samuel Kodytek
Tvůrce
Avatar
Odpovedá na Jirka Stejskal
Samuel Kodytek:3.3.2021 10:45

Cesta byla opravena :), děkuji za poznámku.

Jaký popisek? K čemu? asi potřebuji víc infa.

Odpovedať
3.3.2021 10:45
There is more than one way to screw it
Avatar
Lukáš
Člen
Avatar
Lukáš:16.10.2021 20:40

Našel jsem takový problém, nicméně s int mi to funguje:

public int getCislo()

Možná si říkáte, proč metoda getCislo() vrací String?

 
Odpovedať
16.10.2021 20:40
Avatar
Vaclav Pieter:13.3.2022 21:17

Dobrý den,
Nemohu se dostat přes @RequestScoped(), mám pocit, jako by to již nebylo v mavenu k nalezeni. Prosím o radu děkuji.

 
Odpovedať
13.3.2022 21:17
Avatar
Josef Šrámek:25.4.2022 21:09

Ahoj. Podobně jako kolega v předchozím příspěvku mám problém s použitím anotace @RequestScoped. Když rozkliknu chybovou žárovičku a zvolím volbu Search Dependency at Maven Repositories for RequestScoped, tak už mi to dál nepustí.

Balíček tříd je: javax.enterpri­se.context.Re­questScoped

Problém bude asi v balíčku tříd. Zjistil jsem, že balíček javax u mne vůbec neobsahuje balíček enterprise, (mám JDK17).

Vypadá to, že tato knihovna už není podporovaná. Ale přitom projekt této lekce, který je možno stáhnout, funguje tak jak má.

Můžete mi prosím někdo poradit? Předem děkuji.

 
Odpovedať
25.4.2022 21:09
Avatar
Josef Šrámek:26.4.2022 20:56

Už jsem na to přišel. Nejdříve je nutné ještě před spuštěním NetBeansu pro jistotu zkontrolovat soubor pom.xml, jestli obsahuje příslušný kód (podle lekce 4) spustit aplikační server, stažení závislostí, nasazení na serveru vše dle lekce 4. Pak postupovat dle návodu z lekce 5 a neměl by být problém. Akorát, pokud by to přes tu žárovičku dle návodu nešlo, tak tam normálně naimportujte příslušné balíčky tříd a je to. Přeji hezký den.

 
Odpovedať
26.4.2022 20:56
Avatar
Pavel Kvasnička:15. marca 11:54

Ahoj, nedaří se rozchodit, dostal jsem se do stavu, kdy jede server, deplojnu v pohodě, ale za jakékoliv kombinace se mi nezobrazí generované číslo, po 3 hodinách různého zkoušení, hledání jak fungují EL výrazy atd. to vzdávám a ptám se zde. Kde je problém?

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://xmlns.jcp.org/jsf/html">
    <h:head>
        <title>Facelet Title</title>
    </h:head>
    <h:body>
        <h1>Náhodné číslo</h1>
        <p style="font-size: 2em;">
            #{GeneratorBean.getCislo}
        </p>
    </h:body>
</html>
<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
    <display-name>Archetype Created Web Application</display-name>
    <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <!-- This is important -->
        <servlet-class>jakarta.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <!-- This is important -->
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>index.xhtml</url-pattern>
    </servlet-mapping>
</web-app>
package beans;

import java.util.Random;
import javax.enterprise.context.RequestScoped;
import javax.inject.Named;

@Named()
@RequestScoped()
public class GeneratorBean {

    private Random generator = new Random();

    public int getCislo() {
        return generator.nextInt(100);
    }
}
<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>12</groupId>
    <artifactId>JSFNahodneCislo</artifactId>
    <version>02</version>
    <packaging>war</packaging>

    <name>JSFNahodneCislo Maven Webapp</name>
    <url>http://www.example.com</url>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
    </properties>

    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>javax</groupId>
            <artifactId>javaee-api</artifactId>
            <version>8.0.1</version>
            <type>jar</type>
        </dependency>
    </dependencies>

    <build>
        <finalName>JSFNahodneCislo</finalName>
        <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
            <plugins>
                <plugin>
                    <artifactId>maven-clean-plugin</artifactId>
                    <version>3.1.0</version>
                </plugin>
                <!-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging -->
                <plugin>
                    <artifactId>maven-resources-plugin</artifactId>
                    <version>3.0.2</version>
                </plugin>
                <plugin>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.8.0</version>
                </plugin>
                <plugin>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.22.1</version>
                </plugin>
                <plugin>
                    <artifactId>maven-war-plugin</artifactId>
                    <version>3.2.2</version>
                </plugin>
                <plugin>
                    <artifactId>maven-install-plugin</artifactId>
                    <version>2.5.2</version>
                </plugin>
                <plugin>
                    <artifactId>maven-deploy-plugin</artifactId>
                    <version>2.8.2</version>
                </plugin>
                <plugin>
                    <groupId>org.wildfly.plugins</groupId>
                    <artifactId>wildfly-maven-plugin</artifactId>
                    <version>4.2.2.Final</version>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>
</project>
Odpovedať
15. marca 11:54
Good people are constantly working on themselves.
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zatiaľ nikto nevložil komentár - buď prvý!