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

Langage Java Discussion :

Acceder methode protected


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2005
    Messages
    58
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 58
    Par défaut Acceder methode protected
    Bonjour a tous,

    j'utilise pour mon boulot un jar ou j'appelle certaines methode public.
    Hors, en changeant de version, certaines methode public du jar que j'appelais sont passée en protected
    Donc impossible de compiler vu que je ne suis pas dans son package. Et impossible de passer par un chemin detourné

    On m'a dit qu'il etait possible de bidouiller un fichier policy pour faire croire a la classe qu'elle a le droit d'appeler cette methode protected.
    Je sais que c'est pas top, mais mon chef prefere ca a recopier les classes du jar.

    Vous auriez un peu plus d'informations dessus ?

    merci
    mike

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    on t'as raconté des cracks

    le fichier policy permet de déterminer ce que peux faire une application, pas de changer les regles de base du language. Par exemple, tu pourra, dans le fichier policy, autoriser ou non ton application a accéder aux méthodes protected par reflection, via l'appel à setAccessible(true) sur l'objet Method obtenu.
    Si les api publiques sont devenues protégée, il faudra soit réécrire du code, soit ne pas faire d'upgrade du jar.

  3. #3
    Membre averti
    Inscrit en
    Mars 2005
    Messages
    58
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 58
    Par défaut
    erf..
    merci de ta reponse

    tu entends par quoi avec "par reflection" ?
    une methode qui doit etre dans le jar ?

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482

  5. #5
    Membre averti
    Inscrit en
    Mars 2005
    Messages
    58
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 58
    Par défaut
    Merci pour les infos !

    je suis en train d'essayer de passer par la reflexivité et avec le setAccessible(true) et ca a l'air de fonctionner !

    Merci !

  6. #6
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    si tu dois faire ca partout, t'es pas sorti de l'auberge. La reflexivité c'est bon quand tu veux y aller à l'aveugle. Je connais pas ton code, mais dans ton cas tu devrais peut etre plutot envisager d'étendre la classe concernée pour faire repasser ses méthodes en public. N'oublie pas que les fils d'une classe on accès aux méthodes protégées, pas seulement le package.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. impossible acceder methodes timepicker
    Par Mephista dans le forum Android
    Réponses: 0
    Dernier message: 30/01/2012, 11h59
  2. [Tests] Test unitaire d'une méthode protected
    Par moukit233 dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 27/09/2010, 00h43
  3. Acceder a la methode protected SetBounds
    Par olibara dans le forum Windows Forms
    Réponses: 1
    Dernier message: 01/05/2010, 17h53
  4. [unit test] methode protected / private
    Par ZaaN dans le forum C#
    Réponses: 2
    Dernier message: 10/03/2008, 16h10

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