[jboss-jira] [JBoss JIRA] Commented: (JBMESSAGING-1131) Add configuration for Remoting servlet transport
Howard Gao (JIRA)
jira-events at lists.jboss.org
Thu Jan 22 01:31:05 EST 2009
[ https://jira.jboss.org/jira/browse/JBMESSAGING-1131?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12449133#action_12449133 ]
Howard Gao commented on JBMESSAGING-1131:
-----------------------------------------
Hi Ron, just tried http-tests in JBM, found two failures concerning callback poll period. for instance in test we pass in a sys property:
String pollPeriod = "654";
System.setProperty("jboss.messaging.callback.pollPeriod", pollPeriod);
later we check if this takes effect, and failed, it turns out the default value (5000) is always used. The other tests is try to check if this parameter takes effect when configured in the remoting config files.
See the RemotingConnectionConfigurationTest for details. I also tried your latest remoting jar (included in your example EJB3-JBM-Servlet-Example) and got the same test failures.
> Add configuration for Remoting servlet transport
> ------------------------------------------------
>
> Key: JBMESSAGING-1131
> URL: https://jira.jboss.org/jira/browse/JBMESSAGING-1131
> Project: JBoss Messaging
> Issue Type: Task
> Reporter: Ron Sigal
> Assignee: Howard Gao
> Fix For: 1.4.0.SP3.CP06, 1.4.3.GA
>
> Attachments: build.xml, code_changes.zip, messaging-servlet-service.xml, remoting-servlet-service.xml, ServletExample.java, web.xml
>
>
> In addition to the "http" transport, Remoting also has the http-based "servlet" transport. The servlet transport is the same as the http transport on the client side (they both use org.jboss.remoting.transport.http.HTTPClientInvokr), but they are different on the server side. In particular, CoyoteInvoker, the http transport server invoker, uses the network layer of tomcat/jbossweb, i.e., a ServerSocket with worker threads. But in the servlet transport, a org.jboss.remoting.transport.servlet.web.ServerInvokerServlet fields invocations and passes them to org.jboss.remoting.transport.servlet.ServletServerInvoker. The advantage, which came up in a forum thread recently (http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4098850#4098850 and http://www.jboss.com/index.html?module=bb&op=viewtopic&t=122218 ), is that only one ServerSocket is used. In principle, it's the appropriate transport to use when the server is running inside JBossAS. In fact, the wiki page "Accessing_EJB3s_over_HTTP_HTTPS" shows how to change the EJB3 transport from socket to servlet. However, there have been a couple of problems. For one, ServletServerInvoker has been a little behind CoyoteInvoker in its development, though I've been rectifying that (JBREM-675 "Problems with Servlet invoker"). For another, the servlet transport needs tomcat/jbossweb for unit testing, and we've never automated that, so it's not as well tested as CoyoteInvoker (JBREM-139 "need automated test for servlet server invoker"). However, I wanted to verify that JBossMessaging can run with the servlet transport, so I created a servlet example, parallel to the http example, along with the supporting configuration files, and it works.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list