Spring io @Autowired: Das leere letzte Feld wurde möglicherweise nicht initialisiert
was ich nehme an, ist eine ziemlich grundlegende Frage hier-
Es gibt verschiedene Arten von Fragen zu diesem Fehler, aber keine in den ersten 5 Ergebnissen, die die zusätzliche Nuance des Frühlings aufweisen.
Ich habe die Anfänge einer REST-vollen Webapp im Frühjahr geschrieben. Ich versuche, eine Verbindung zu einer Datenbank herzustellen.
Ich habe eine Entität namens Workspace und versuche, die Spring-Injection einer Bean (korrekte Terminologie?) Zu verwenden, um eine Instanz der Workspace-Entität zu speichern.
package com.parrit;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.Assert;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import com.parrit.models.Workspace;
import com.parrit.models.WorkspaceRepository;
@RestController
@RequestMapping("/workspace")
public class WorkspaceController {
@Autowired
private final WorkspaceRepository repository;
@RequestMapping(method = RequestMethod.POST)
void save( @RequestBody String workspaceHTML) {
Workspace ws = new Workspace();
ws.setHTML(workspaceHTML);
repository.save(ws);
}
}
Mein Fehler ist in der Repository-Variableprivate final WorkspaceRepository repository
. Der Compiler beschwert sich darüber, dass er möglicherweise nicht initialisiert wurde, und der Versuch, die App auszuführen, führt zu demselben Ergebnis.
Wie bekomme ich eine Instanz dieses Repository-Objekts in meinen Controller, um Operationen darauf zu speichern?