Eviter d'utiliser la méthode obsolète moveModule de gestion des applications

Cette règle marque l'utilisation des méthodes de gestion des applications suivantes :

Ces méthodes sont obsolètes à partir de WebSphere Application Server version 5.0 et n'offrent aucune fonctionnalité. Ils peuvent être remplacés par des appels à la setModuleInfo dans la même classe.

Par exemple, un appel de moveModule peut être similaire à ce qui suit:

< span class="Code"> appManagement.moveModule(appName, prefs, uniqueModuleURI, objectName, workspaceID) ;

En utilisant plusieurs des mêmes arguments, il pourrait être codé à l'aide du setModuleInfo . Exemple :

int TARGET_COL = 2;
String newTarget = null;

// Get the new target from the ObjectName
if (objectName.getKeyProperty("server")!=null) {
newTarget = objectName.getKeyProperty("server");
} else if (objectName.getKeyProperty("cluster")!=null) {
newTarget = objectName.getKeyProperty("cluster");
}

if (newTarget!=null) {
Vector taskVector = appManagement.getModuleInfo(appName, prefs, uniqueModuleURI, workspaceID);
Iterator iter = taskVector.iterator();

// Loop through the task data
while ( iter.hasNext()) {
AppDeploymentTask task = (AppDeploymentTask) iter.next();
String taskName = task.getName().trim();

// Find the MapModulesToServers task
if (taskName.equals("MapModulesToServers")) {
String[][] taskData = task.getTaskData();
for (int i=1; i <taskData.length; i + +) {
// update the target
taskData[i][TARGET_COL] = newTarget;
}
break;
}
}

appManagement.setModuleInfo(appName, prefs, uniqueModuleURI, workspaceID, taskVector);
}

Pour plus d'informations sur la classe, voir :