Bonjour,

Depuis maintenant un mois je suis sur une application Android, où il faut que je rajoute des fonctionnalités pour des tâches destinées à une entreprise.
L'application est déjà fonctionnelle et disponible sur l'IDE Android Studio.

Avant de me lancer dans ce projet j'avais aucune notion de Java ou dans la création d'application Android.
Grâce à ce que j'ai appris sur le C# et HTML/PHP j'ai pu me débrouiller pour le code Java et la partie XML.
Mais maintenant je suis bloqué dans la partie SOAP/Web, je n'arrive pas à comprendre :

-Quel est l'intérêt de GlassFish au sein d'une l'application pour la communication avec une base de données?

-L'application utilise un serveur GlassFish et a été créée avec NetBeans, si l'on a besoin de GlassFish, doit-on rester sur NetBeans?

-Plusieurs méthodes d'ajout et de modification de données utilisent la même méthode SOAPGet (codée auparavant par quelqu'un) qui ne possède pas
de Switch/If pour trier les données reçues, elle les traites de la même façon. Est-ce la base de données MySQL qui traite et trie les données reçues ?

Merci d'avance pour vos réponses et je vous met le code de la méthode SOAPGet (Java) :

Code Java : 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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
    public static Retour SOAPGet(String SOAP_ACTION, String METHOD_NAME, ArrayList<PropertyInfo> listPropertyInfo) {
        Retour result;
 
        SoapObject request = new SoapObject(Constantes.NAMESPACE, METHOD_NAME);
 
        for (PropertyInfo prop : listPropertyInfo) {
            request.addProperty(prop);
        }
 
        SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER12);
        envelope.dotNet = false;
        envelope.setOutputSoapObject(request);
        if (httpTransport == null) {
            httpTransport = new HttpTransportSE(Constantes.WSDL_URL);
            httpTransport.debug = true;
        }
 
        try {
            if (connection == null) {
                connection = httpTransport.getServiceConnection();
                if (envelope.version == SoapSerializationEnvelope.VER12) {
                    connection.setRequestProperty("Content-Type", "application/soap+xml");
                } else {
                    connection.setRequestProperty("Content-Type", "text/xml");
                }
            }
            httpTransport.call(SOAP_ACTION, envelope);
 
            if (envelope.bodyIn != null) {
                try {
                    if (envelope.bodyIn instanceof SoapObject) { // SoapObject = SUCCESS
                        Gson gson = new GsonBuilder().create();
                        result = gson.fromJson(envelope.getResponse().toString(), Retour.class);
                    } else {
                        result = new Retour(9, METHOD_NAME + ", envelope.bodyIn n'est pas un SoapObject", "");
                    }
                } catch (SoapFault | JsonSyntaxException e) {
                    result = new Retour(9, METHOD_NAME + ", SoapFault ou JsonSyntaxException, ", e.getMessage());
                    Log.e(TAG, METHOD_NAME + ", SoapFault ou JsonSyntaxException, " + e.getMessage());
                }
            } else {
                result = new Retour(9, METHOD_NAME + ", envelope.bodyIn est null", "");
                Log.e(TAG, METHOD_NAME + ", envelope.bodyIn est null");
            }
        } catch (HttpResponseException e) {
            result = new Retour(9, METHOD_NAME + " HttpResponseException", e.getMessage());
            Log.e(TAG, METHOD_NAME + ", HttpResponseException " + e.getMessage());
        } catch (IOException e) {
            result = new Retour(9, METHOD_NAME + ", IOException", e.getMessage());
            Log.e(TAG, METHOD_NAME + ", IOException " + e.getMessage());
        } catch (XmlPullParserException e) {
            result = new Retour(9, METHOD_NAME + ", XmlPullParserException", e.getMessage());
            Log.e(TAG, METHOD_NAME + ", XmlPullParserException " + e.getMessage());
        } catch (Exception e) {
            result = new Retour(9, METHOD_NAME + ", Exception", e.getMessage());
            Log.e(TAG, METHOD_NAME + ", Exception " + e.getMessage());
        }
        if (connection != null) {
            try {
                connection.disconnect();
            } catch (IOException ex) {
                Log.e(TAG, METHOD_NAME + ", IOException " + ex.getMessage());
            }
        }
        return result;
    }