|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Apr 2004
Messaggi: 364
|
[J2ee] Chiamata client EJB
Salve ragazzi, ho fatto un piccolo esempio di un semplice modulo ejb che gira sotto jboss, ora sto cercando come invocare la classe remota, che è all'interno del modulo ejb, con il codice seguente:
Codice:
String jndiURL = "http://localhost:8080/";
String jndiFactory = "com.ibm.websphere.naming.WsnInitialContextFactory";
java.util.Hashtable properties = new java.util.Hashtable(2);
properties.put(Context.PROVIDER_URL, jndiURL);
properties.put(Context.INITIAL_CONTEXT_FACTORY, jndiFactory);
InitialContext lIC = new InitialContext(properties);
ConversioneHome home = (ConversioneHome) PortableRemoteObject.narrow(lIC.lookup("ejb/test/ConversioneHome"));
Conversione conversione = (Conversione) home.create();
|
|
|
|
|
|
#2 |
|
Member
Iscritto dal: Jan 2006
Messaggi: 72
|
Ti riporto la soluzione di un problema simile...
... java.util.Properties prop = new java.util.Properties(); prop.put(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory"); prop.put(Context.URL_PKG_PREFIXES, "org.jnp.interfaces"); prop.put(Context.PROVIDER_URL, "localhost"); Context ctx = new InitialContext(prop); Object obj = ctx.lookup("Prenotazione"); PrenotazioneHome home = (PrenotazioneHome) javax.rmi.PortableRemoteObject. narrow(obj, PrenotazioneHome.class); refPrenBin = home.create(); ... se vuoi via pm ti passo il link al sito del mio Prof. che ha parecchie dispense, guide ed esempi di questo tipo. Ultima modifica di axlaxl : 29-09-2007 alle 16:14. |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Apr 2004
Messaggi: 364
|
Ti ringrazio per l'aiuto, cmq il problema che ancora ho, è che viene segnalato un errore in compilazione della classe client, perchè la classa remota ejb, non viene trovata. Comunque, se hai esempi a riguardo gli accetto volentieri, grazie
|
|
|
|
|
|
#4 |
|
Member
Iscritto dal: Jan 2006
Messaggi: 72
|
usi jboss?
se si allora devi compilare da cmd con javac -classpath ".;jbossall-client.jar" *.java e far partire il programmino con java -classpath ".;jbossall-client.jar" NomeClasseColMetodoMain nota il file jbossall-client.jar lo trovi nella cartella di jboss ma non mi ricordo in che directory e per compilare cosi lo devi copiare nella stessa cartella dei file java altrimenti puoi sempre settare la variabile di classpath da proprietà del sistema o ancora inserirla tra le opzioni dell' editor che usi Ultima modifica di axlaxl : 29-09-2007 alle 16:26. |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Apr 2004
Messaggi: 364
|
Ok proverò, cmq se puoi inviami gli esempi che hai, grazie
Ultima modifica di GiulioCesare : 29-09-2007 alle 16:32. |
|
|
|
|
|
#6 |
|
Member
Iscritto dal: Jan 2006
Messaggi: 72
|
vedi pm ti ho mandato il link.
comunque ti conviene compilare ed eseguire da linea di comando con le istruzioni che ti ho detto prima, ovviamente per fare così devi settare la variabile d' ambiente di java nel classpath, l' errore ti viene dato perche il compilatore di java non trova il package che contiene le classi ejb che non son contenute nel sdk ma in jboss nel tuo caso, per ovviare devi appunto dare il percorso del jar, per comodità ti conviene copiare il jar nella stessa directory del tuo progetto. |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 10:21.



















