je v tom hrozny hokej, nemohla byste lepe pospat Vas problem.

- Mate nekolik Java klientu nebo jednoho Java klienta
- Ten klient pouziva nekolik vlaken nebo jedno vlakno.
- Pokud nekolik vlaken, jakym zpusobem posilaji pozadavky na server
- HttpURLConnection, je sdilena mezi vlakny nebo ma kazde vlakno vlastni.
- pouziva se HttpURLConnection jako persistent conection, pokud ano chodi vam tam ty data dobre


[EMAIL PROTECTED] napsal(a):

Ahoj,

connect neděláme, to dělá implicitně nějaká metoda (asi getOutputStream nebo getInputStream), kterou voláme. disconnect neděláme - v JavaDoc píšou, že tato metoda indikuje, že další dotazy na server jsou nepravděpodobné (což není náš případ).

dík všem
Kačka



*"Jiri Fabian" <[EMAIL PROTECTED]>*
Sent by: [EMAIL PROTECTED]

17.10.2006 16:59
Please respond to
Java <[email protected]>


        
To
        "'Java'" <[email protected]>
cc
        
Subject
        RE: pomíchaná vlákna


        







Cau,

nezapominate na klientovi volat na te HttpUrlConnection connect() resp. disconnect()?

Mej se,

fil


------------------------------------------------------------------------



*From:[EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] *On Behalf Of [EMAIL PROTECTED]
*Sent:* Tuesday, October 17, 2006 1:48 PM
*To:* Java
*Subject:* Re: pomíchaná vlákna


Ahoj, je to takto:

Kde to máme pomíchané, to nevíme. Víme toto:

ODESÍLATEL:

  public static HttpURLConnection post (
    URL fo_url,
    Document fo_xml
  )
  {
    HttpURLConnection lo_connection;  // konexe na server
    try  // pripoj se na server
    {
      // otevri konexi na server
      lo_connection = (HttpURLConnection) fo_url.openConnection ();
      lo_connection.setDoInput (true);  // povol cteni
      lo_connection.setDoOutput (true);  // povol zapis
      lo_connection.setUseCaches (false);  // zakaz cache
      lo_connection.setRequestMethod ("POST");  // budem POSTovat
      lo_connection.setRequestProperty ("Content-Type",
        "text/xml; charset=UTF-8");

    ByteArrayOutputStream lo_buf = new ByteArrayOutputStream ();

      getXmlTransformer ().transform (new DOMSource (fo_xml),
        new StreamResult (lo_buf));

bigLog.info ("Posilam stream: [\n" + lo_buf.toString () + "\n]"); // tady je to ještě OK

            OutputStream lo_out = lo_connection.getOutputStream ();
        lo_out.write (lo_buf.toByteArray ());
        lo_out.close ();
    }


SERVLET:

  public void doPost (
    HttpServletRequest fo_req,   // I: HTTP request
    HttpServletResponse fo_res    // O: HTTP response
  )
  {
    InputStream lo_in = fo_req.getInputStream ();  // ziskej vstupni stream

          ByteArrayOutputStream lo_input = new ByteArrayOutputStream ();
          for (;;)
          {
            byte [] lan_buffer = new byte [2048];
            int ln_bytesRead = lo_in.read (lan_buffer);
            if (-1 == ln_bytesRead) break;
lo_input.write (lan_buffer, 0, ln_bytesRead); // tady už to je pomíchané
          }

Dík
Katka



*Martin Kuba <[EMAIL PROTECTED]>*
Sent by: [EMAIL PROTECTED]

16.10.2006 16:57

Please respond to
Java<[email protected]>





        

To

        
Java<[email protected]>

cc

        
Subject

        
Re: pomíchaná vlákna












Kdyz mate vsechno v poradku, tak k problemum nemuze dochazet ;-)

Zkuste pouzit TCPMon, viz
http://ws.apache.org/commons/tcpmon/tcpmontutorial.html
aspon poznate, jestli je chyba na klientovi nebo na serveru.

Makub

[EMAIL PROTECTED] wrote:
 >
 >  ano, mame reentrantni metody, kontrovali jsme to ;-(
 >
 > *On Mon, 16 Oct 2006 16:12:36 +0200, Katerina.Molnarova wrote*
 >  >  zdravím,
 >  > používáme toto  nastavení:
 >  >
 >  > <Connector  port="8084" maxHttpHeaderSize="8192"
 >  >           *  maxThreads="150" minSpareThreads="25"
 >  maxSpareThreads="75"*
> > enableLookups="false" redirectPort="8443" acceptCount="100"
 >  >             connectionTimeout="20000" disableUploadTimeout="true"  />
 >  >
 >  > Při zpracování se spouští až  300 vláken, ale kluci se tváří, že je
 > to v  pohodě.
 >  >
 >  >
 >
 > Mate urcite  vsechny metody servletu reentrantni?
 > Pokud si dobre pamatuji, tak ve specifikaci  servlet API je, server
 > vytvori  singleton  instanci tridy servletu a potom  ji pouziva z vice
 > vlanek najednou.
 > Takze pokud neni kod reentrantni mouhou se dit zajimave veci.
 >
 > A jak poznate, ze je kod reentrantni:
 >  zejmena nepouzivate v metodach jine, nez lokalni promene - "alokovane
 > na zasobnik" (tj. nikoliv atributy objektu)
 >
 >
 >    Lukas
 >


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

--
S pozdravem Roman "Dagi" Pichlik

/* http://www.sweb.cz/pichlik/ Blog pro kodery */


______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email ______________________________________________________________________

Odpovedet emailem