Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Passare array a server SOAP

    Ciao ragazzi, sto lavorando su un webservices basato su SOAP, l'ho implementato in Java utilizzando Netbeans come IDE. La mia domanda è:

    che metodo sarebbe giusto usare nell’ambito delle checkbox? cioè devo prendere i valori da questi e poi passarli al server, ho piu di 20 Checkbox sul mio client che possono essere attivate o meno, un esempio potrebbe essere (per sesso di una persona), "femmina","maschio" oppure tutte e due, ho cercato di creare un'array in run-time che mi memorizzi il dato multiplo femmina,maschio o maschio e femmina che poi lo passo al server, però questo metodo mi sembra molto complesso da realizzare con tanti checkbox, mi potete dare una mano per la gestione di questi dati da passare al server? Quale potrebbe essere una gestione snella da caricare sul mio database?

    Qui posto il mio codice:








    codice:
    private void salvaActionPerformed(java.awt.event.ActionEvent evt) {                                      
            // TODO add your handling code here:
            disease=malattia.getText();
    
    
            sexarra=new String[sexint];
            if(sexint==1)
            sexarra[0]=sexone;
            else if(sexint==0)
                JOptionPane.showMessageDialog(null, "Bisogna specificare almeno un valore del campo sesso", "Errore", JOptionPane.ERROR_MESSAGE);
            else{
                sexarra[0]=sexone;
                sexarra[1]=sextwo;}
           // System.out.print(sexarra[0]);
    //     System.out.println(sexarra[1]);
    
    
    
         description=descrizione.getText();
    
    
         agestr=eta.getText();
         if(agestr.equalsIgnoreCase(""))
                   JOptionPane.showMessageDialog(null, "Il campo età non può essere vuoto", "Errore", JOptionPane.ERROR_MESSAGE);
    
         age=Integer.parseInt(agestr);
         if( age<=0 || age>=110){
    
          JOptionPane.showMessageDialog(null, "Il valore inserito nel campo età non è giusto", "Errore", JOptionPane.ERROR_MESSAGE);
         }
     else{
    
    
    
                                try {
                                      URL url = new URL("http://localhost:8080/soap/servlet/rpcrouter");
                                      //costruzione della chiamata
                                      Call chiamata = new Call();
                                      chiamata.setTargetObjectURI("urn:ServerNeuro");
                                      chiamata.setMethodName("ricerca");
                                      chiamata.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);
    
                                       SOAPMappingRegistry smr = new SOAPMappingRegistry();
                                       StringDeserializer sd = new StringDeserializer ();
                                       smr.mapTypes (Constants.NS_URI_SOAP_ENC, new QName ("", "return"), null, null, sd);
                                       chiamata.setSOAPMappingRegistry(smr);
    
    
                                    //creazione dei parametri
    
                              Vector parametri = new Vector();
                          parametri.addElement(new Parameter("malattia", String.class, disease, null));
                          parametri.addElement(new Parameter("eta", Integer.class, age, null));
                          parametri.addElement(new Parameter("descrizione", String.class, description, null));
    
    
                                      chiamata.setParams(parametri);
                                      try {
                                            Response risp = chiamata.invoke(url, "");
                                            if (risp.generatedFault()) {
                                                  Fault fault = risp.getFault();
                                                  System.err.println("Chimata Fallita");
                                                  System.err.println("Code: " + fault.getFaultCode());
                                                  System.err.println("descrizione: " + fault.getFaultString());
                                            } else {
                                                  Parameter par = risp.getReturnValue();
                                                  msg = (String) par.getValue();
                                                  System.out.print(msg);
                                            }
                                      } catch (SOAPException e) {
                                            System.out.println("Errore causata da: (" + e.getFaultCode() + ") :" + e.getMessage());
                                            msg = "errore";
                                      }
    
                                } catch (MalformedURLException ex) {
                                      System.out.println("Exception: " + ex.getMessage());
                                }
                                if (msg.equals("si")) {
                                      JOptionPane.showMessageDialog(null, "Attenzione il utente inserito è gia esistente nel database", "ATTENZIONE", JOptionPane.ERROR_MESSAGE);
    
    
    
    
    
    
    
    
    
    
    
     }}
    
        }                                     
    
        private void femminaActionPerformed(java.awt.event.ActionEvent evt) {                                        
            // TODO add your handling code here:
    
            if(femmina.isSelected()){
                if(sexint==0){
                  sexint++;
                  sexone=femmina.getText();
    
                }
    
                else if(sexint==1){
                    sexint++;
    
                sextwo=femmina.getText();
                }
                else
                    sexint--;
            
            System.out.println(sexint);
            
    
    
            }
        }                                       
    
        private void maschioActionPerformed(java.awt.event.ActionEvent evt) {                                        
            // TODO add your handling code here:
          
    
            if(maschio.isSelected()){
                if(sexint==0){
                  sexint++;
                  sexone=maschio.getText();
    
                }
    
                else if(sexint==1){
                    sexint++;
    
                sextwo=maschio.getText();
                }
                else
                    sexint--;
    
            System.out.println(sexint);
    
    
    
            }
        }

    Attendo risposta, e grazie in anticipo

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472

    Moderazione

    Il linguaggio Java e le tecnologie ad esso correlate hanno una sezione dedicata.
    Sposto la discussione.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Onestamente non ho capito il problema...non vuoi occupare spazio con 20 booleani sulla tabella del database? o cosa?
    Il centro dell'attenzione non è sempre un buon posto in cui trovarsi

    Mai discutere con uno stupido, la gente potrebbe non capire la differenza. (O. W.)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.