Dynamic Method Invocation è una funzionalità di Apache Struts che consente a una richiesta in arrivo di scegliere quale metodo dell'azione venga chiamato invece di usare sempre il gestore predefinito. Era stata pensata come una comodità, ma espande anche la superficie delle richieste e rende la selezione dei metodi più dipendente dall'input controllato dall'utente.
Nella sicurezza informatica, DMI è importante perché configurazioni non sicure o legacy possono trasformare una normale richiesta web in un percorso verso flussi di codice non previsti e, in alcune release vulnerabili di Struts, persino in esecuzione di codice remoto. Gli attaccanti cercano DMI abilitato, soprattutto pattern di richiesta come method:, mentre i difensori riducono il rischio disabilitando DMI, aggiornando a versioni non interessate, limitando i metodi consentiti e controllando i log alla ricerca di sintassi di dispatch sospetta.


