Ich möchte ein Singleton-Objekt in meinem Jersey 1.19.1 Webservice haben, das dieselbe Instanz über alle meine Glassfish-Knoten ist. Dies ist meine aktuelle Implementierung:Java Jersey REST Webservice: Es ist nicht möglich, eine Singleton Bean über alle Clusterknoten zu erstellen
@Singleton
@ApplicationScoped
@Stateless
public class ValueObject {
public long downloads = 0;
}
und
@Path("downloads")
public class Downloads {
@InjectParam
private ValueObject singleton;
}
Der Zähler erhöht wird, wenn eine Datei heruntergeladen wird. Nach dem Herunterladen einer Datei und der Abfrage nach dem DownloadCounter 1 und 0 wird zurückgegeben, je nachdem, welcher der beiden Glassfish-Knoten die Anforderung verarbeitet hat.
Mein Ziel ist es immer 1 zu bekommen. Wie kann ich das erreichen?
Ohne @ApplicationScoped oder @Stateful statt @Stateless führt zum gleichen Ergebnis.
Grüße
John