Async message – Java – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama

Async message – Java – Fórum – Programujte.comAsync message – Java – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené.
Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Flowy0
Věrný člen
25. 9. 2014   #1
-
0
-

prijimam spravu v async threade a potrebujem aby klient mohol do tohto threadu poslat metodu z jeho class ktora bude volana po prijati spravy ... aktualne to mam cez interface a po prijati spravy sa vykona metoda z interface ale potrebujem aby klient mohol pouzit vlastne (aktualne) premenne ... napada ma len nejaka factory metoda ktora bude vracat static premenne ... da sa to nejak krajsie zabalit pre klienta?

Nahlásit jako SPAM
IP: 91.127.131.–
https://github.com/Flowy
Reklama
Reklama
NotBeginner
~ Anonymní uživatel
184 příspěvků
26. 9. 2014   #2
-
0
-

Z tvého popisu netuším o čem mluvíš? Mluvíš o EE JMS neboť tam je synchronní a asynchroní zpracování zprá.? Flowy, všiml jsem si toho párkrát, zadáš si tu zadání, na které ti nikdo neodpoví neboť jej podle mě nikdo nechápe, ty si jej nakonec sám vyřešíš a opět jej ústně popíšeš. Z tvého zadání nelze pochopit koncept řešení, je to příliš málo informací.

PS. jako kdyby tu byl problém zvěřejnit ořezané klíčové části zdrojáku. S takovým to zadání ti nelze pomoci.

Nahlásit jako SPAM
IP: 217.112.161.–
Flowy0
Věrný člen
26. 9. 2014   #3
-
0
-

kod si napisat viem ... rozmyslam nad principom ako to bude fungovat ... v zasade je jedno v akom prostredi vymyslis riesenie pretoze mi staci sposob ako to bude fungovat

na jednej strane mam kniznicu ktora asynchronne zachytava spravy ... ked spravu zachyti tak by mala o tom dat vediet samotnemu programu ... otazka je ako to spravit aby ten program mohol passnut do kniznice nejaku vlastnu metodu (dalo by sa spravit cez lambda alebo len interfacom) ale tak aby tato metoda mala vzdy pristup k zdrojom v programe ... myslim ze jpa to riesi tak ze ma singletona nejaku factory ktora poskytuje vzdy aktualnu session ale taketo riesenie sa mi zda moc narocne na program ... radsej by som nieco viac zabalene do kniznice

Nahlásit jako SPAM
IP: 213.160.177.–
https://github.com/Flowy
NotBeginner
~ Anonymní uživatel
184 příspěvků
26. 9. 2014   #4
-
0
-

~~ ked spravu zachyti tak by mala o tom dat vediet samotnemu programu

Ale to právě nejde. Pokud chápu správně EJB,RMI apod.. pak vždycky iniciativa vznika z dotazu klienta. Ze strany serveru nelze dát vědět že se něco stalo. ( lze to řešit nekonečným cyklem s opakujícím se dotazem na klientovy)

V tomto případě spíž klient(např. desktop v síti) by měl být koncepčně navržen tak, jako pouze klient v samostatném vláknu měl mít spuštěné asynchronní připojení(např. přes JMS) přihlašující se na aplikační server  a pokud na serveru vznikne zpráva pak vlákno na klientu to okamžitě zjistí protože je stále spuštěné a zaregistrované na tom serveru a provede to co na klientovy potřebuješ.

Těd je otázka jestli si rozumíme a chápeme se.   Fakt nevím jaké zprávy(např. objekt Message z JMS) máš na mysli, jakou technologii ta knižnice využívá atd..

Nahlásit jako SPAM
IP: 217.112.161.–
Flowy0
Věrný člen
26. 9. 2014   #5
-
0
-

#4 NotBeginner
pripajam sa na irc a mam spraveny thread ktory ma loop cakajuci na spravu ... chcem tam dat pattern listenera ale potrebujem aby ten listener dokazal pracovat aj s vlastnym kontextom

Nahlásit jako SPAM
IP: 91.127.131.–
https://github.com/Flowy
NotBeginner
~ Anonymní uživatel
184 příspěvků
26. 9. 2014   #6
-
0
-

Konečně to z tebe trochu vypadlo. Jde o to že dané řešení pokud by se nejednalo o irc existuje v EE jako Java Message Server ( JMS), proto jsem o tom stále mluvil. Tam je to celé vyřešené a člověk pracuje s objektem typu :

http://docs.oracle.com/javaee/6/api/javax/jms/Message.html

Taktéž když mluvíš o kontextu, radši mluv o obsahu protože objekt Context k načteni JNDI existuje taky a taky se používá u JMS, pokud nevyužívám DI.

http://docs.oracle.com/javase/7/docs/api/javax/naming/Context.html

Ale ty tím pádem pravděpodobně musíš použít architekturu klient-server a provádíš připojení přes Socket. A pokud používáš socket pak v čem je problém? Prostě jej necháš v nekonečném cyklu. On stejně čeká a nevytěžuje procesor a pokud dorazí nejspíž String(neboť se jedná asi o klienta něčeho jako ICQ) tak je vypíšeš.

No a pokud ty potřebuješ v tom samotném vláknu které listeneruje ten socket zavolat nějakou metodu z ostaních tříd tak proč do konstruktoru vlákna při vzniku toho vlákna nedáš referenci na hlavní objekt či jiný objekt který s tou metodou disponuje.  Protože pak dané vlákno přeci má ten objekt k dispozi během svého běhu.

Tedy jak říkám pokud to chápu správně.

Nahlásit jako SPAM
IP: 217.112.161.–
Flowy0
Věrný člen
27. 9. 2014   #7
-
0
-

diki, spravil som si interface InMessage (listener) ktory je parsovany zo socketu ... nenapadlo ma ze implementacia si moze dat vlastny konstruktor a tymto tam injektovat vlastne objekty (sice musia byt threadsafe ale to by nemal byt problem)

Nahlásit jako SPAM
IP: 84.47.43.–
https://github.com/Flowy
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 11 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý