Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
996 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Axis Fault exception

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Axis Fault exception

n°1509259
amitabacha​2004
Posté le 31-01-2007 à 18:15:17  profilanswer
 

Bonjour tout le monde,
 
Je me casse la tête ces derniers jours pour faire marcher les fault exceptions sous Axis/Java.
Mon problème est le suivant:
   Dans une methode proposée par un web service, j'ai fait un throw sur une exception personnalisée. Voici un extrait de code utilisé:
    public void testMethod() throws java.rmi.RemoteException, MyException, {
     throw new MyException("message",1);
    }
 
  L'exeption MyException est un JavaBean défini dans le WSDL du web service en question.
 
Côté client, quand j'essaie d'appeler le web service pour consomer la methode testMethod, j'obtiens un jolie message d'erreur qui est:
 
 
HTTP/1.1 500 Erreur Interne de Servlet
 
Content-Type: text/html;charset=utf-8
 
Content-Length: 3169
 
Date: Wed, 31 Jan 2007 15:55:45 GMT
 
Server: Apache-Coyote/1.1
 
Connection: close
 
 
 
<html><head><title>Apache Tomcat/5.0.30 - Rapport d'erreur</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>Etat HTTP 500 - </h1><HR size="1" noshade="noshade"><p><b>type</b> Rapport d'exception</p><p><b>message</b> <u></u></p><p><b>description</b> <u>Le serveur a rencontré une erreur interne () qui l'a empêché de satisfaire la requête.</u></p><p><b>exception</b> <pre>javax.servlet.ServletException
 org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:290)
 org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:161)
</pre></p><p><b>cause mère</b> <pre>java.lang.IncompatibleClassChangeError
 MyException.writeDetails(MyException.java:129)
 org.apache.axis.message.SOAPFault.outputImpl(SOAPFault.java:165)
 org.apache.axis.message.MessageElement.output(MessageElement.java:1207)
 org.apache.axis.message.SOAPBody.outputImpl(SOAPBody.java:141)
 org.apache.axis.message.SOAPEnvelope.outputImpl(SOAPEnvelope.java:485)
 org.apache.axis.message.MessageElement.output(MessageElement.java:1207)
 org.apache.axis.AxisFault.output(AxisFault.java:755)
 org.apache.axis.SOAPPart.writeTo(SOAPPart.java:280)
 org.apache.axis.SOAPPart.writeTo(SOAPPart.java:266)
 org.apache.axis.SOAPPart.saveChanges(SOAPPart.java:484)
 org.apache.axis.attachments.AttachmentsImpl.getAttachmentCount(AttachmentsImpl.java:519)
 org.apache.axis.Message.getContentType(Message.java:475)
 org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:765)
 javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
 org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
 javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
 java.lang.reflect.Method.invoke(Method.java:324)
 org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:243)
 java.security.AccessController.doPrivileged(Native Method)
 javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
 org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:272)
 org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:161)
 
Quelqu'un aurait une idée sur la source de ce problème? Quelqu'un aurait déjà utilisé les fault exception sous axis?
Merci pour votre retour.

mood
Publicité
Posté le 31-01-2007 à 18:15:17  profilanswer
 

n°1509403
the real m​oins moins
Posté le 01-02-2007 à 02:08:33  profilanswer
 

je suppose que tu as vu que le noeud du problème était une java.lang.IncompatibleClassChangeError  et que tu t'es renseigné sur ce que c'était ?

n°1509438
amitabacha​2004
Posté le 01-02-2007 à 09:42:49  profilanswer
 

D'après le message d'erreur, ca vient effectivement de java.lang.IncompatibleClassChangeError. Cette exception est levée quand on essaie de modifier une classe (dans mon cas il s'agit de la classe MyException) de la mauvaise façon. Mais pour moi l'utilisation de MyException (voir throw new MyException("message",1); dans le code java) est correcte. J'ajoute que MyException est JavaBean avec deux attributs: un string et un entier et le constructeur MyException(String,int) est bien présent dans l'implementation de MyException.

n°1509534
moi23372
Posté le 01-02-2007 à 12:16:43  profilanswer
 

tu ne peux pas hériter de la classe d'exception  
java.rmi.RemoteException
 
c'est tout simplement interdit dans les WS en JAVA d'après ce que j'en ai lu l'an passé.

n°1509537
amitabacha​2004
Posté le 01-02-2007 à 12:24:38  profilanswer
 

le prototype de la methode testMethod est généré automatiquement par Axis. Ce que j'ai fait moi c'est d'implementer la methode en question.
 
L'héritage de la classe java.rmi.RemoteException est possible. J'en ai dejà utilisé dans les WS.
Mon problème vient spécialement de l'utilisation de l'exception:
     throw new MyException("message",1);


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Axis Fault exception

 

Sujets relatifs
AXIS : peut-on streamer un résultat ?Expliquez moi les "Handler Exception"
[TomCat/Axis] Problème avec les types complexesSegmentation Fault
[Batch] Créer une exception pour la commande DELaxis & wsdl
[Axis+SOAP] passer des paramètresThreading et exception?
Problème Axis/Java/Web ServicesPb exception qui agassent!
Plus de sujets relatifs à : Axis Fault exception


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR