Rubrique précédente: Gestion des erreursRubrique suivante: Récupération des attributs


Création et gestion d'une connexion

Pour pouvoir créer une connexion à un service Web et ouvrir une session de service Web DSM, vous devez initialiser à la fois une localisation du service Web et une liaison avec le service Web via SOAP. Vous devez connaître l'URL du service Web. Sur une installation DSM standard, celle-ci est généralement au format http://<nom_ordinateur>/udsm_r11_webservice/mod_gsoap.dll, pour Windows et http://<nom_ordinateur>/UDSM_R11_WebService, pour Linux.

Pour les versions postérieures à la version 12.5, utilisez le terminal de service Web suivant, en plus de l'URL précédente :

Windows

http://<nom_ordinateur>/DSM_Webservice/mod_gsoap.dll

Linux

http://<nom_ordinateur>/DSM_WebService

Vous devez initialiser la localisation du service Web (a) puis établir une connexion avec l'API du service Web en utilisant l'URL d'emplacement du service Web (b).

Exemple 1 : Configuration des variables de connexion requises

//ID de session utilisé lors de tous les appels au service Web.
//Il est défini lorsque vous vous connectez au service Web.
private String sessionId = "";	
//Objets du service Web UDSM auxquels vous devez passer
//un appel de service Web.
//(a)
private DSMWebServiceAPIService wsAPIservice = null;
//(b)
public DSMWebServiceAPISoapBindingStub wsAPIconnector = null;
private String serviceLocation="";
private java.net.URL endpoint = new java.net.URL(serviceLocation);

Remarque : Cet exemple est généré à l'aide des logiciels Apache Axis version 1.2 et JDK 1.5 et tient compte des recommandations relatives à l'écriture du code client de service Web.

Exemple 2 : Création de la connexion avec le Service Web

//Création de l'objet Localisation du service -- Obligatoire.
wsAPIservice = new WebServiceAPIServiceLocator();
//Si l'objet Localisation du service a été créé, continuez la procédure.
if (wsAPIservice != null)
{
	try
	{
		//Essayez de créer l'objet de liaison pour assurer la liaison du 
		//service Web à l'aide de l'URL d'emplacement du service.
	     	wsAPIconnector= (WebServiceAPISoapBindingStub)
		wsAPIservice.getWebServiceAPIService(endpoint);
	}
	catch(Exception e)
	{
	     	throw e;
	}
}
else
{
	sessionId = "";
	return WEB_SERVICE_COULD_NOT_BE_INITIALISED;
}

N'oubliez pas que les méthodes de service Web Java peuvent générer des exceptions de service Web, que vous devez détecter et gérer.

Une fois la connexion établie, il est important que vous ouvriez une session du service Web DSM, comme vous le feriez avec DSM explorer. Appelez la méthode de connexion (Login) à l'aide d'informations d'identification d'utilisateur DSM valides.

Exemple 3 : Connexion au service Web DSM

//Essayez à présent d'ouvrir une session avec la nouvelle connexion du service Web,
//en utilisant les informations d'identification provenant d'un objet config (non décrit ici).
	try
	{
sessionId = wsAPIconnector.Login(    cfg.getUserName(),cfg.getPassword(),cfg.getManager() );
	}
	catch (Exception e)
	{
	     sessionId = "";
	     throw e;
	}
     	
	//Si l'ID de session n'existe pas, cela signifie qu'aucune session n'a été ouverte.
	if(sessionId.equals(""))
	{
		return SESSION_COULD_NOT_BE_ESTABLISHED;
	}
	else
	{
		return RESULT_OK;
	}