Bonjour,

J'essaie depuis une procédure stockée (Oracle 10g) de consommer un service web. Je souhaite générer par la même occasion les stubs depuis le fichier wsdl. Je ne comprends l'erreur qui m'est retournée au moment de la création du service.

Voici mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
CREATE OR REPLACE FUNCTION get_response (p_var1 IN  VARCHAR2, p_var2  IN  VARCHAR2, p_var3  IN  VARCHAR2, p_var4  IN  VARCHAR2)
  RETURN VARCHAR2
AS
  l_service  UTL_DBWS.SERVICE;
  l_call     UTL_DBWS.call;
  l_result   ANYDATA;
  
  l_wsdl_url         VARCHAR2(32767);
  l_wsdl_uri		 URITYPE;
  l_namespace        VARCHAR2(32767);
  l_service_qname    UTL_DBWS.qname;
  l_port_qname       UTL_DBWS.qname;
  l_operation_qname  UTL_DBWS.qname;
  l_input_params     UTL_DBWS.anydata_list;
BEGIN
  l_wsdl_url        := 'http://localhost:8080/axis2/services/Version?wsdl';
  l_namespace       := 'http://version.com';

  UTL_HTTP.set_proxy('proxy:3028', NULL);
  UTL_HTTP.set_persistent_conn_support(TRUE);
  
  l_service_qname   := UTL_DBWS.to_qname(null, 'myServiceName');
  l_port_qname      := UTL_DBWS.to_qname(null, 'myPortName');
  l_operation_qname := UTL_DBWS.to_qname(null, 'myOperationName');
  
  l_wsdl_uri := URIFACTORY.getURI(l_wsdl_url);
          
  l_service := UTL_DBWS.create_service (l_wsdl_uri, l_service_qname);

....

END;
L'erreur suivante m'est retourné :

ORA-29532: appel Java arrêté par une exception Java non interceptée : java.lang.IllegalAccessException: java.lang.NoClassDefFoundError
ORA-06512: à "USER_SA.UTL_DBWS", ligne 193
ORA-06512: à "USER_SA.UTL_DBWS", ligne 190
ORA-06512: à "USER_SA.GET_RESPONSE", ligne 28
ORA-06512: à ligne 14




J'ai pensé à charger les fichiers dbwclient.jar et dbwsa.jar
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
loadjava -user USER_SA/USER_SA@BDD -r -v -f -s -grant public -genmissing dbwsclient.jar dbwsa.jar
Quelqu'un peut il m'aider sur ce point ... ??

Merci à vous !!