`
weishuwei
  • 浏览: 324796 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

HessianServiceExporter only supports POST requests异常

阅读更多
服务端配置:
web.xml配置:
xml 代码
 
  1. <servlet>  
  2.     <servlet-name>remote</servlet-name>  
  3.     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  
  4.     <load-on-startup>1</load-on-startup>  
  5. </servlet>  
  6.   
  7. <servlet-mapping>  
  8.     <servlet-name>remote</servlet-name>  
  9.     <url-pattern>/remote/*</url-pattern>  
  10. </servlet-mapping>  

remote-servlet.xml配置:
xml 代码
 
  1. <bean name="/authService"  
  2.         class="org.springframework.remoting.caucho.HessianServiceExporter">  
  3.     <property name="service">  
  4.         <ref local="authService"/>  
  5.     </property>  
  6.     <property name="serviceInterface">  
  7.         <value>暴露的接口</value>  
  8.     </property>  
  9. </bean>  

客户端配置:

applicationContext-remote.xml
xml 代码
 
  1. <bean id="remoteAuthService" class="org.springframework.remoting.caucho.HessianProxyFactoryBean">  
  2.     <property name="serviceUrl">  
  3.         <value>IP:port/remote/authService</value>  
  4.     </property>  
  5.     <property name="serviceInterface">  
  6.         <value>远程接口</value>  
  7.     </property>  
  8. </bean>  

当启动客户端时,服务端会抛出如下异常:
 2007-5-12 13:22:25 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet remote threw exception
javax.servlet.ServletException: HessianServiceExporter only supports POST requests
我们用servlet的init初始化启动数据(该servlet为启动加载类),在init方法里有远程调用,我刚开始以为是因为在该方法中远程调用,所以会引发上面异常,但我把这个启动加载的servelt注释掉还是会抛出异常,不知道为什么,请~!!!!!!!

注:该异常并不影响我们的远程操作,但启动时抛出个异常,毕竟不爽,希望遇到各位朋友能帮忙解答一下,在此谢谢啦
分享到:
评论
2 楼 weishuwei 2007-05-12  
Re:愚人
这个异常是启动加载的,我除了这些配置外,只是作了一个启动加载的servlet,但我测试过,并不是这里的问题。所以问题应该不是你所说的那样
1 楼 愚人 2007-05-12  
你的客户端在启动时候就发送了GET请求去你的HESSIAN服务器端了吗?
HESSIAN是不支持POST以外的其他HTTP请求的,仔细检查你的客户端启动的代码看看是不是有POST以外的请求发给HESSIAN。

相关推荐

    SpringMVC整合Hessian简单案例

    &lt;bean id="userServiceExporter" class="org.springframework.remoting.caucho.HessianServiceExporter"&gt; ``` 在服务器端配置完成后,我们可以通过`index.jsp`页面来测试Hessian服务是否正常工作。可以创建...

    Hessian与spring整合

    5. **异常处理与事务管理**:整合Hessian与Spring后,我们可以利用Spring的异常处理机制和事务管理功能。例如,当远程调用抛出异常时,Spring可以捕获并进行统一处理;同时,我们可以在方法上添加@Transactional注解...

    Spring整合Hessian访问远程服务

    在IT行业中,Spring框架是Java领域最常用的轻量级应用框架之一,而Hessian则是一种高效的RPC(Remote Procedure Call)协议,它允许我们通过HTTP协议透明地调用远程服务,就像调用本地方法一样。...

    Spring中集成Hessian的问题

    &lt;bean id="hessianServiceExporter" class="org.springframework.remoting.caucho.HessianServiceExporter"&gt; ``` 或者在web.xml中配置HessianServlet: ```xml &lt;servlet-name&gt;HessianServlet ...

    spring使用注解暴露remoting服务

    如果方法中发生异常,事务会被回滚,这为开发者提供了便捷的事务管理能力。 至于Hessian,它是一种二进制的RPC协议,由Apache Commons Hessian项目提供。HessianWeb可能是一个用于处理Hessian协议的工具或者服务端...

    hessian学习实例

    HessianServiceExporter exporter = new HessianServiceExporter(); exporter.setService(myService); exporter.setServiceInterface(MyService.class); return exporter; } } ``` 在client端,我们需要配置`...

    使用hessian简单使用【续】- 与spring结合使用

    2. 异常处理:Hessian服务调用可能会出现网络异常、序列化异常等问题,需要在客户端进行异常捕获和处理。 3. 性能优化:Hessian虽然性能优于纯HTTP,但在高并发场景下仍需考虑服务端的负载均衡和缓存策略。 通过...

    flex_spring_hessian框架(Java部分)

    5. **异常处理**:在出现错误时,Hessian会抛出异常信息,这些异常需要在客户端适当地捕获和处理。 6. **优化与调试**:为了提升性能,我们可以调整Hessian的缓冲区大小,或者使用压缩来减小数据传输量。同时,通过...

    jinrongjuClient

    首先,我们需要在Spring的配置文件中定义一个HessianServiceExporter,这个组件是服务提供者端用于发布Hessian服务的关键。然后,配置一个HessianProxyFactoryBean,它是服务消费者端用来创建Hessian客户端代理的...

    hession整合spring

    在Spring中,我们可以使用`HessianServiceExporter`或`HessianProxyFactoryBean`来实现这一目标。服务提供者将服务组件声明为Spring Bean,并使用`HessianServiceExporter`导出为Hession服务。而服务消费者同样在...

    外部接口调用 使用spring4+hessian4实例(二)

    3. **异常处理**:在服务端和客户端都需要进行异常捕获和处理,确保错误信息能准确传递。 总结,Spring 4结合Hessian 4提供了简单、高效的远程服务调用解决方案。通过这个实例,我们可以了解到如何在Spring应用中...

    hessian+spring

    当客户端需要调用远程服务时,它会将请求参数序列化为Hessian格式的数据包并通过HTTP POST请求发送到服务器。服务器接收到请求后,解析Hessian格式的数据包并执行相应的业务逻辑,然后将结果也序列化为Hessian格式的...

    基于Spring的远程访问与Web Service

    RMI允许对象方法跨虚拟机(VM)边界被调用,Spring通过`java.rmi.Remote`接口和`java.rmi.RemoteException`异常处理机制,简化了RMI的配置和使用,使得开发者可以更容易地创建和消费RMI服务。 ### 2. HTTP Invoker ...

    hessian简单实例

    Hessian是一种二进制协议,它允许Java和.NET应用程序之间进行高效的远程方法调用(RMI)。...Hessian提供了序列化和反序列化...在实际开发中,你可能需要根据具体需求进行调整和优化,例如添加异常处理、性能监控等功能。

    Hessian源码示例

    你需要提供一个实现业务逻辑的对象和一个服务接口,HessianServiceExporter会处理剩下的工作。 - **HessianSerializer**:负责对象的序列化和反序列化。它将.NET对象转换为Hessian二进制格式,以便在网络上传输,...

    外部接口调用 使用spring4+hessian4实例

    对于源码探索,你可以查看Spring的`HessianServiceExporter`和`HessianProxyFactory`类,理解它们如何处理服务的发布和消费。对于工具的使用,你可以借助IDE如IntelliJ IDEA或者Eclipse进行代码编写,使用Postman等...

    hessian与spring整合的jar包

    1. **Spring核心模块**(spring-core-3.2.0.RELEASE.jar):这是Spring框架的基础,提供了基本的IoC(Inversion of Control)和DI功能,以及资源加载和异常处理机制。 2. **Spring上下文模块**(spring-context-...

    Spring hession Service Test项目

    &lt;bean id="userServiceExporter" class="org.springframework.remoting.caucho.HessianServiceExporter"&gt; ``` 这样,我们就将`UserService`暴露为一个Hessian服务。然后,在客户端,我们需要创建一个`...

    Spring 实现远程访问详解——rmi

    3. Hessian: 通过 HessianProxyFactoryBean 和 HessianServiceExporter,可以使用Caucho提供的基于HTTP的轻量级二进制协议来透明地暴露服务。 4. Burlap: Burlap是Caucho的另外一个子项目,可以作为Hessian基于XML的...

    hessian远程通信

    3. 配置Hessian服务发布:在Spring配置文件中,使用`&lt;bean&gt;`标签的`class`属性设置为`org.springframework.remoting.caucho.HessianServiceExporter`,并将服务接口和实现绑定到Hessian服务上。 ```xml ...

Global site tag (gtag.js) - Google Analytics