Java Applikation + Citrix

Seite 1 von 2 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/java_applikation_citrix_189036/page_1 - zur Vollversion wechseln!


prayerslayer schrieb am 12.12.2007 um 09:20

moin moin.

folgendes: ich soll für meine zivi-einrichtung die leistungsdokumentation neu machen. ich werde das kurzerhand mit java und ms sql server 2005 (letzteres vorgabe der zentrale) lösen.

haken: über kurz oder lang wird alles auf citrix und thin clients (so wie ich das verstanden habe) umgestellt, deswegen muss meine anwendung in diesem fall auch noch laufen, d.h. es muss genauso über citrix funktionieren.

leider kenn ich mich nüsse mit citrix aus. vielleicht wisst ihr ja, ob/was ich beim coden diesbezüglich beachten muss? oder habt links? google hat auf die schnelle nix ausgespuckt...

tia

//wobei mein gedanke ja ist: java -> plattformunabhängig, deshalb nix zu beachten, weil wurst.


sensei schrieb am 12.12.2007 um 09:23

einige meiner anwendungen laufen über citrix, hätte noch nie irgendwas beachten müssen.

wobei ich mit citrix selbst auch nichts zu tun habe


prayerslayer schrieb am 12.12.2007 um 09:27

das heißt, ich schreib meine anwendung ganz normal und wenn sie über citrix gestartet und zur verfügung gestellt wird, macht das keinen unterschied? :eek: das wäre w00t :)

kannst du/wer anders das bestätigen? ich würde das gern sicher wissen. nicht, dass es nicht hinhaut, wenn es einmal soweit ist :o


.dcp schrieb am 12.12.2007 um 09:58

also wenn java aum server rennt, dann funzt es.
ich hab auch veröffentlichte .net2.0 anwendungen bei uns veröffentlicht, weil auf den clients kein framework installiert ist.

also wenn die umgebung da ist, und funzt, dann funzts :D


prayerslayer schrieb am 12.12.2007 um 14:19

also damit ich jetzt ganz sicher bin und gar nicht erst anfange, die 300+ arbeitsstunden zu investieren:

es liegt _nicht_ an mir (meine anwendung funktioniert normal, vorausgesetzt)? die leute, die citrix verwalten, müssen das einrichten?


.dcp schrieb am 12.12.2007 um 15:27

also wenn ichs richtig verstehe, habt ihr noch keine citrix umgebung?!

wenn die dann eingerichtet wird, muss lediglich die runtime environment auf den servern installiert sein. is ja nix anderes als sich auf der maschine anzumelden und das programm auszuführen.
citrix stellt ja nur das protokol und die verwaltung zur verfügung (vereinfacht).
wenn deine anwendung also auf deinem rechner korrekt funktioniert, funktioniert sie auch auf den servern, wenn die environment installiert ist. mit datenbanken kommen natürlich noch rechte ins spiel.


prayerslayer schrieb am 12.12.2007 um 16:05

doch, citrix gibt's hier schon, aber nur vereinzelt. für die kassenbelege zum beispiel.

dass mit den datenbankrechten ist klar, muss ich mir auch noch anschauen, wie sowas im multiuser betrieb mit citrix geht. weil mit dem sql server kann ich ja das windowsanmeldeverfahren übernehmen (wer als "niki" am lokalen pc angemeldet ist, wird automatisch als user "niki" beim sql server übernommen), aber wo dann die rechte vergeben und verwaltet werden (meine anwendung oder doch die datenbank)... puuuh, da hat mich der leiter von der it verwirrt.

aber was du mit jre und so sagst, klingt logisch und so hab ich mir das eh vorgestellt. danke derweil, vielleicht wird noch was unklar :)


.dcp schrieb am 12.12.2007 um 16:46

arbeiten die user an normalen pcs mit veröfentlichten anwednugen oder an thinclients die ne komplette remotesession aufbauen?
oder am pcs ne session, geht ja auch.

is rein interessehalber, funktionieren tut beides gleich.
veröffenlichte anwedungen sind insofern ziemlich cool, weils für den user keinen unterschied zu ner lokalen anwendung gibt. is nur das programmfenster.
wir haben ca. 20 citrixserver. auf einigen ist .net2.0 installiert.
egal ob als session oder veröff. anw. holt sich citrix die anwendung immer von nem .net2.0 server. auf den server, die keins haben, ist die anwendung auch wieder ne veröff. anw.


prayerslayer schrieb am 12.12.2007 um 17:02

momentan normale pc's mit veröffentlichten anwendungen, geplant sind aber thinclients (so deute ich das "komplett auf citrix umsteigen").

schaut so aus momentan:
click to enlarge


that schrieb am 12.12.2007 um 19:23

Normalerweise laufen Desktop-Anwendungen ohne Änderungen auf einem Terminalserver. Du musst nur bedenken, dass gleichzeitig mehrere User auf derselben Maschine dein Programm nutzen - also Vorsicht bei "globalen" Sachen, die für die ganze Maschine gelten (aber an die kommt man mit Java vermutlich eh nicht ran).


HP schrieb am 12.12.2007 um 20:22

Javaanwendungen koennen zu prozessorhungrigen Anwendungen werden, also pass auf. Zwar kann man auf Citrixseite limitieren, sollte man jedoch vermeiden. Vermeide systemweite Einstellungen, die auf Userbasis gesetzt werden sollen. Arbeite mit Systemvariablen, und meide Konfigurationsdateien.


prayerslayer schrieb am 13.12.2007 um 17:39

@that: was meinst du mit "globalen" sachen zum beispiel?

@HP: danke für die tipps, sowas hilft mir sehr gut :)


that schrieb am 13.12.2007 um 19:01

Zitat von prayerslayer
@that: was meinst du mit "globalen" sachen zum beispiel?

Mach halt z.B. keine Files in irgendwelchen fixen (nicht userabhängigen) Pfaden, wo sich dann mehrere Instanzen in die Quere kommen könnten. Oder falls du mehrmals laufende Instanzen verhindern willst, dann schau dass du das wirklich pro User-Session machst und nicht etwa für die ganze Maschine. Bei native Win32-Objekten gibts "Global\" und "Local\" Prefixes (z.B. für Mutexes, Events, usw.), aber die kann man vermutlich aus Java eh nicht nutzen, bzw. brauchst du die wahrscheinlich eh nicht.


prayerslayer schrieb am 18.04.2008 um 09:37

so, es ist soweit. ich bin großteils fertig und es läuft im citrix, allerdings wie zu erwarten nicht problemlos ;)

Zitat von HP
Arbeite mit Systemvariablen, und meide Konfigurationsdateien.

hab ich versucht. um eine konfigurationsdatei für die verbindungsdaten zur datenbank bin ich nicht herumgekommen und die wollte ich gleich neben dem jar-File, das irgendwo auf einem server liegt speichern (stichwort systemvariablen).

die systemvariable, die dafür zuständig ist, ist normalerweise "user.dir", welche aber (hat ein test bewiesen) ins verzeichnis zeigt, wo die JRE installiert ist. dort mag ich meine config-datei nicht reingeben.

jetzt gibt es 2 möglichkeiten:
1) es gibt eine möglichkeit, mittels java-code herauszufinden, wo sich das jar-file wirklich befindet oder
2) ein workaround, von dem ich nicht weiß, wie er umzusetzen ist.

zu 2):
Zitat
Mail von der IT
Das File mit den Verbindungsdaten liegt auf Deiner Netzwerkfreigabe wo auch der lib-Ordner und das jar-File liegen.

Die Applikation muss aber über das Root-Verzeichnis des Laufwerks J:\ zugreifen. Dabei handelt es sich um ein Netzwerklaufwerk, welches am Server eingerichtet ist und auf Deine Netzwerkfreigabe zeigt.

ich weiß, was gemeint ist, aber wie würde ich das machen? :confused:

bin vollkommen verwirrt, bitte um hilfe. tia!


that schrieb am 18.04.2008 um 09:44

http://forum.java.sun.com/thread.js...ssageID=9577541




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026