Problem s beznymi WS je ten, ze vsetky data idu v sprave.
Ak pouzivate SOAP over HTTP (klasicky sposob), tak to znamena, ze vas
obrovsky
subor pride ako jedna velka HTTP poziadavka, v ktorej je mnohomegove XML.
A to mnohomegove XML treba naparsovat a podobne, co je mimo pamatovych
moznosti.
Cim chcem povedat len to, ze vidim problem, ale riesenie Vam neporadim
(v pripade HTTP je to podla mojich vedomosti priam nemozne).
On Mon, 06 Apr 2009 15:28:37 +0200, Dusan Zatkovsky <msk.c...@gmail.com>
wrote:
Ahoj.
Snazim sa vyriesit $subj.
Zatial som skusil 2 cesty, ktore som vygooglil. Pomocou ws attachment v
jax ws
a axis2.
jaxws vyzeralo nejak takto:
@WebService ()
@Stateless ()
public class FooWebService {
@WebMethod
public String uploadFileAsAttachment (
@WebParam (name = "fileName") String fileName,
@WebParam (name = "fileContent")
@XmlAttachmentRef () DataHandler fileContent ) throws
IOException
{
...
}
Pre axis2 som upravil saopwithattachments example z
http://ws.apache.org/axis2/1_4_1/userguide-samples.html#others.
Oba priklady som vyskusal s GlassFish2, oba skoncili pri prenose
/etc/passwd
uspesne, ale pri prenose vacsich suborov ( radovo GB, viac ako dostupna
RAM+swap ) po kratkej chvili na chybu suvisiaci s nedostatkom pamati.
Je este nejaka ina cesta, ako prenasat subory pomocou WS? Povodne som
totiz
navrhoval, ze klient si s ws iba pokeca a samotny prenos obstara tretia
strana, pravdepodobne nejaky ssl socket, ktoremu da webservica echo o
klientovi a nejake autorizacne data, ktorymi sa potom klient ohlasi.
Problem
je, ze je to pre mna dalsi overhead, spojeny mimo ineho aj s vecami s
javou
nesuvisiacimi ( povolit dalsie porty u klienta a tak podobne ).
Diky.
--
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/