Re: spojeni aplikace servlet

2005-09-21 Tema obsahu Oto Buchta
On Wednesday 21 of September 2005 23:09, Karel Tejnora wrote:
> Nemate zkusenosti s Cache od Inter Systems? Vypada to velmi hezky, ale ...

Ted jsem se na to zbezne dival. O distribuovanosti zde nemuze byt rec, 
rychlost mozna, ale nijak dlouze jsem to netestoval. Nebylo proc.

De facto to neni nic jineho nez Hashtabulka (ano, zamyka se ;-) ), ktera muze 
obsahovat jako hodnoty bud retezce nebo dalsi hashtabulky. Mapovani do trid 
se deje stejne jako u Pythonu - extra popisem.

Neni mi jasny ten system indexovani pomoci bitovych map, to budu muset jeste 
blize prostudovat.

Nabindovani do Javy je udelano asi stejne jako u Lotus Notes: pres socket si 
muzete volat serverove sluzby.
 
Kdo drive pracoval s freemarkerem, asi mu to bude neco hodne pripominat...
-- 
Oto 'tapik' Buchta, [EMAIL PROTECTED]
Senior Engineer, Systinet Corp,
http://www.systinet.com


Re: spojeni aplikace servlet

2005-09-21 Tema obsahu Karel Tejnora

Nemate zkusenosti s Cache od Inter Systems? Vypada to velmi hezky, ale ...



Navic DRDA mi neprijde jako vhodna volba. To uz bych radeji volil Liquid Data 
- prece jen to ma blize k Internetove architekture a doba cistych relacnich 
databazovych reseni postupne odchazi ...


 





Re: spojeni aplikace servlet

2005-09-21 Tema obsahu Burdik Petr

Martin Kuba wrote:


Mat wrote:

Ale mam otazku: Neexperimentovali ste na takejto sieti s klasickym 
NFS (samozrejme nad UDP)? Mozno by v takomto specialnom pripade 
(velka sirka + velka latencia) vyvazil overhead NFS jeho "lepsim" 
vyuzitim pasma pomocou UDP nad klasickym FTP/TCP.



Pokud vim, tak NFS u nas bylo zavrzeno a pouzivame AFS, protoze
lepe skaluje a zajistuje lepsi bezpecnost. Nevim jestli je rychlejsi.

Neni to nejak exaktni, ale zkusil jsem si ted pro porovnani
prenest soubor 37.4MB velky pomoci ftp a zkopirovanim z AFS,
a ftp to trvalo 3.65sekundy a AFS 14.3 sekundy.

Makub


Ja jsem se rozhodl nakonec pro coda. Chystam se v rijnu implementovat 
mirroring dat na dva servery. Tedy melo by to snad jit. Nemate nekdo s 
Codou zkusenosti?


Pet


Re: spojeni aplikace servlet

2005-09-21 Tema obsahu Martin Kuba

Oto Buchta wrote:
Jinak jsem ocekaval, ze gigabytove linky umi bundlovat packety do balicku o 
velikosti tak setiny sirky pasma a kazdych deset milisekund je preposilat 
dal...


Linka is muze delat co chce, ale rychlost odesilani dat urcuji koncove
body, a ty nevi, jake linky lezi mezi nimi, krome toho,
ze se jim ztraceji pakety vic nebo min.

Pro skutecne velke rychlosti jsou ted modni reseni, kdy dostanes
plne optickou trasu, tj. jednu vlnovou delku svetla (treba zelenou :-) )
po cele trase, a nikdo se ti do ni neplete, takze ji mas celou pro sebe.
Tam pak nemusis mit ferovy protokol.

pouzil Staudkova bernardyna. Jeho pomer sirka pasma ku porizovaci naklady s 
krabickou na sto DVD zavesenou misto soudku rumu na jeho krku je ohromujici. 
Nerku-li pak sirku pasma T813 plne nalozene DVDckama ;-) )


Jiste, ale z jisteho radioteleskopu, ktery produkuje nejakych 10gigabitu 
za sekundu, uz je prestava bavit posilat kamiony nalozene paskami,

a porizuji si sklenene vlakno. Takze i bernardyni maji sve limity :-)

Samozrejme neco jineho je v pripade, kdyz nemas na vstupu video na disku, ale 
video vstup z profesionalni kamery s vysokym rozlisenim a mas to z ni primo 
streamovat na stovky destinaci s gigovou linkou. Ale ukaz mi, kolik takovych 
stanic bys resil architekturou navrzenou tazatelem :-D


Uhnuli jsem od tematu, tazatel jiste chtel stehovat vcelku male soubory, 
a ted se divi, co to rozebirame :-)


Makub
--
~~
Supercomputing Center Brno Martin Kuba
Institute of Computer Scienceemail: [EMAIL PROTECTED]
Masaryk University http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775
--


smime.p7s
Description: S/MIME Cryptographic Signature


Re: spojeni aplikace servlet

2005-09-21 Tema obsahu Martin Kuba

Mat wrote:
Ale mam otazku: Neexperimentovali ste na takejto sieti s klasickym NFS 
(samozrejme nad UDP)? Mozno by v takomto specialnom pripade (velka sirka 
+ velka latencia) vyvazil overhead NFS jeho "lepsim" vyuzitim pasma 
pomocou UDP nad klasickym FTP/TCP.


Pokud vim, tak NFS u nas bylo zavrzeno a pouzivame AFS, protoze
lepe skaluje a zajistuje lepsi bezpecnost. Nevim jestli je rychlejsi.

Neni to nejak exaktni, ale zkusil jsem si ted pro porovnani
prenest soubor 37.4MB velky pomoci ftp a zkopirovanim z AFS,
a ftp to trvalo 3.65sekundy a AFS 14.3 sekundy.

Makub
--
~~
Supercomputing Center Brno Martin Kuba
Institute of Computer Scienceemail: [EMAIL PROTECTED]
Masaryk University http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775
--


smime.p7s
Description: S/MIME Cryptographic Signature


Re: spojeni aplikace servlet

2005-09-21 Tema obsahu Oto Buchta
On Wednesday 21 of September 2005 10:48, Martin Kuba wrote:
> Oto Buchta wrote:
> > No samozrejme jeste rychlejsi by to melo byt pres Serverovy socket honit
> > binarni stream s vlastnim optimalizovanym protokolem. Ale, no, jak bych
> > to
>
> Pokud jde opravdu o vykon, tak je to nase superpocitacova parketa :-)
> Do radu stovek megabajtu asi zadny vlastni protokol nepobije klasicke
> ftp, ono koneckoncu nedela nic jineho, nez si pro data otevre TCP/IP
> socket a tlaci je binarne, co to jde.
> A pokud potrebujete stehovat gigabajty a terabajty,
> tak vede ftp rozsirene o stripovani (bbftp, gridftp), tj. otevre si to
> moc socketu a tlaci to data zaroven mnoha TCP/IP streamy.
> U chytre implementace se muze kazdy stream ukladat na jiny fyzicky disk,
> takze sirka pasma je pak plne vyuzita.

Stripovane FTP jsem mel na mysli, ovsem s malym predrazenym filtrem schopnym 
minimalizovat redundantni data. Preci jenom pri dokonale znalosti semantiky 
dat jsi schopen udelat lepsi kompresi nez nad seqencemi bajtu.

Jinak jsem ocekaval, ze gigabytove linky umi bundlovat packety do balicku o 
velikosti tak setiny sirky pasma a kazdych deset milisekund je preposilat 
dal...

> > rekl, nemyslim, ze v soucasne dobe se AZ TAK MOC hledi na vykon. Mnohem
> > levneji vyjde poridit silnejsi linku a cluster Linuxovych pecek nez
> > prodlouzit vyvoj aplikace o mesic a udrzbu rozsirit o deset procent ;-)
>
> No jak zacnes stehovat video, a zjistis, ze hodina v DV kvalite
> ma nejakych 12 Gigabajt, zacnes se poohlizet po vykonu :-)
> A za rohem ceka HDTV video s petinasobnym rozlisenim :-)

Mas-li dostatecny vykon k zaplneni linky, tak nic vic nepotrebujes, i kdybys 
stehoval komletni filmoteku ceske televize v HDTV. (Jinak tady bych urcite 
pouzil Staudkova bernardyna. Jeho pomer sirka pasma ku porizovaci naklady s 
krabickou na sto DVD zavesenou misto soudku rumu na jeho krku je ohromujici. 
Nerku-li pak sirku pasma T813 plne nalozene DVDckama ;-) )
Samozrejme neco jineho je v pripade, kdyz nemas na vstupu video na disku, ale 
video vstup z profesionalni kamery s vysokym rozlisenim a mas to z ni primo 
streamovat na stovky destinaci s gigovou linkou. Ale ukaz mi, kolik takovych 
stanic bys resil architekturou navrzenou tazatelem :-D
-- 
Oto 'tapik' Buchta, [EMAIL PROTECTED]
Senior Engineer, Systinet Corp,
http://www.systinet.com


Re: spojeni aplikace servlet

2005-09-21 Tema obsahu Mat

No nesuvisi to priamo s javou, ale ked sa to tu uz zacalo preberat.. :-)

Pre zaujemcov o maximalne vyuzitie vysokorychlostnych sieti s velkou 
latenciou posielam 2 linky:

Celkom zaujimava studia s velkym mnozstvom odkazov:
http://www.csm.ornl.gov/~dunigan/netperf/bulk.html
A jeden znamy pokus o spojenie vyhod tcp a udp dohromady
http://www.sctp.org/

Ale mam otazku: Neexperimentovali ste na takejto sieti s klasickym NFS 
(samozrejme nad UDP)? Mozno by v takomto specialnom pripade (velka sirka 
+ velka latencia) vyvazil overhead NFS jeho "lepsim" vyuzitim pasma 
pomocou UDP nad klasickym FTP/TCP.



Martin Kuba wrote:

Oto Buchta wrote:

No samozrejme jeste rychlejsi by to melo byt pres Serverovy socket 
honit binarni stream s vlastnim optimalizovanym protokolem. Ale, no, 
jak bych to 



Pokud jde opravdu o vykon, tak je to nase superpocitacova parketa :-)
Do radu stovek megabajtu asi zadny vlastni protokol nepobije klasicke 
ftp, ono koneckoncu nedela nic jineho, nez si pro data otevre TCP/IP

socket a tlaci je binarne, co to jde.

A pokud potrebujete stehovat gigabajty a terabajty,
tak vede ftp rozsirene o stripovani (bbftp, gridftp), tj. otevre si to
moc socketu a tlaci to data zaroven mnoha TCP/IP streamy.
U chytre implementace se muze kazdy stream ukladat na jiny fyzicky disk,
takze sirka pasma je pak plne vyuzita.

Jen tak pro zajimavost, jak se s pripojenim na Internet dostanete
do radu gigabitu a desitek gigabitu (mame tu 10Gb/s), tak zjistite,
ze sirka pasma neni jediny dulezity udaj o siti, protoze
i velice siroka sit muze mit (a na mezikontinentalni vzdalenost ma)
velkou latenci. A protoze TCP/IP si doruceni paketu potvrzuje,
vetsinu casu se ceka na potvrzovaci paket a nic se neodesila.
Pracuje se na nahrade TCP, ktera by dokazala vyuzit i linky
s velkou sirkou pasma, nicmene pokud vim, zatim nikdo nevymyslel
algoritmus pro protokol, ktery by zaroven dokazal linku vyuzit naplno
a zaroven byl ferovy, tj. kdyz v jedne lince bude vic prenosu,
aby si sirku pasma rozdelily rovnym dilem.

Konec exkurze do vysokorychlostnich siti :-)

rekl, nemyslim, ze v soucasne dobe se AZ TAK MOC hledi na vykon. 
Mnohem levneji vyjde poridit silnejsi linku a cluster Linuxovych pecek 
nez prodlouzit vyvoj aplikace o mesic a udrzbu rozsirit o deset 
procent ;-)



No jak zacnes stehovat video, a zjistis, ze hodina v DV kvalite
ma nejakych 12 Gigabajt, zacnes se poohlizet po vykonu :-)
A za rohem ceka HDTV video s petinasobnym rozlisenim :-)

Makub


Re: spojeni aplikace servlet

2005-09-21 Tema obsahu Martin Kuba

Oto Buchta wrote:
No samozrejme jeste rychlejsi by to melo byt pres Serverovy socket honit 
binarni stream s vlastnim optimalizovanym protokolem. Ale, no, jak bych to 


Pokud jde opravdu o vykon, tak je to nase superpocitacova parketa :-)
Do radu stovek megabajtu asi zadny vlastni protokol nepobije klasicke 
ftp, ono koneckoncu nedela nic jineho, nez si pro data otevre TCP/IP

socket a tlaci je binarne, co to jde.

A pokud potrebujete stehovat gigabajty a terabajty,
tak vede ftp rozsirene o stripovani (bbftp, gridftp), tj. otevre si to
moc socketu a tlaci to data zaroven mnoha TCP/IP streamy.
U chytre implementace se muze kazdy stream ukladat na jiny fyzicky disk,
takze sirka pasma je pak plne vyuzita.

Jen tak pro zajimavost, jak se s pripojenim na Internet dostanete
do radu gigabitu a desitek gigabitu (mame tu 10Gb/s), tak zjistite,
ze sirka pasma neni jediny dulezity udaj o siti, protoze
i velice siroka sit muze mit (a na mezikontinentalni vzdalenost ma)
velkou latenci. A protoze TCP/IP si doruceni paketu potvrzuje,
vetsinu casu se ceka na potvrzovaci paket a nic se neodesila.
Pracuje se na nahrade TCP, ktera by dokazala vyuzit i linky
s velkou sirkou pasma, nicmene pokud vim, zatim nikdo nevymyslel
algoritmus pro protokol, ktery by zaroven dokazal linku vyuzit naplno
a zaroven byl ferovy, tj. kdyz v jedne lince bude vic prenosu,
aby si sirku pasma rozdelily rovnym dilem.

Konec exkurze do vysokorychlostnich siti :-)

rekl, nemyslim, ze v soucasne dobe se AZ TAK MOC hledi na vykon. Mnohem 
levneji vyjde poridit silnejsi linku a cluster Linuxovych pecek nez 
prodlouzit vyvoj aplikace o mesic a udrzbu rozsirit o deset procent ;-)


No jak zacnes stehovat video, a zjistis, ze hodina v DV kvalite
ma nejakych 12 Gigabajt, zacnes se poohlizet po vykonu :-)
A za rohem ceka HDTV video s petinasobnym rozlisenim :-)

Makub
--
~~
Supercomputing Center Brno Martin Kuba
Institute of Computer Scienceemail: [EMAIL PROTECTED]
Masaryk University http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775
--


smime.p7s
Description: S/MIME Cryptographic Signature


Re: spojeni aplikace servlet

2005-09-21 Tema obsahu Oto Buchta
On Tuesday 20 of September 2005 15:39, Karel Tejnora wrote:
> Asi bude dobre je prevest, aby je nekdo po ceste neodmitl nezmenil.
> Pokud ale vadi velikost nebo degradace vykonu, pak je mozna dobre se
> zamyslet, jesli reseni pres servlet je take to prave.
> Jestli by napr. DRDA nebylo lepsi.

No samozrejme jeste rychlejsi by to melo byt pres Serverovy socket honit 
binarni stream s vlastnim optimalizovanym protokolem. Ale, no, jak bych to 
rekl, nemyslim, ze v soucasne dobe se AZ TAK MOC hledi na vykon. Mnohem 
levneji vyjde poridit silnejsi linku a cluster Linuxovych pecek nez 
prodlouzit vyvoj aplikace o mesic a udrzbu rozsirit o deset procent ;-)

Navic DRDA mi neprijde jako vhodna volba. To uz bych radeji volil Liquid Data 
- prece jen to ma blize k Internetove architekture a doba cistych relacnich 
databazovych reseni postupne odchazi ...

-- 
Oto 'tapik' Buchta, [EMAIL PROTECTED]
Senior Engineer, Systinet Corp,
http://www.systinet.com


Re: spojeni aplikace servlet

2005-09-20 Tema obsahu Karel Tejnora

Asi bude dobre je prevest, aby je nekdo po ceste neodmitl nezmenil.
Pokud ale vadi velikost nebo degradace vykonu, pak je mozna dobre se 
zamyslet, jesli reseni pres servlet je take to prave.

Jestli by napr. DRDA nebylo lepsi.


Jan Dvořák wrote:

Mimochodem, dokaze SOAP prenest zrovna ta zminovana binarni data tak, 
aby je pro prenos nenafukoval do treba Base64?

Jsem v oboru mydel novackem...



Sice jsem to jeste prakticky nezkousel, ale teoreticky vim, ze to jde,
a to historicky tremi zpusoby, MIME, DIME a MTOM.
Podpora zalezi na pouzite implementaci SOAP. Muj oblibeny
gSOAP umi vsechny, Apache Axis by mela umet MIME a DIME.
MIME je znamo z e-mailu, DIME je totez s binarnimi hlavickami
a MTOM je specifikace od W3C, historicky nejnovejsi.

Makub





Re: spojeni aplikace servlet

2005-09-20 Tema obsahu Martin Kuba

Jan Dvořák wrote:
Mimochodem, dokaze SOAP prenest zrovna ta zminovana binarni data tak, 
aby je pro prenos nenafukoval do treba Base64?

Jsem v oboru mydel novackem...


Sice jsem to jeste prakticky nezkousel, ale teoreticky vim, ze to jde,
a to historicky tremi zpusoby, MIME, DIME a MTOM.
Podpora zalezi na pouzite implementaci SOAP. Muj oblibeny
gSOAP umi vsechny, Apache Axis by mela umet MIME a DIME.
MIME je znamo z e-mailu, DIME je totez s binarnimi hlavickami
a MTOM je specifikace od W3C, historicky nejnovejsi.

Makub
--
~~
Supercomputing Center Brno Martin Kuba
Institute of Computer Scienceemail: [EMAIL PROTECTED]
Masaryk University http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775
--


smime.p7s
Description: S/MIME Cryptographic Signature


Re: spojeni aplikace servlet

2005-09-20 Tema obsahu Jan Dvořák
Mimochodem, dokaze SOAP prenest zrovna ta zminovana binarni data tak, 
aby je pro prenos nenafukoval do treba Base64?

Jsem v oboru mydel novackem...

Honza Dvorak

Karel Tejnora wrote:
Ano mam. Asi tezko shrnu tech mnoho vyhod do nejakeho kratkeho mailu. 
Tak jenom v reakci na popsane reseni.
Ted to jsou nejake binarni data, ktera jsou ulozena asi nekde v DB 
(BLOB ci neco jineho).

Ted je to reseni dostatecne.
Produkci se ale neuplatni nebot bude potreba lepsi kontroly chyb a 
nejake zabezpeceni.
Tedy budeme se servletem zacinat komunikovat tam i zpatky. Pribydou do 
kodu veci jako

int rc = get(...)
if(rc>200 && rc<300) ...
osetreni stavu HTTP, nacitani odpovedi a parsovani dalsich
odpovedi), pridame HTTP auth. Mozna budeme tam chtit dat vicero dat. 
Nebo prizveme dalsi kolegy a budeme jim vysvetlovat tohle bytove pole 
znamena tenhle object, ale musis zavolat predtim metodu a potom b..

Ale vlastne jsme si vytvorili vlastni protokol obaleny v HTTP.
Na coz je SOAP/Apache Axis. Sice to vypada ted jako kanon na vrabce 
ale za tyden,  mesic...


Pavel Kolesnikov wrote:


Dotaz - mate k tomu nejake konkretni *duvody*?

 


Jeste lepe servlet jako SOAP a pouzit Apache AXIS
  

Rád bych se zeptal jak realizovat spojení klasické java aplikace
k servletu? Aplikace odešle binární data a servlet by je měl uložit do
databáze.





Re: spojeni aplikace servlet

2005-09-19 Tema obsahu Karel Tejnora
Ano mam. Asi tezko shrnu tech mnoho vyhod do nejakeho kratkeho mailu. 
Tak jenom v reakci na popsane reseni.
Ted to jsou nejake binarni data, ktera jsou ulozena asi nekde v DB (BLOB 
ci neco jineho).

Ted je to reseni dostatecne.
Produkci se ale neuplatni nebot bude potreba lepsi kontroly chyb a 
nejake zabezpeceni.
Tedy budeme se servletem zacinat komunikovat tam i zpatky. Pribydou do 
kodu veci jako

int rc = get(...)
if(rc>200 && rc<300) ...
osetreni stavu HTTP, nacitani odpovedi a parsovani dalsich
odpovedi), pridame HTTP auth. Mozna budeme tam chtit dat vicero dat. 
Nebo prizveme dalsi kolegy a budeme jim vysvetlovat tohle bytove pole 
znamena tenhle object, ale musis zavolat predtim metodu a potom b..

Ale vlastne jsme si vytvorili vlastni protokol obaleny v HTTP.
Na coz je SOAP/Apache Axis. Sice to vypada ted jako kanon na vrabce ale 
za tyden,  mesic...


Pavel Kolesnikov wrote:


Dotaz - mate k tomu nejake konkretni *duvody*?

 


Jeste lepe servlet jako SOAP a pouzit Apache AXIS
   


Rád bych se zeptal jak realizovat spojení klasické java aplikace
k servletu? Aplikace odešle binární data a servlet by je měl uložit do
databáze.
 



Re: spojeni aplikace servlet

2005-09-19 Tema obsahu Filip Jirsák
To out.flush() v každém cyklu mi přijde zbytečné a zpomalující.
Předpokládám, že je nutné načíst odpověď serveru, jinak se požadavek
řádně neukončí a  servlet se k datům nedostane. Možná by stačilo
přečíst status spojení nebo něco podobného.
Jinak rovněž doporučuji již zmíněnou knihovnou HttpClient z Jakarta
Commons (http://jakarta.apache.org/commons/httpclient/), v Jakarta
Commons jsou myslím i nějaké utility na kopírování Streamů (to
kopírování po bytech mi nepřijde zrovna efektivní :-)
Filip Jirsák

2005/9/19, Martin Chalupa <[EMAIL PROTECTED]>:
> Nastavil jsem metodu POST a uzavřel OutputStream, ale stejně to nefungovalo,
> nakonec jsem to rozchodil takto:
> FileInputStream fin = new FileInputStream("cesta");
>   URL u = new URL( "http://localhost:8080/WebModule1/upload2"; );
>   HttpURLConnection uc = (HttpURLConnection)u.openConnection();
>   uc.setRequestMethod("POST");
>   uc.setDoOutput( true );
>   OutputStream out = uc.getOutputStream();
>   int c;
>   while ((c=fin.read())!=-1){
> out.write(c);
> out.flush();
>   }
>   out.close();
>   fin.close();
>   //bez tohohle to nefunguje, pokud někdo ví proč rád se přiučím
> InputStream in = uc.getInputStream();
> 
> Martin Chalupa
-- 
Filip Jirsák
[EMAIL PROTECTED]


Re: spojeni aplikace servlet

2005-09-19 Tema obsahu Pavel Kolesnikov
Dotaz - mate k tomu nejake konkretni *duvody*?

Pavel

On 9/19/05, Karel Tejnora <[EMAIL PROTECTED]> wrote:
> Jeste lepe servlet jako SOAP a pouzit Apache AXIS
> 
> > Rád bych se zeptal jak realizovat spojení klasické java aplikace
> > k servletu? Aplikace odešle binární data a servlet by je měl uložit do
> > databáze.


RE: spojeni aplikace servlet

2005-09-19 Tema obsahu Martin Chalupa
Nastavil jsem metodu POST a uzavřel OutputStream, ale stejně to nefungovalo,
nakonec jsem to rozchodil takto:
FileInputStream fin = new FileInputStream("cesta");
  URL u = new URL( "http://localhost:8080/WebModule1/upload2"; );
  HttpURLConnection uc = (HttpURLConnection)u.openConnection();
  uc.setRequestMethod("POST");
  uc.setDoOutput( true );
  OutputStream out = uc.getOutputStream();   
  int c;
  while ((c=fin.read())!=-1){
out.write(c);
out.flush();
  }
  out.close();
  fin.close();
  //bez tohohle to nefunguje, pokud někdo ví proč rád se přiučím
InputStream in = uc.getInputStream();

Martin Chalupa

> Filip Jirsák wrote:
> 
> >Podívejte se, co vám HTTPConnection odesílá - jestli není potřeba tam
> >ještě něco z protokolu HTTP nastavit apod. A není potřeba nakonec
> >zavřít OutputSTream?
> >Filip Jirsák
> >
> >
> 
> To je fakt ,som na to zabudol. Defaultna  metoda GET nema body, preto je
> treba nastavit metodu na POST :
> 
> if( uc instanceof HttpURLConnection  ){
> ((HttpURLConnection)uc).setRequestMethod("POST");
>   }




Re: spojeni aplikace servlet

2005-09-19 Tema obsahu Rastislav Rehák
Filip Jirsák wrote:

>Podívejte se, co vám HTTPConnection odesílá - jestli není potřeba tam
>ještě něco z protokolu HTTP nastavit apod. A není potřeba nakonec
>zavřít OutputSTream?
>Filip Jirsák
>  
>

To je fakt ,som na to zabudol. Defaultna  metoda GET nema body, preto je
treba nastavit metodu na POST :

if( uc instanceof HttpURLConnection  ){
((HttpURLConnection)uc).setRequestMethod("POST");
  }




Re: spojeni aplikace servlet

2005-09-19 Tema obsahu Filip Jirsák
Podívejte se, co vám HTTPConnection odesílá - jestli není potřeba tam
ještě něco z protokolu HTTP nastavit apod. A není potřeba nakonec
zavřít OutputSTream?
Filip Jirsák

2005/9/19, Martin Chalupa <[EMAIL PROTECTED]>:
> Něco takového jsem zkoušel, ale bez úspěchu co dělám špatně?
> Servlet:
> metoda service
> 
> ServletInputStream is = request.getInputStream();
>   int x;
>   ByteArrayOutputStream baos = new ByteArrayOutputStream();
>   while ((x=is.read())!=-1){
> baos.write(x);
>   }
> //ulozeni pole bytů
> Aplikace:
> FileInputStream fin = new FileInputStream("cesta_k_souboru");
>   URL u = new URL( "http://localhost:8080/WebModule1/upload2"; );
>   URLConnection uc = u.openConnection();
>   uc.setDoOutput( true );
>   OutputStream out = uc.getOutputStream();
>   uc.connect();
>   int c;
>   while ((c=fin.read())!=-1){
> out.write(c);
>   }
> 
> > Behalf Of Rastislav Rehák wrote:
> >
> > 1. aplikacia odosle data cez URLConnection
> >
> > 2. servlet ich precita cez request.getInputStream() .
> >
> >
> >
> > Martin Chalupa wrote:
> >
> > >Rád bych se zeptal jak realizovat spojení klasické java aplikace k
> > >servletu? Aplikace odešle binární data a servlet by je měl uložit do
> > >databáze.
> > >
> > >Martin Chalupa
> > >
> > >
> > >
> 
> 


-- 
Filip Jirsák
[EMAIL PROTECTED]


Re: spojeni aplikace servlet

2005-09-19 Tema obsahu Rastislav Rehák
1. Na strane aplikacie mi tam chyba zatvorenie streamu a pripadne
nacitanie odpovede;

  out.close();
  BufferedReader in = new BufferedReader( new InputStreamReader(
uc.getInputStream()));
  while( in.readLine()!=null){
// mozno by som mohol precitat daku chybovu hlasku
  }

2. Na kopirovanie zo streamu do streamu sa da pekne pouzit pole bytov

byte buffer = new byte[ 1024 ];
int length = 0;
while( (length=in.read( buffer ))>0 ){
  out.write( buffer,0,length );
}



Martin Chalupa wrote:

>Něco takového jsem zkoušel, ale bez úspěchu co dělám špatně?
>Servlet:
>   metoda service
>   
>   ServletInputStream is = request.getInputStream();
>  int x;
>  ByteArrayOutputStream baos = new ByteArrayOutputStream();
>  while ((x=is.read())!=-1){
>baos.write(x); 
>  }
>   //ulozeni pole bytů
>Aplikace:
>   FileInputStream fin = new FileInputStream("cesta_k_souboru");
>  URL u = new URL( "http://localhost:8080/WebModule1/upload2"; );
>  URLConnection uc = u.openConnection();
>  uc.setDoOutput( true );
>  OutputStream out = uc.getOutputStream();   
>  uc.connect();
>  int c;
>  while ((c=fin.read())!=-1){
>out.write(c);
>  }
>  
>



RE: spojeni aplikace servlet

2005-09-19 Tema obsahu Martin Chalupa
Něco takového jsem zkoušel, ale bez úspěchu co dělám špatně?
Servlet:
metoda service

ServletInputStream is = request.getInputStream();
  int x;
  ByteArrayOutputStream baos = new ByteArrayOutputStream();
  while ((x=is.read())!=-1){
baos.write(x); 
  }
//ulozeni pole bytů
Aplikace:
FileInputStream fin = new FileInputStream("cesta_k_souboru");
  URL u = new URL( "http://localhost:8080/WebModule1/upload2"; );
  URLConnection uc = u.openConnection();
  uc.setDoOutput( true );
  OutputStream out = uc.getOutputStream();   
  uc.connect();
  int c;
  while ((c=fin.read())!=-1){
out.write(c);
  }

> Behalf Of Rastislav Rehák wrote:
> 
> 1. aplikacia odosle data cez URLConnection
> 
> 2. servlet ich precita cez request.getInputStream() .
> 
> 
> 
> Martin Chalupa wrote:
> 
> >Rád bych se zeptal jak realizovat spojení klasické java aplikace k
> >servletu? Aplikace odešle binární data a servlet by je měl uložit do
> >databáze.
> >
> >Martin Chalupa
> >
> >
> >



Re: spojeni aplikace servlet

2005-09-19 Tema obsahu Karel Tejnora

Jeste lepe servlet jako SOAP a pouzit Apache AXIS


Re: spojeni aplikace servlet

2005-09-19 Tema obsahu Jozef Chocholáček

Martin Chalupa wrote:
Rád bych se zeptal jak realizovat spojení klasické java aplikace 
k servletu? Aplikace odešle binární data a servlet by je měl uložit do 
databáze.


  Zapojiť do "klasickej" Java aplikácie HttpClienta z Jakarta Commons - 
http://jakarta.apache.org/commons/httpclient/


J.Ch.
--
Ing. Jozef Chocholacek  Qbizm technologies, a.s.
hlavni analytik ... the art of software.

www.qbizm-technologies.czwww.qbizm.cz  www.qbizm-services.cz


Re: spojeni aplikace servlet

2005-09-19 Tema obsahu Rastislav Rehák
1. aplikacia odosle data cez URLConnection

2. servlet ich precita cez request.getInputStream() .



Martin Chalupa wrote:

>Rád bych se zeptal jak realizovat spojení klasické java aplikace k
>servletu? Aplikace odešle binární data a servlet by je měl uložit do
>databáze.
> 
>Martin Chalupa
>
>  
>



spojeni aplikace servlet

2005-09-19 Tema obsahu Martin Chalupa








Rád bych se zeptal jak realizovat spojení klasické java aplikace k servletu? Aplikace
odešle binární data a servlet by je měl uložit do
databáze.

 

Martin Chalupa