OpenAMF and Tomcat's Http11NioProtocol connector

"Stu Thompson" <[email protected]> Thu, 9 Aug 2007 15:37:34 +0200
Newsgroups gmane.comp.java.openamf.user
Message-ID <[email protected]>
Hi all,

 

Has anyone every successfully used OpenAMF with Tomcat's
Http11NioProtocol connector before?  I have an installation of my
application where ARP is not going to work and wanted to use the
Http11NioProtocol instead.    

 

The problem is, within OpenAMF I am getting a DataInputStream EOF error
while parsing the headers.  (Note that Http11NioProtocol is non-blocking
on request headers.)  The only three solutions that I can think of are:

  

a)       don't use Http11NioProtocol (which performs better than the
standard connector)

b)       find a way to make Http11NioProtocol request header reads
blocking

c)       find a way to make OpenAMF read  non-blocking headers

 

Your thoughts and experiences would be appreciated.  

 

Cheers,

 

Stu

 

 

 

Tomcat connector reference:
http://tomcat.apache.org/tomcat-6.0-doc/config/http.html 

 

 

07-08-09 15:34:39.060 {INFO} org.openamf.io.AMFDeserializer.<init>() @75
Deserializing Message, for more info turn on debug level

07-08-09 15:34:39.071 {ERROR}
com.xtendx.simplex.xbend.service.GatewayAmf0.deserializeAMFMessage_aroun
dBody0() @60  Failed to deserialize AMF message

java.io.EOFException

        at
java.io.DataInputStream.readUnsignedShort(DataInputStream.java:310)

        at
org.openamf.io.AMFDeserializer.readHeaders(AMFDeserializer.java:98)

        at
org.openamf.io.AMFDeserializer.<init>(AMFDeserializer.java:80)

        at
org.openamf.DefaultGateway.deserializeAMFMessage(DefaultGateway.java:162
)

        at
com.xtendx.simplex.xbend.service.GatewayAmf0.deserializeAMFMessage_aroun
dBody0(GatewayAmf0.java:57)

        at
com.xtendx.simplex.xbend.service.GatewayAmf0.deserializeAMFMessage_aroun
dBody1$advice(GatewayAmf0.java:182)

        at
com.xtendx.simplex.xbend.service.GatewayAmf0.deserializeAMFMessage(Gatew
ayAmf0.java:1)

        at org.openamf.DefaultGateway.service(DefaultGateway.java:85)

        at
com.xtendx.simplex.xbend.service.GatewayAmf0.service(GatewayAmf0.java:87
)

        at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:290)

        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)

        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:230)

        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:175)

        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:128)

        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:104)

        at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563
)

        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:109)

        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:2
61)

        at
org.apache.coyote.http11.Http11NioProcessor.process(Http11NioProcessor.j
ava:896)

        at
org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.proce
ss(Http11NioProtocol.java:705)

        at
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.j
ava:2049)

        at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecuto
r.java:650)

        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.ja
va:675)

        at java.lang.Thread.run(Thread.java:595)

07-08-09 15:34:39.072 {DEBUG} org.openamf.DefaultGateway.service() @90
REQUEST:

null

 

07-08-09 15:34:39.073 {ERROR}
org.openamf.DefaultGateway.logRequestException() @149  Error in service

java.lang.NullPointerException

        at
org.openamf.DefaultGateway.processMessage(DefaultGateway.java:195)

        at org.openamf.DefaultGateway.service(DefaultGateway.java:96)

        at
com.xtendx.simplex.xbend.service.GatewayAmf0.service(GatewayAmf0.java:87
)

        at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:290)

        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)

        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:230)

        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:175)

        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:128)

        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:104)

        at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563
)

        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:109)

        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:2
61)

        at
org.apache.coyote.http11.Http11NioProcessor.process(Http11NioProcessor.j
ava:896)

        at
org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.proce
ss(Http11NioProtocol.java:705)

        at
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.j
ava:2049)

        at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecuto
r.java:650)

        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.ja
va:675)

        at java.lang.Thread.run(Thread.java:595)

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/

_______________________________________________
Openamf-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openamf-user