IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

CORBA Discussion :

Intercepteurs portables avec VisiBroker 5.2


Sujet :

CORBA

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 5
    Points : 4
    Points
    4
    Par défaut Intercepteurs portables avec VisiBroker 5.2
    Bonjour,

    J'ai une application client/serveur et j'utilise des intercepteurs portables avec VisiBroker 5.2 pour véhiculer des informations contextuelles entre le serveur et le client. Il s'agit de ClientInterceptor côté client et ServerInterceptor côté serveur ainsi que leurs initialisateurs respectifs. Dans le cas nominal (client/serveur classique) tout se passe correctement.

    Mon application peut fonctionner en mode multi-JVMs (plusieurs instances de l'application qui peuvent être hétérogène, une des JVMs peut être à la fois client et serveur). Dans chaque JVM, j'ai une seule instance d'ORB. Dans le cas d'une JVM client et serveur, je suis obligé d'initialiser les deux intercepteurs. Chaque JVM s'enregistre auprès d'un service de noms et consulte ce service découvrir les JVMs voisines.

    C'est justement cette découverte des autres JVMs qui me cause problème. C'est un thread qui s'exécute à interval régulier et malheureusement plante à l'appel suivant:

    ORB orb = ORBSingleton.getInstance().getORB();
    org.omg.CORBA.Object rootAsObj = orb.resolve_initial_references("NameService");
    NamingContext = nctx = NamingContextHelper.narrow(rootAsObj);

    ArrayList jvmNameComponents = new ArrayList();
    BindingListHolder blh = new BindingListHolder();
    BindingIteratorHolder bih = new BindingIteratorHolder();

    nctx.list(20, blh, bih);

    La stacktrace est la suivante:

    java.lang.NullPointerException
    at org.omg.CORBA.OctetSequenceHelper.write(OctetSequenceHelper.java:31)
    at com.inprise.vbroker.IOP.ServiceContextHelper.write(ServiceContextHelper.java:35)
    at com.inprise.vbroker.IOP.ServiceContextListHelper.write(ServiceContextListHelper.java:38)
    at com.inprise.vbroker.GIOP.RequestMessage.init(RequestMessage.java:95)
    at com.inprise.vbroker.GIOP.RequestMessage.<init>(RequestMessage.java:42)
    at com.inprise.vbroker.GIOP.ProtocolConnector.createRequestMessage(ProtocolConnector.java:497)
    at com.inprise.vbroker.GIOP.ProtocolConnector.request(ProtocolConnector.java:348)
    at com.inprise.vbroker.interceptor.ChainClientInterceptorAdapter.request(ChainClientInterceptorAdapter.java:289)
    at com.inprise.vbroker.orb.DelegateImpl.request(DelegateImpl.java:629)
    at org.omg.CORBA.portable.ObjectImpl._request(ObjectImpl.java:431)
    at org.omg.CosNaming._NamingContextStub.list(ServerConnection.java:565)
    at com.axalto.simergy.api.ServerConnection.pollJvm(ServerConnection.java:358)
    at java.util.TimerThread.mainLoop(Timer.java:432)
    at java.util.TimerThread.run(Timer.java:382)

    Quelqu'un aurait-il une idée de l'origine du problème?

    Merci d'avance.

    Félicien[/i]

  2. #2
    Membre régulier
    Inscrit en
    Septembre 2004
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 66
    Points : 74
    Points
    74
    Par défaut
    peux tu nous dire ce que font tes intercepteurs exactement ?

    tu encryptes les requetes ?
    ton erreur est peut etre dans le code de tes interceptors ?
    (pour s en assurer , il suffit juste de les enlever et regarder)

    a+

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    Merci Franck_92,

    J'ai effectivement constaté une anomalie dans mon code. Dans la méthode reply(), je mettais une valeur null dans le ServiceContext, ce qui causait le NullPointerException. La difficulté à trouver le problème résidait dans le fait que l'erreur ne se produisait qu'à la deuxième exécution de cette partie de code.

    Bref, je n'ai plus de problème après la modif que j'ai faite.
    Une fois de plus merci pour ta réaction.

    Félicien

Discussions similaires

  1. JOnAS avec Visibroker
    Par Highbosseur dans le forum JOnAS
    Réponses: 2
    Dernier message: 05/06/2013, 23h17
  2. fichier portable avec java.io
    Par fanC++ dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 13/03/2008, 15h18
  3. Installer XP sur un portable avec un DD en SATA
    Par Loceka dans le forum Windows XP
    Réponses: 9
    Dernier message: 27/07/2007, 12h15
  4. Installation Debian sur portable avec Windows XP
    Par lodan dans le forum Debian
    Réponses: 7
    Dernier message: 15/07/2007, 08h11
  5. Réponses: 1
    Dernier message: 17/05/2004, 11h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo