+ Antworten
Ergebnis 1 bis 3 von 3

Thema: JavaEE & CDI in versch. projekten

  1. #1
    Premium User Halbes Megabyte Themenstarter
    Avatar von bygones
    Registriert seit
    17.07.2006
    Ort
    Dænemark
    Fachbeiträge
    572
    Genannt
    63 Post(s)
    Hi,

    ich habe folgendes Scenario:

    - Projekt base
    beinhaltet Schnittstellen und APi für die Webanwendung, so unter anderem
    Java Code:
    1.  
    2. public interface Greeter {
    3.   public String sayHi();
    4. }

    - Projekt integration:
    beinhaltet eine Service klasse ala
    Java Code:
    1.  
    2. import javax.enterprise.context.ApplicationScoped;
    3. import javax.inject.Inject;
    4. import javax.ws.rs.Consumes;
    5. import javax.ws.rs.POST;
    6. import javax.ws.rs.Path;
    7.  
    8. @Path("test")
    9. @ApplicationScoped
    10. public class TestService implements SomeService {
    11.     @Inject
    12.     private Greeter greeter;
    13.  
    14.     @GET
    15.     @Produces("text/plain")
    16.     @Path("greet")
    17.     public void greet() {
    18.         return greeter.sayHi();
    19.     }
    - Projekt server:
    ein einfacher server und die Greeterimplementierung

    Java Code:
    1.  
    2. public class Server {
    3.     public static final String BASE_URI = "http://localhost:9889/ts";
    4.  
    5.     public static void main(String[] args) throws IOException, URISyntaxException {
    6.         HttpServer server = startServer();
    7.         try {
    8.             System.out.println("Started " + BASE_URI);
    9.             System.out.println("Hit any key to terminate");
    10.             System.in.read();
    11.         }
    12.         finally {
    13.             server.shutdownNow();
    14.         }
    15.     }
    16.  
    17.     public static HttpServer startServer() {
    18.         Set<Class<?>> classes = loadServices(SomeService.class);
    19.         ResourceConfig rc = new ResourceConfig().registerClasses(classes);
    20.         return GrizzlyHttpServerFactory.createHttpServer(URI.create(BASE_URI), rc);
    21.     }
    22.  
    23.     private static <T> Set<Class<?>> loadServices(Class<T> clazz) {
    24.         ServiceLoader<T> loader = ServiceLoader.load(clazz);
    25.         return StreamSupport.stream(loader.spliterator(), false).map(Object::getClass).collect(Collectors.toSet());
    26.     }
    27. }
    Java Code:
    1.  
    2. public class MyGreeter implements Greeter {
    3.    public String sayHi() {
    4.       return "I say hi";
    5.    }
    6. }

    Wie kann ich diese nun zusammenbringen, so dass Greeter im Service injected wird mit der Implementierung im server projekt ?

    Das Serverprojekt hat alle anderen Projekte zur Runtime im classpath.

    Macht das Sinn ?
    Test Driven Development is like sex. If you dont like it, you probably aint doing it right

    You should never assume, because you make an ass of u and me

  2. #2
    User Viertel Megabyte Avatar von inv_zim
    Registriert seit
    31.07.2013
    Ort
    Rhein-Main Gebiet
    Fachbeiträge
    361
    Genannt
    31 Post(s)
    Ich glaube, du möchtest einen Producer verwenden, oder?

    https://docs.jboss.org/weld/referenc...ermethods.html
    I am obsessed with the ancient science of "puzzle-ometry". I have discovered that within puzzles lies the secret of human intelligence, that which separates us from the common beast.

  3. #3
    Premium User Halbes Megabyte Themenstarter
    Avatar von bygones
    Registriert seit
    17.07.2006
    Ort
    Dænemark
    Fachbeiträge
    572
    Genannt
    63 Post(s)
    danke für die Antwort - mittlerweile brauch ich das nicht mehr, verfolge das Projekt nicht mehr
    Test Driven Development is like sex. If you dont like it, you probably aint doing it right

    You should never assume, because you make an ass of u and me

+ Antworten Thema als "gelöst" markieren

Direkt antworten Direkt antworten

Eine Verkehrsampel hat drei Farben. Rot, gelb und ...

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. Senior JavaEE Entwickler/Architekt (m/w) - Daimler TSS
    Von Jens im Forum Angebote von Agenturen
    Antworten: 0
    Letzter Beitrag: 21.04.2015, 13:36
  2. Antworten: 0
    Letzter Beitrag: 27.11.2012, 01:03

Berechtigungen

  • Neue Themen erstellen: Ja
  • Themen beantworten: Ja
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •