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

Développement Web en Java Discussion :

remplir une table apartir d'un edit


Sujet :

Développement Web en Java

  1. #1
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    134
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 134
    Par défaut remplir une table apartir d'un edit
    bonjour , je suis sur jdevelopper 11g ilya un template edit ,des service , et sur oracle xe plusieurs bdd des trigger des fonctions soap.

    donc voila en ajoutant une donnée a partir du template edit la table naissance n'est pas remplir , il faut UE LE TRIGGER SE DECLENCHE AVANT l'insertion pour obtenir l'url de la commune du pere grace au service web donc voila un bout de code :

    Table naissance
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    NAISSANCEID	VARCHAR2(100)	
    NOM	VARCHAR2(40)		-
    PRENOM	VARCHAR2(100)	
    ADDRID	VARCHAR2(40)	
    COMMUNEID	VARCHAR2(5)

    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
    34
    35
    36
    37
    38
     
    CREATE OR REPLACE TRIGGER  "NAISSANCE_INSERT" BEFORE INSERT ON NAISSANCE 
    FOR EACH ROW 
     
    DECLARE 
    NAISSANCEID VARCHAR2(35); 
    COMM varchar2(5); 
    resp XMLType; 
    response varchar2(30000); 
    URL_WILAYA varchar2(100); 
    URL VARCHAR2(100); 
    NOM VARCHAR2(100); 
    DATNAIS_EXCEP EXCEPTION; 
    COMMUNE_INEXIT_EXCEP EXCEPTION; 
     
    ADDRESS_EXCEP EXCEPTION; 
    BEGIN 
    dbms_output.put_line('1'); 
    :NEW.COMMUNEID := '27000'; 
    SELECT NAISSANCE_SEQ.NEXTVAL INTO NAISSANCEID FROM DUAL; 
    :NEW.NAISSANCEID := :NEW.COMMUNEID||NAISSANCEID; 
     
    COMM := SUBSTR(:NEW.ID_PERE,1,5); 
    URL_WILAYA:='127.0.0.1:7101'; 
    response := get_commune(COMM, URL_WILAYA); 
     
    resp:= XMLType.createXML(response);  
     
    resp:= resp.extract('/url/text()'); 
     
    URL:=resp.getStringVal(); 
     
    DBMS_OUTPUT.PUT_LINE('url pere is : '||URL);  
     
    if URL is null then raise COMMUNE_INEXIT_EXCEP; 
    end if; 
    EXCEPTION 
    WHEN COMMUNE_INEXIT_EXCEP THEN RAISE_APPLICATION_ERROR(-20501,'Erreur : COMMUNE   ' ||TO_CHAR(:NEW.COMMUNEID)||'  inexistants'||'verifier aussi le deces id '||TO_CHAR(:NEW.NAISSANCEID));
    function get_commune :

    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
     
    create or replace function get_commune(id in varchar2, url in varchar2) return 
    varchar2 as soap_request varchar2(30000);
     soap_respond varchar2(30000);
     http_req utl_http.req; 
    http_resp utl_http.resp;
     resp XMLType;
     begin soap_request:= '<?xml version = "1.0" encoding = "UTF-8"?> <env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:ns1="http://wilaya/"> 
    <env:Header/>
     <env:Body>
     <ns1:getCommuneFindById> 
    <arg0>'||id||'</arg0>
     </ns1:getCommuneFindById>
     </env:Body> 
    </env:Envelope> ';
     http_req:= utl_http.begin_request ( 'http://'||url||'/wilaya-wilaya-webapp/wilayaWS' , 'POST' , 'HTTP/1.1' );
     utl_http.set_header(http_req, 'Content-Type', 'application/soap+xml'); utl_http.set_header(http_req, 'Content-Length', length(soap_request)); utl_http.set_header(http_req, 'SOAPAction', ''); utl_http.write_text(http_req, soap_request);
     -- DBMS_OUTPUT.PUT_LINE ('request is : '||soap_request); http_resp:= utl_http.get_response(http_req);
     utl_http.read_text(http_resp, soap_respond); utl_http.end_response(http_resp); resp:= XMLType.createXML(soap_respond);
     -- DBMS_OUTPUT.PUT_LINE ('commune is : '||soap_respond); resp:= resp.extract('//ns2:getCommuneFindByIdResponse/return' , 'xmlns:ns2="http://wilaya/"' ); 
    -- dbms_output.put_line('commune : '||resp.getStringVal()); 
    return resp.getStringVal();
    end;
    public Commune getCommuneFindById:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
      /** <code>select o from Commune o where o.communeid like :id</code> */
        public Commune getCommuneFindById(String id) {
            return (Commune)em.createNamedQuery("Commune.findById").setParameter("id", id).getSingleResult();
        }
    je test tout les service web jelance le template j'inser je click sur envoyais et rien n'est declenché ni émit
    quelqu'un pourrait m'aidez svp merci

  2. #2
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    134
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 134
    Par défaut
    pas de reponse!! , une proposition? j'ai vraiment besoin d'aide svp
    merci

Discussions similaires

  1. Remplir une Table avec 2 tables
    Par Titouf dans le forum Oracle
    Réponses: 4
    Dernier message: 03/11/2005, 09h35
  2. comment remplir une table
    Par donny dans le forum Langage SQL
    Réponses: 1
    Dernier message: 12/07/2005, 11h22
  3. remplir une table en fonction des résultats
    Par Psychomantis dans le forum SQL Procédural
    Réponses: 5
    Dernier message: 19/10/2004, 12h22
  4. [SWT] Comment remplir une Table ?
    Par simon77 dans le forum SWT/JFace
    Réponses: 1
    Dernier message: 23/08/2004, 10h31
  5. remplir une table avec UTL_FILE.GET_LINE
    Par delphim dans le forum SQL
    Réponses: 9
    Dernier message: 12/03/2004, 10h15

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