Announcement Announcement Module
No announcement yet.
Hessian not working Page Title Module
Move Remove Collapse
Conversation Detail Module
  • Filter
  • Time
  • Show
Clear All
new posts

  • Hessian not working

    I am facing problem after moving to Spring 3.0.1.RELEASE and hessian - 4.0.3. I am not making separate servlet for hessian service method and included it in the same dispatcher servlet of the project and using simple url mapping to access exposed service.

    <prop key="/RemoteStaticPageServices">exportedStaticPageServic es</prop>

    <!—Exposing like normal with urlmappinghandler -->
    <bean id="exportedStaticPageServices" class="org.springframework.remoting.caucho.Hessian ServiceExporter">
    <property name="service" ref="remoteStaticPageServices"/>
    <property name="serviceInterface" value=" eServices"/>

    Stack stace of error I am getting is

    javax.servlet.ServletException: No adapter for handler [org.springframework.remoting.caucho.HessianService Exporter@c0ee4]: Does your handler implement a supported interface like Controller?
    at org.springframework.web.servlet.DispatcherServlet. getHandlerAdapter(
    at org.springframework.web.servlet.DispatcherServlet. doDispatch(
    at org.springframework.web.servlet.DispatcherServlet. doService(
    at org.springframework.web.servlet.FrameworkServlet.p rocessRequest(
    at org.springframework.web.servlet.FrameworkServlet.d oPost(
    at javax.servlet.http.HttpServlet.service(HttpServlet .java:637)
    at javax.servlet.http.HttpServlet.service(HttpServlet .java:717)
    at ternalDoFilter(
    at Filter(
    at doFilter(
    at org.springframework.web.filter.DelegatingFilterPro xy.invokeDelegate(
    at org.springframework.web.filter.DelegatingFilterPro xy.doFilter(
    at ternalDoFilter(
    at Filter(
    at com.opensymphony.module.sitemesh.filter.PageFilter .parsePage(
    at com.opensymphony.module.sitemesh.filter.PageFilter .doFilter(
    at ternalDoFilter(
    at Filter(
    at sionInViewFilter.doFilterInternal(OpenSessionInVie
    at org.springframework.web.filter.OncePerRequestFilte r.doFilter(
    at ternalDoFilter(
    at Filter(
    at org.apache.catalina.core.StandardWrapperValve.invo ke(
    at org.apache.catalina.core.StandardContextValve.invo ke(
    at org.apache.catalina.core.StandardHostValve.invoke(
    at org.apache.catalina.valves.ErrorReportValve.invoke (
    at org.apache.catalina.core.StandardEngineValve.invok e(
    at org.apache.catalina.connector.CoyoteAdapter.servic e(
    at org.apache.coyote.http11.Http11Processor.process(H
    at org.apache.coyote.http11.Http11Protocol$Http11Conn ectionHandler.process(

  • #2
    Problem resolved

    I work with Surjeet, the problem turned out to be down to an unrelated change in the Spring MVC dispatcher servlet configuration file, and not to do with the Spring 3 upgrade.

    That change was to specify a HandlerMapping to also handle annotation driven REST controllers. And in the dispatcher servlet, if you name a HandlerMapping, you need to explicitly name all the others you use, which are there by default, if none are mentioned. So the fix was to declare a HttpRequestHandlerAdapter bean to handle the Hessian call.