I tested the mod_proxy_http, in the last post you can see the config
that I used.
But in Comet HTTP streaming, I found mod_proxy blocked the response
until server close the
stream (after timeout), then send the whole response to client at
once.

In the first time I was wrong because I thought that if I put
timeout=1 I found the solution but Its not real because the server
close the conection after timeout

In the five post of mine is an example of the problem.

This dude has a similar problem: 
http://forums.java.net/jive/thread.jspa?threadID=41377

I am hopeless :(

On 21 feb, 03:21, dablack <[email protected]> wrote:
> Sorry to lead you on a wild goose chase. I guess you will have to use
> the Apache mod_proxy_http module with the Tomcat NIO connector using
> the http protocol after all. I don't have any experience with the
> mod_proxy_http module at all so not really anything I can help you
> with.
>
> Good luck.
>
> On Feb 20, 7:21 pm, Fran <[email protected]> wrote:
>
> > The problem persist with the news changes.
> > Seems that apache cant connect to tomcat :(
> > The error log of apache and mod_jk dont show nothing. Not ever nio conection
> > stablished
>
> > 2010/2/21 dablack <[email protected]>
>
> > > I borrowed that connector configuration from a website I came across.
> > > I'm not sure why port=0 either. If I put more research into the NIO
> > > connector I could probably find out. Why don't you try adding the
> > > lines,
>
> > > enableLookups="false"
> > > scheme="http"
>
> > > to the NIO connector configuration in the server.xml file that I gave
> > > you earlier.
>
> > > As far as accessing the ajp service usinghttp://localhost:8009/servlet,
> > > that will not work. Your browser uses the http protocol and the 8009
> > > port is being serviced by the ajp protocol. You should still have your
> > > connector using the http protocol configured to listen on port 8081.
>
> > > Hopefully the scheme line above will help the NIO connector
> > > communicate back to Apache.
>
> > > On Feb 20, 4:45 pm, Fran <[email protected]> wrote:
> > > > I test your config, dablack, but I cant connect to the servlet.
> > > > With this config I cant access not even to:http://localhost:8009/servlet
> > > > that is tomcat directly without apache
>
> > > > On 20 feb, 23:36, Fran <[email protected]> wrote:
>
> > > > > I cant undestand why this config:
>
> > > > > <Connector protocol="AJP/1.3" port="0" channelNioSocket.port="8009"
> > > > > channelNioSocket.maxThreads="
> > > > > 150"
> > > > >   channelNioSocket.maxSpareThreads="50"
> > > > > channelNioSocket.minSpareThreads="25"
> > > > >   channelNioSocket.bufferSize="16384" />
>
> > > > > Why port 0 ?
>
> > > > > 2010/2/20 dablack <[email protected]>
>
> > > > > > Fran,
>
> > > > > > I'm really not an expert on setting up the connection between Apache
> > > > > > and Tomcat but I believe that the connections only operate in two
> > > > > > protocols: http or ajp. NIO is a Tomcat connector that can
> > > communicate
> > > > > > in either http or ajp. Because of that, I don't see any reason that
> > > > > > the Apache mod_jk connector module couldn't communicate with the NIO
> > > > > > connector. Since I don't use an NIO connector I could be wrong, but
> > > > > > that is the way I see it. As a starting point, try these
> > > > > > configurations:
>
> > > > > > server.xml
>
> > > > > > <Connector protocol="AJP/1.3" port="0" channelNioSocket.port="8009"
> > > > > > channelNioSocket.maxThreads="150"
> > > > > >   channelNioSocket.maxSpareThreads="50"
> > > > > > channelNioSocket.minSpareThreads="25"
> > > > > >   channelNioSocket.bufferSize="16384" />
>
> > > > > > (You seem to want to use port 8081 which should be fine, but the
> > > > > > standard ajp port is 8009. However, I wouldn't put it on port 8081 
> > > > > > if
> > > > > > you are already using that port for another protocol such as http.)
>
> > > > > > httpd.conf
>
> > > > > > LoadModule jk_module modules/mod_jk.so
> > > > > > JkWorkersFile conf/workers.properties
> > > > > > JkLogFile /var/log/httpd/mod_jk.log
> > > > > > JkLogLevel info
> > > > > > JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
> > > > > > JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
> > > > > > JkRequestLogFormat "%w %V %T"
> > > > > > JkMount /*.svc ajp13
>
> > > > > > (For the JkMount I use *.svc because I use the svc extension for my
> > > > > > GWT service target to differentiate service points from other 
> > > > > > files.)
>
> > > > > > (For example, in my web.xml file I will map my service something 
> > > > > > like
> > > > > > this to use the svc extension:
> > > > > > <servlet>
> > > > > >   <servlet-name>MyService</servlet-name>
> > > > > >   <servlet-class>com.mysite.server.MyServiceImpl</servlet-class>
> > > > > > </servlet>
> > > > > > <servlet-mapping>
> > > > > >   <servlet-name>MyService</servlet-name>
> > > > > >   <url-pattern>/MyService.svc</usr-pattern>
> > > > > > </servlet-mapping>
>
> > > > > > And in my GWT code I create my service target like this:
>
> > > > > > target.setServiceEntryPoint( GWT.getModuleBaseURL() +
> > > > > > "MyService.svc" );
>
> > > > > > I did this because I had troubles with the 'JkMount /* ajp13' entry,
> > > > > > but when I used /*.svc the problems cleared up.)
>
> > > > > > workers.properties
>
> > > > > > workers.tomcat_home=/usr/tomcat/apache-tomcat-6.0.16
> > > > > > workers.java_home=/usr/java/jdk1.6.0_06
> > > > > > worker.list=ajp13
> > > > > > worker.ajp13.port=8009
> > > > > > worker.ajp13.host=localhost
> > > > > > worker.ajp13.type=ajp13
> > > > > > worker.ajp13.lbfactor=1
> > > > > > worker.loadbalancer.type=lb
> > > > > > worker.loadbalancer.balance_workers=ajp13
>
> > > > > > (Of course, match the ajp port in the workers.property file to the
> > > > > > port you define in the server.xml file. Also, if your Tomcat is not
> > > on
> > > > > > the same server as your Apache you will need to change the localhost
> > > > > > host entry to the correct host URL.)
>
> > > > > > I hope this helps.
>
> > > > > > On Feb 20, 12:51 pm, Fran <[email protected]> wrote:
> > > > > > > Bad notices.
>
> > > > > > > This dude has same problem that me and he was answered that mod_jk
> > > > > > > dont support NIO
>
> > > > > > > http://www.mail-archive.com/[email protected]/msg67701.html
>
> > > > > > > :(
>
> > > > > > > On 20 feb, 19:13, Fran <[email protected]> wrote:
>
> > > > > > > > Here the error when I change the protocol of
> > > > > > > > protocol="org.apache.coyote.http11.Http11NioProtocol" to
> > > protocol="AJP/
> > > > > > > > 1.3"
>
> > > > > > > > [error] jk_ajp_common.c (1962): (worker1) Tomcat is down or
> > > refused
> > > > > > > > connection. No response has been sent to the client (yet)
> > > > > > > > [error] jk_ajp_common.c (2466): (worker1) connecting to tomcat
> > > failed.
>
> > > > > > > > On 20 feb, 19:04, Fran <[email protected]> wrote:
>
> > > > > > > > > Should be due to protocol.
> > > > > > > > > My messenger seems that need NIO protocol but if I put the NIO
> > > > > > > > > protocol MOD_JK cant conect apache with tomcat
>
> > > > > > > > > If I use this tomcat config, mod_jk cant conect apache with
> > > tomcat.
>
> > > > > > > > > <Connector
> > > > > > > > > connectionTimeout="20000"
> > > > > > > > > port="8081"
> > > > > > > > > protocol="org.apache.coyote.http11.Http11NioProtocol"
> > > > > > > > > maxThreads="5"
> > > > > > > > > acceptorThreadCount="2"
> > > > > > > > > redirectPort="8443"
> > > > > > > > > socket.directBuffer="false" />
>
> > > > > > > > > If I use the last tomcat config, tomcat cant execute the
> > > servlet.
> > > > > > > > > This is the error log:
>
> > > > > > > > > GRAVE: Error, processing connection
> > > > > > > > > java.lang.IndexOutOfBoundsException
> > > > > > > > >         at java.io.BufferedInputStream.read(Unknown Source)
> > > > > > > > >         at
> > > > > > org.apache.jk.common.ChannelSocket.read(ChannelSocket.java:620)
> > > > > > > > >         at
> > > > > > org.apache.jk.common.ChannelSocket.receive(ChannelSocket.java:577)
> > > > > > > > >         at
>
> > > org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:
> > > > > > > > > 685)
> > > > > > > > >         at org.apache.jk.common.ChannelSocket
> > > > > > > > > $SocketConnection.runIt(ChannelSocket.java:889)
> > > > > > > > >         at org.apache.tomcat.util.threads.ThreadPool
> > > > > > > > > $ControlRunnable.run(ThreadPool.java:690)
> > > > > > > > >         at java.lang.Thread.run(Unknown Source)
>
> > > > > > > > > On 20 feb, 18:49, Fran <[email protected]> wrote:
>
> > > > > > > > > > I am configuring mod_jk
>
> > > > > > > > > > For tomat, in server.xml :
>
> > > > > > > > > > <Connector
> > > > > > > > > > connectionTimeout="20000"
> > > > > > > > > > port="8081"
> > > > > > > > > > protocol="AJP/1.3"
> > > > > > > > > > maxThreads="5"
> > > > > > > > > > acceptorThreadCount="2"
> > > > > > > > > > redirectPort="8443"
> > > > > > > > > > socket.directBuffer="false" />
>
> > > > > > > > > > For apache, in httpd.conf :
>
> > > > > > > > > > <IfModule mod_jk.c>
> > > > > > > > > >         JkWorkersFile "/etc/httpd/conf/workers.properties"
> > > > > > > > > >         JkLogFile "/etc/httpd/logs/mod_jk.log"
> > > > > > > > > >         JkLogLevel warn
> > > > > > > > > >         JkMount /msn/* worker1
> > > > > > > > > > </IfModule>
>
> > > > > > > > > > The result is that the url:
> > > > > >http://localhost/msn/Messenger.htmlworks,
> > > > > > > > > > but this html conects to servelet that not work.
> > > > > > > > > > The mod_jk runs html in apache that fisically are in tomcat,
> > > but
> > > > > > cant
> > > > > > > > > > run the servlet.
>
> > > > > > > > > > ¿Is necesary some special configure?
>
> > > > > > > > > > Thanks!
>
> > > > > > > > > > On 20 feb, 16:04, Fran <[email protected]> wrote:
>
> > > > > > > > > > > Ok, thanks.
>
> > > > > > > > > > > I will test mod_jk. I tested jk but i couldnt to run it in
> > > tomcat
> > > > > > 6.
> > > > > > > > > > > Im going to test jk one more time.
>
> > > > > > > > > > > Thanks a lot!
>
> > > > > > > > > > > On 20 feb, 03:46, Chris Lercher <[email protected]>
> > > wrote:
>
> > > > > > > > > > > > The timeout is for the max time the app server gets to
> > > respond.
> > > > > > If it
> > > > > > > > > > > > closes the connection earlier (which it should do, once
> > > it
> > > > > > sends its
> > > > > > > > > > > > response), then the delay is shorter. This is what long
> > > polling
> > > > > > is all
> > > > > > > > > > > > about. So if you set the delay to 15 seconds, it doesn't
> > > mean
> > > > > > you have
> > > > > > > > > > > > to wait for 15 seconds every time. That's only, when the
> > > server
> > > > > > > > > > > > doesn't send the response within 15 seconds.
>
> > > > > > > > > > > > But as dablack says, probably mod_jk is the better
> > > solution
> > > > > > anyway.
> > > > > > > > > > > > However, like I said earlier, there may be
>
> ...
>
> leer más »

-- 
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.

Reply via email to