Evitar la utilización del método moveModule de gestión de aplicaciones en desuso

Esta regla marca la utilización de los métodos de gestión de aplicaciones siguientes:

Estos métodos están en desuso desde WebSphere Application Server Versión 5.0 y no proporcionan ninguna funcionalidad. Se pueden sustituir por llamadas al setModuleInfo en la misma clase.

Por ejemplo, una llamada a moveModule podría ser similar a lo siguiente:

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

Utilizando muchos de los mismos argumentos, se podría codificar utilizando el setModuleInfo . Por ejemplo:

int TARGET_COL = 2;
String newTarget = null;

// Obtener el nuevo destino de 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();

// Bucle por los datos de la tarea
while ( iter.hasNext()) {
AppDeploymentTask task = (AppDeploymentTask) iter.next();
String taskName = task.getName().trim();

// Buscar la tarea MapModulesToServers
if (taskName.equals("MapModulesToServers")) {
String[][] taskData = task.getTaskData();
for (int i=1; i <taskData.length; i + +) {
// actualizar el destino
taskData[i][TARGET_COL] = newTarget;
}
break;
}
}

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

Para obtener más información de clases, consulte