`
- 浏览:
326958 次
- 性别:
- 来自:
上海
-
HessianServiceExporter only supports POST requests异常
服务端配置:
web.xml配置:
xml 代码
- <servlet>
- <servlet-name>remote</servlet-name>
- <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
- <load-on-startup>1</load-on-startup>
- </servlet>
-
- <servlet-mapping>
- <servlet-name>remote</servlet-name>
- <url-pattern>/remote/*</url-pattern>
- </servlet-mapping>
remote-servlet.xml配置:
xml 代码
- <bean name="/authService"
- class="org.springframework.remoting.caucho.HessianServiceExporter">
- <property name="service">
- <ref local="authService"/>
- </property>
- <property name="serviceInterface">
- <value>暴露的接口</value>
- </property>
- </bean>
客户端配置:
applicationContext-remote.xml
xml 代码
- <bean id="remoteAuthService" class="org.springframework.remoting.caucho.HessianProxyFactoryBean">
- <property name="serviceUrl">
- <value>IP:port/remote/authService</value>
- </property>
- <property name="serviceInterface">
- <value>远程接口</value>
- </property>
- </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注释掉还是会抛出异常,不知道为什么,请~!!!!!!!
注:该异常并不影响我们的远程操作,但启动时抛出个异常,毕竟不爽,希望遇到各位朋友能帮忙解答一下,在此谢谢啦
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
<bean id="userServiceExporter" class="org.springframework.remoting.caucho.HessianServiceExporter"> ``` 在服务器端配置完成后,我们可以通过`index.jsp`页面来测试Hessian服务是否正常工作。可以创建...
5. **异常处理与事务管理**:整合Hessian与Spring后,我们可以利用Spring的异常处理机制和事务管理功能。例如,当远程调用抛出异常时,Spring可以捕获并进行统一处理;同时,我们可以在方法上添加@Transactional注解...
在IT行业中,Spring框架是Java领域最常用的轻量级应用框架之一,而Hessian则是一种高效的RPC(Remote Procedure Call)协议,它允许我们通过HTTP协议透明地调用远程服务,就像调用本地方法一样。...
<bean id="hessianServiceExporter" class="org.springframework.remoting.caucho.HessianServiceExporter"> ``` 或者在web.xml中配置HessianServlet: ```xml <servlet-name>HessianServlet ...
如果方法中发生异常,事务会被回滚,这为开发者提供了便捷的事务管理能力。 至于Hessian,它是一种二进制的RPC协议,由Apache Commons Hessian项目提供。HessianWeb可能是一个用于处理Hessian协议的工具或者服务端...
HessianServiceExporter exporter = new HessianServiceExporter(); exporter.setService(myService); exporter.setServiceInterface(MyService.class); return exporter; } } ``` 在client端,我们需要配置`...
2. 异常处理:Hessian服务调用可能会出现网络异常、序列化异常等问题,需要在客户端进行异常捕获和处理。 3. 性能优化:Hessian虽然性能优于纯HTTP,但在高并发场景下仍需考虑服务端的负载均衡和缓存策略。 通过...
5. **异常处理**:在出现错误时,Hessian会抛出异常信息,这些异常需要在客户端适当地捕获和处理。 6. **优化与调试**:为了提升性能,我们可以调整Hessian的缓冲区大小,或者使用压缩来减小数据传输量。同时,通过...
首先,我们需要在Spring的配置文件中定义一个HessianServiceExporter,这个组件是服务提供者端用于发布Hessian服务的关键。然后,配置一个HessianProxyFactoryBean,它是服务消费者端用来创建Hessian客户端代理的...
在Spring中,我们可以使用`HessianServiceExporter`或`HessianProxyFactoryBean`来实现这一目标。服务提供者将服务组件声明为Spring Bean,并使用`HessianServiceExporter`导出为Hession服务。而服务消费者同样在...
3. **异常处理**:在服务端和客户端都需要进行异常捕获和处理,确保错误信息能准确传递。 总结,Spring 4结合Hessian 4提供了简单、高效的远程服务调用解决方案。通过这个实例,我们可以了解到如何在Spring应用中...
当客户端需要调用远程服务时,它会将请求参数序列化为Hessian格式的数据包并通过HTTP POST请求发送到服务器。服务器接收到请求后,解析Hessian格式的数据包并执行相应的业务逻辑,然后将结果也序列化为Hessian格式的...
RMI允许对象方法跨虚拟机(VM)边界被调用,Spring通过`java.rmi.Remote`接口和`java.rmi.RemoteException`异常处理机制,简化了RMI的配置和使用,使得开发者可以更容易地创建和消费RMI服务。 ### 2. HTTP Invoker ...
Hessian是一种二进制协议,它允许Java和.NET应用程序之间进行高效的远程方法调用(RMI)。...Hessian提供了序列化和反序列化...在实际开发中,你可能需要根据具体需求进行调整和优化,例如添加异常处理、性能监控等功能。
你需要提供一个实现业务逻辑的对象和一个服务接口,HessianServiceExporter会处理剩下的工作。 - **HessianSerializer**:负责对象的序列化和反序列化。它将.NET对象转换为Hessian二进制格式,以便在网络上传输,...
对于源码探索,你可以查看Spring的`HessianServiceExporter`和`HessianProxyFactory`类,理解它们如何处理服务的发布和消费。对于工具的使用,你可以借助IDE如IntelliJ IDEA或者Eclipse进行代码编写,使用Postman等...
1. **Spring核心模块**(spring-core-3.2.0.RELEASE.jar):这是Spring框架的基础,提供了基本的IoC(Inversion of Control)和DI功能,以及资源加载和异常处理机制。 2. **Spring上下文模块**(spring-context-...
<bean id="userServiceExporter" class="org.springframework.remoting.caucho.HessianServiceExporter"> ``` 这样,我们就将`UserService`暴露为一个Hessian服务。然后,在客户端,我们需要创建一个`...
3. Hessian: 通过 HessianProxyFactoryBean 和 HessianServiceExporter,可以使用Caucho提供的基于HTTP的轻量级二进制协议来透明地暴露服务。 4. Burlap: Burlap是Caucho的另外一个子项目,可以作为Hessian基于XML的...
3. 配置Hessian服务发布:在Spring配置文件中,使用`<bean>`标签的`class`属性设置为`org.springframework.remoting.caucho.HessianServiceExporter`,并将服务接口和实现绑定到Hessian服务上。 ```xml ...