2016-07-10 3 views
0

Ich habe einen Controller, der sagen String CustomerID als Request-Parameter, kann ich es in der gleichen Controller-Methode durch die @ requestParam zugreifen, jetzt rendere ich ein Formular, das eine Schaltfläche mit entsprechender Aktion hat, die im Grunde einen zweiten Controller aufruft. Als nächstes muss ich in diesem Controller selbst auf die customerId zugreifen, um weitere Validierungen durchzuführen. Wie greife ich auf die ursprüngliche customerId in diesem zweiten Controller zu?Zugriff auf den Anforderungsparameter eines Controllers in einem anderen Controller in Spring MVC?

Auch wenn ich die Validierung des nächsten Controllers im ersten Controller selbst durchführe (das kann ich leicht tun), kann ich einen Booleschen Erfolg/Fehler an den nächsten Controller übergeben, der Erfolg/Fehler anzeigt Inhalt. Aber ich weiß nicht, wie in diesem Fall die Aktion des Knopfes gehalten werden soll.

Kann jemand eine/beide dieser Methoden illustrieren und erklären (Code wird bevorzugt) und welche wären besser?

+1

können Sie einfach die Methode Antwort auf eine andere RequestMapping umleiten. –

+0

Controller sollten so konstruiert sein, dass sie eine Sache gut machen. Stellen Sie sicher, dass sie nicht darauf ausgelegt sind, darauf angewiesen zu sein, oder dass sie die Funktionsweise voneinander kennen müssen. – UserF40

Antwort

0

Warum nicht einen anderen benutzerdefinierten Listener an die Schaltfläche anhängen, die in Ihrem dynamischen Formular erstellt wurde, und die Kunden-ID als Parameter übergeben?

eine Steuerung wie diese

public class TestController implements ActionListener 
{ 
    private String id; 

    public TestController(String id) 
    { 
     this.id = id; 
    } 

    @Override 
    public void actionPerformed(ActionEvent e) 
    { 
     // do something with the id 
    } 
} 
+0

Dies ist kein richtiger Weg, dies zu tun. –

Verwandte Themen