Frage

Gibt es eine Anleitung über einen JNDI Service Provider Schreiben und die Objekte und Methoden aus einem anderen Projekt Zugriff auf es Schritt für Schritt. Es gibt einige Informationen über einen Dienstleister Gebäude, aber es ist nicht einfach zu implementieren.

Danke.

War es hilfreich?

Lösung 2

gelöst Jetzt habe ich mein Problem mit Anmerkungen und globaler Verwendung von Initial Klasse. Stateless Annotation und ejb-jar XML-Dateien und den Zugriff auf die globalen jndi Adressen der Schlüssel für die Nutzung.

Zugangscode:

this.jndiAddress="ejb/service/IMyInterface";
Context context = new InitialContext();
IMyInterface object = (IMyInterface) context.lookup(this.jndiAddress);
object.doSomething();

Service-Code;

IMyInterface.java:

public interface IMyInterface {

    void doSomething();

}

MyClass.java:

@Remote(IMyInterface.class)
@Stateless(mappedName="ejb/service/IMyInterface")
public class MyClass implements IMyInterface {

    @EJB
    private IMyUserDao userDao;

    @Override
    public void doSomething() {
        User user = userDao.get(1);
        System.out.println(user.getName());
    }

}

ejb-jar.xml;

<?xml version="1.0" encoding="UTF-8"?>
<ejb-jar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:ejb="http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd" version="3.0">
    <display-name>Service</display-name>
    <enterprise-beans>
        <session>
            <ejb-name>MyClass</ejb-name>
            <ejb-class>package.MyClass</ejb-class>
        </session>
        <session>
            <ejb-name>UserDao</ejb-name>
            <ejb-class>package.dao.UserDao</ejb-class>
        </session>
    </enterprise-beans>
</ejb-jar>

Andere Tipps

folgte ich den JNDI Tutorial Online mir zu helfen, was ich brauchte. Es ist ein bisschen alt suchen (und geschrieben für JDK 1.4.2), aber immer noch anwendbar. Sun / Oracle JNDI Tutorial.

FWIW, wenn jemand will, eine benutzerdefinierte JNDI Ressource in Tomcat haben überprüfen ihre JNDI Tutorial .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top