2009-11-19 4 views
5

Ho un servlet CometProcessor che funziona bene in Apache Tomcat. Il mio ingresso connettore server.xml è:Tomcat CometProcessor NIO servito tramite httpd di Apache?

<Connector connectionTimeout="20000" port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol" redirectPort="8443"/> 

posso colpire il servlet (chiamato 'EventBus') con un URL per Tomcat direttamente in questo modo:

http://xyz.com:8080/EventBus

Ho Apache HTTPD servire up .jsp file e servlet con un workers.properties di base di file con un lavoratore come:

worker.ajp13w.type=ajp13 
worker.ajp13w.host=localhost 
worker.ajp13w.port=8009 

Questo funziona bene con tutto, ma il mio Servlet CometProcessor. Quando provo a colpire questo servlet ottengo:

HTTP method GET is not supported by this URL 

Qualcuno sa come alle richieste correttamente avanti da Apache httpd di Apache Tomcat per una connessione NIO come un CometProcessor?

Grazie per qualsiasi aiuto.

risposta

2

Non penso che sia possibile utilizzare CometProcessor con Apache. CometProcessor richiede l'I/O asincrono, è impossibile farlo tramite Apache httpd.

JK non funziona con certezza perché solo i connettori APR e NIO supportano CometProcessor.

Potrebbe essere possibile utilizzare mod_proxy per inoltrare la connessione al connettore NIO ma non si otterrà l'evento in modo asincrono.