Anwendereigene Variablen instanzieren?

Status
Nicht offen für weitere Antworten.

terese0815

Mitglied
Hallo zusammen,

nun habe ich mich angemeldet, da ich mit einem für mich großen Problem nicht weiter komme.

Ich arbeite gerade an einer Serveranwendung die einmalig läuft und auf welcher mehrere Benutzer zugreifen. Dort stoße ich jedoch auf ein Problem, dass sich in anderen Sprachen leicht mit Arrays lösen lässt. Hier jedoch nicht - zumindest mit dem begrenzten Wissen das mir zur Verfügung steht.

Zum Problem.

Die Anwendung wird gestartet. Mit jedem Aufruf dieser Anwendung erhalte ich eine unique-ID, welche ich als Grundlage für die im System gehaltenen Variablen nutzen möchte.

Beispielsweise in PHP würde ich einen Userstatus in ein Array packen.

$UserStatus[$unique_id] = "blub";

In Java funktioniert das allerdings nicht, da ein Array-Index immer mit 0 beginnt. Auch muss der Index ein Integer sein.

Wie kann ich nun erreichen, dass die Variable / das Array UserStatus nicht durch andere Benutzer verändert wird?

Ich hoffe ich konnte das Problem verdeutlichen.


Grüße

Stefan
 

terese0815

Mitglied
Noch einmal zum Verständnis. Das Programm selbst wird nicht auf dem Client oder etwa im Browser ausgeführt. Es läuft auf dem Server und wird über Flash-Apps angesprochen.

Ich denke da ist dann eine Session in dieser Art nicht zu gebrauchen oder?
 

Noctarius

Top Contributor
Wie aktuallisieren die Flash-Apps denn Ihre Daten? Über Http-Requests und damit hast du auch eine SessionId und zwangsweise auch eine Session :D
 

terese0815

Mitglied
Das schon richtig^^

Aber bitte ganz kurz für jemanden, der gerade mal seit ein paar Tagen mit Java zu tun hat.

Ich schreibe da in einer Streamingserver-Umgebung. Beim initialisieren

import javax.servlet.*;
import javax.servlet.http.*;

meldet er mir schon, dass er die nicht finden kann.
 

terese0815

Mitglied
Ok, eingebunden. Leider jedoch gibt er mir Fehler zurück. Kann es sein, dass die Wowza-Klassen bereits eine Session implementiert haben und diese sich deshalb in die Quere kommen?

Java:
	public void onConnect(IClient client, RequestFunction function, AMFDataList params, HttpServletRequest request, HttpServletResponse response) throws SQLException {

		//IApplication app = getApplication(client);
		IApplicationInstance appInstance = getAppInstance(client);

		HttpSession session = request.getSession();
		System.out.println(session.getId());
		
....

INFO session connect-pending 192.168.178.20 -
ERROR server comment - invoke(onConnect): java.lang.IllegalArgumentException: wrong number of arguments: sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-2)
java.lang.IllegalArgumentException: wrong number of arguments
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.wowza.wms.module.ModuleFunction.invoke(Unknown Source)
at com.wowza.wms.module.ModuleFunctions.invokeSpecial(Unknown Source)
at com.wowza.wms.module.ModuleFunctions.onConnect(Unknown Source)
at com.wowza.wms.module.ModuleConnect.connect(Unknown Source)
at com.wowza.wms.request.RequestProcessFunctions.processFunctions(Unknown Source)
at com.wowza.wms.request.RTMPRequestAdapter.service(Unknown Source)
at com.wowza.wms.server.ServerHandler.serviceRequest(Unknown Source)
at com.wowza.wms.server.ServerHandler.handleMessageReceived(Unknown Source)
at com.wowza.wms.server.ServerHandler.messageReceived(Unknown Source)
at com.wowza.wms.server.ServerHandlerThreadedSession.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
usw...
 

Noctarius

Top Contributor
Ich kenn das Framework jetzt nicht aber schau doch einfach mal ob dir eine passende Session rausgibt. Methoden kannst du natürlich nicht einfach um ein paar Parameter ergänzen-
 

terese0815

Mitglied
Nein macht er nicht. Habe allerdings auch schon arge Verständnisprobleme mit der Struktur überhaupt. Keine Ahnung wie und wann ich die Session initialisieren kann - wie sie aufgerufen wird usw:bahnhof:

Dafür reichen einfach meine Java-Kenntnisse nicht aus. Dumm nur, dass wir es brauchen. Sieht nach einer erneuten langen Nacht aus. Es sei denn, dass Variablenproblem lässt sich auch anders umgehen.
 

Noctarius

Top Contributor
Eine Session wird bei einem Servlet beim ersten Aufruf automatisch erstellt vom Server. Brauchst du dich gar nicht drum zu kümmern, musst sie nur irgendwie aus deinem Framework bekommen :D
 

terese0815

Mitglied
Ja ich denke das Hauptproblem ist einfach meine Unwissenheit:D

Schau mal hier...

Java:
package com.juggler.wms.module;

import com.wowza.wms.application.*;
import com.wowza.wms.amf.*;
import com.wowza.wms.client.*;
import com.wowza.wms.logging.WMSLoggerFactory;
import com.wowza.wms.module.*;
import com.wowza.wms.request.*;
import com.wowza.wms.stream.IMediaStream;
import com.wowza.wms.stream.IMediaStreamActionNotify;
import com.wowza.wms.vhost.IVHost;
import com.wowza.wms.module.ModuleProperties;


import edu.emory.mathcs.backport.java.util.concurrent.locks.WMSReadWriteLock;

import java.sql.*;
import java.util.Timer;
import java.util.TimerTask;

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;



 
class ReturnObj implements IModuleCallResult {
	public void onResult(IClient client, RequestFunction function, AMFDataList params)	{
		WMSLoggerFactory.getLogger(null).debug("onResult");
	}
}

public class Juggler extends ModuleBase {
		
	static String mysql_connection = "jdbc:mysql://192.168.178.28/juggler?user=xxxxx&password=xxxxxx";
	private Connection conn = null;
	private Statement stmt = null;
	public ResultSet rs = null;

	
	private int runUserID;
	private String runApp;
	private int subscripeToUserID;
	public int update_db = 0;

	Timer timer = new Timer();
	

	
	
	
	public class ServletName 
    extends javax.servlet.http.HttpServlet 
    implements javax.servlet.Servlet {
    
		protected void doGet(HttpServletRequest request, HttpServletResponse response) 
			throws ServletException, IOException {
				//doPost(request,response);
				System.out.println("Scheisse!");
		}  	

	}
....

Ist mit großer Sicherheit der totale Blödsinn - passiert ja auch nichts:D Was muss ich da denn machen, um eben an die gewünschten Infos zu kommen?
 

terese0815

Mitglied
Das hatte ich auch schon mal gelesen. Innerhalb der Wowza-Anwendung festzustellen, welcher User da gerade was macht funktioniert. Jedoch nicht, variablen Userabhängig festzuhalten.

Stelle Dir vor, User 1 loggt sich ein. Ich möchte einen Status des Users festhalten. Das ganze packe ich in die Variable StATUS.

Nun kommt User 2, der überschreibt natürlich STATUS wieder. Wie aber bekomme ich es hin, dass ich eben diese Variablen einem User zuweisen kann? Vielleicht gibt es da verschiedene Ansätze und ich bin zu blöd die zu finden.:rtfm:
 

Noctarius

Top Contributor
Du könntest eventuell ThreadLocal Variable verwenden, dazu müsste aber jeder Request in einem eigenen Thread ablaufen und würde dann auch nicht über verschiedene Requests hinweg funktionieren.
 

terese0815

Mitglied
Hallo,

ich habe das ganze jetzt per Hashmap gelöst. Das kommt der variablen Variable doch schon mehr als gleich und es langt für meine Bedürfnisse.

Wäre ich ohne Deine Hilfe nicht drauf gestoßen. Also vielen Dank! :)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
O Welcher Object-Lock-Pool bei static Variablen? Java Basics - Anfänger-Themen 3
T variablen klassen übergreifend Java Basics - Anfänger-Themen 12
T Variablen Java Basics - Anfänger-Themen 1
N Verständnis Frage zu Variablen Java Basics - Anfänger-Themen 3
M Aufsummieren von variablen Wertegrößen Java Basics - Anfänger-Themen 17
M Mehrere Daten/ Variablen Speichern Java Basics - Anfänger-Themen 9
J Speichern von zwei Variablen durch Auslesen aus einem Numberfield Java Basics - Anfänger-Themen 2
ashi Variablen aufrufen Java Basics - Anfänger-Themen 17
U Warum kann ich, auf private Variablen zugreifen, wenn ich ein Objekt in der Klasse, die private Variablen hat erstelle und dort drauf zugreifen will? Java Basics - Anfänger-Themen 7
B Konkatenieren eines Strings und inkremtierenden Zahl zu einer INT Variablen Java Basics - Anfänger-Themen 7
A 2 Strings vergleichen in einer methode wenn man mit Globalen variablen arbeitet Java Basics - Anfänger-Themen 12
C Konstruktoren und Variablen Java Basics - Anfänger-Themen 42
F Auf Variablen eines Konstruktors zugreifen Java Basics - Anfänger-Themen 4
N Variable aus anderen Variablen in statischer Klasse berechnen/abspeichern? Java Basics - Anfänger-Themen 4
M Wie kann ich bei int-Variablen im exception handler auf bestimmte Strings reagieren? Java Basics - Anfänger-Themen 5
M Warum dürfen Objekte einer Klasse auf statische Variablen dieser Klasse referenzieren? Java Basics - Anfänger-Themen 10
B Variablen Variablen übertragen ohne Klassen Java Basics - Anfänger-Themen 5
B Methoden Methoden haben kein Zugriff auf variablen Java Basics - Anfänger-Themen 4
T Java Swing - Dreieck zeichnen mit verschiedenen Variablen Java Basics - Anfänger-Themen 8
Arif Vererbung Methodenvererbung mit finalen Variablen Java Basics - Anfänger-Themen 1
M Wie kann ich ein Objekt erstellen, wenn sich der Klassenname in einer Variablen befindet? Java Basics - Anfänger-Themen 10
S Variablen Variablen in einer Schleife erstellen lassen Java Basics - Anfänger-Themen 11
J Ich brauche Hilfe bei einem Code (Variablen speichern) Java Basics - Anfänger-Themen 29
F Variablen Werte einer Klasse überschreiben Java Basics - Anfänger-Themen 4
N Speichern von Werten in Variablen nach Schließen des Programms Java Basics - Anfänger-Themen 3
J Frage dazu Variablen klassenübergreifend zu verändern Java Basics - Anfänger-Themen 22
M Java Instanz-Variablen ? Java Basics - Anfänger-Themen 3
B Variablen von Methoden übertragen Java Basics - Anfänger-Themen 2
M Variablen umbenennen Java Basics - Anfänger-Themen 1
T Körper Brechnung - Lokale Variablen in Methoden übergeben Java Basics - Anfänger-Themen 10
P Zugriff auf Variablen anderer Klassen in Greenfoot Java Basics - Anfänger-Themen 1
mars90 Fehler in der Variablen Deklaration Java Basics - Anfänger-Themen 8
E Variablen in formatierter Ausgabe Java Basics - Anfänger-Themen 15
V Schleife für das Einlesen von Werten für int Variablen, die Bestandteil von Arrays sein sollen Java Basics - Anfänger-Themen 16
M Komisches Verhalten der Variablen Java Basics - Anfänger-Themen 6
H Variablen Multiplikation einer inkrementierten Variablen Java Basics - Anfänger-Themen 5
scratchy1 Variablen vertauschen wenn Bedingung "umgedreht" wird Java Basics - Anfänger-Themen 40
J Variablen mit einer anderen Klasse bekannt machen Java Basics - Anfänger-Themen 7
C Methoden Problem beim Speichern von Variablen Java Basics - Anfänger-Themen 1
A Übergreifende Variablen Java Basics - Anfänger-Themen 17
A Variablen Verständnisfrage bzgl. Variablen/Referenzen Java Basics - Anfänger-Themen 3
H Variablen Methode zum Abfragen von Variablen aus Subklassen Java Basics - Anfänger-Themen 9
P Variablen Variablen voneinander abhängig Java Basics - Anfänger-Themen 54
F Liste nach einer Variablen sortieren Java Basics - Anfänger-Themen 6
L Variablen in anderen Klassen nutzen Java Basics - Anfänger-Themen 6
M For-Schleife durch zwei versch. Variablen begrenzen Java Basics - Anfänger-Themen 27
J Klassen Variablen in andere Klassen oder Methoden übernehmen Java Basics - Anfänger-Themen 1
P Liste auslesen und in Variablen speichern Java Basics - Anfänger-Themen 7
temi Redundante Variablen Java Basics - Anfänger-Themen 29
Aprendiendo Zweifel mit versteckter Variablen Java Basics - Anfänger-Themen 16
L Variablen einmal nur zu weisen Java Basics - Anfänger-Themen 62
D Statische Variablen/Methoden Java Basics - Anfänger-Themen 3
R Abfrage von Variablen in Unterklassen einer ArrayList Java Basics - Anfänger-Themen 9
M Listener für Button - Wert von Variablen verändern Java Basics - Anfänger-Themen 14
S Vererbung Variablen klassenübergreifend nutzen Java Basics - Anfänger-Themen 42
R Auf Variablen einer anderen Klasse zugreifen? Java Basics - Anfänger-Themen 1
D Fehlermeldung obwohl Variablen bereits deklariert sind? Java Basics - Anfänger-Themen 14
E 2 Probleme - Datum & private finale Variablen Java Basics - Anfänger-Themen 5
Aruetiise Variablen JFrame und Variablen Java Basics - Anfänger-Themen 3
L Variablen dekleration + reset Java Basics - Anfänger-Themen 16
T Übernahme einer Variablen im ActionListener/ActionEvent Java Basics - Anfänger-Themen 2
D Kapselung final Variablen mit Getter? Java Basics - Anfänger-Themen 2
C Variablen von einem JFrame in einen anderen übertragen Java Basics - Anfänger-Themen 3
P Interface Variablen-Inhalte werden nicht übergeben Java Basics - Anfänger-Themen 3
C Variablen in Schleifen außerhalb verwenden Java Basics - Anfänger-Themen 2
S Variablen Flexible Variablen Namen Java Basics - Anfänger-Themen 3
R Erste Schritte 3 Variablen hochzählen lassen Java Basics - Anfänger-Themen 1
RowdyN Variablen Variablen beliebig benennen? Java Basics - Anfänger-Themen 6
S OOP Variablen zwischen mehreren Klassen Java Basics - Anfänger-Themen 11
T Koordinatensystem zeichnen - Variablen merken? Quadratische Funktion zeichnen? Java Basics - Anfänger-Themen 5
H Variablen einer Schleife zwischenspeichern Java Basics - Anfänger-Themen 2
P Klassen Variablen von einer Klasse zur anderen Java Basics - Anfänger-Themen 5
H Objekt überschreibt Variablen vorheriger Objekte Java Basics - Anfänger-Themen 2
P Variablen in Excel speichern Java Basics - Anfänger-Themen 6
S PHP Aufruf mit mehreren Variablen Java Basics - Anfänger-Themen 2
F Variablen unterschiedlicher Datentypen Java Basics - Anfänger-Themen 6
S ActionListener und Statische Variablen Java Basics - Anfänger-Themen 4
Arif Vererbung Vererbung Variablen überschreiben Java Basics - Anfänger-Themen 1
L Vergleich zweier Variablen, mit Abweichung Java Basics - Anfänger-Themen 3
P Variablen einer Methode in andere Method übergeben Java Basics - Anfänger-Themen 6
G Variablen Verwendung von Variablen in anderer Klasse Java Basics - Anfänger-Themen 6
P Textfelder in Variablen speichern Java Basics - Anfänger-Themen 13
K arraygröße durch variablen Konstruktor? Java Basics - Anfänger-Themen 7
J Vererbung Variablen aus Superklasse übernehmen Java Basics - Anfänger-Themen 2
L Variablen aus TXT Datei auslesen und vergleichen. Java Basics - Anfänger-Themen 5
K Welchen Typ haben Variablen in Default-Methoden und in statischen Methoden in Schnittstellen? Java Basics - Anfänger-Themen 4
K Wieso muss man finale statische Variablen sofort oder eben im Konstruktor initialisieren? Java Basics - Anfänger-Themen 2
L zwei Variablen gleichzeitig übergeben Java Basics - Anfänger-Themen 6
J Vererbung privater Variablen Java Basics - Anfänger-Themen 7
D Klassen Verhalten von Klassenvererbung bei Variablen Java Basics - Anfänger-Themen 1
G Alle Objekte und Variablen automatisch ausgeben Java Basics - Anfänger-Themen 7
S OOP Werte von Vektoren mit 3 Variablen ausgeben lassen Java Basics - Anfänger-Themen 3
A Variablen aus einer Schleife gezielt auslesen Java Basics - Anfänger-Themen 11
A Methoden Zugriff auf eingelesene Variablen in der main Methode (ohne Änderung der Parameterliste) Java Basics - Anfänger-Themen 4
K Enigma, variablen übernehmen Java Basics - Anfänger-Themen 6
F Erste Schritte Dynamische Variablen Java Basics - Anfänger-Themen 15
N Variablen zurück casten Java Basics - Anfänger-Themen 3
M Repräsentation von variablen/OOP Java Basics - Anfänger-Themen 2
B Probleme beim einlesen einer short variablen für einen Array Java Basics - Anfänger-Themen 1
S Warum erlaubt ein while-Loop keine Variablen-Declaration wie der for-Loop..? Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben