我是新的Spring和黑森,从来没有使用过他们。我想写一个小的Hello World程序,它清楚地显示了这个服务是如何工作的。我使用Maven来列出项目细节和依赖项。网上提供的黑森的资源不是完整的分步指南。如果我能得到帮助,我将不胜感激,如果有人谁曾写过粗麻布服务
f45qwnt81#
实现Hessian-callable服务的步骤是:
让我们看一个例子。创建一个Java接口:
public interface EchoService { String echoString(String value); }
字符串编写一个实现此接口的Java类:
public class EchoServiceImpl implements EchoService { public String echoString(String value) { return value; } }
型在web.xml文件中,配置一个servlet:
web.xml
<servlet> <servlet-name>/EchoService</servlet-name> <servlet-class>org.springframework.web.context.support.HttpRequestHandlerServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>/EchoService</servlet-name> <url-pattern>/remoting/EchoService</url-pattern> </servlet-mapping>
型在Spring application上下文中配置service class的示例:
<bean id="echoService" class="com.example.echo.EchoServiceImpl"/>
型在Spring应用程序上下文中配置导出器。bean名称必须与servlet名称匹配。
<bean name="/EchoService" class="org.springframework.remoting.caucho.HessianServiceExporter"> <property name="service" ref="echoService"/> <property name="serviceInterface" value="com.example.echo.EchoService"/> </bean>
型
fruv7luv2#
客户端必须创建远程接口的代理。您可以简单地编写JUnit-Test:
HessianProxyFactory proxyFactory = new HessianProxyFactory(); proxyFactory.setHessian2Reply(false); proxyFactory.setHessian2Request(false); com.example.echo.EchoService service = proxyFactory.create( com.example.echo.EchoService, "http://localhost:8080/<optional-context/>remoting/EchoService"); Assert.equals(service.echoString("test"), "test");
字符串
hc8w905p3#
这个问题很老了,投票最多的答案已经过时了:Spring的HessianServiceExporter在Spring 5.3中被弃用,并在Spring 6中被删除。目前实现Hessian可呼叫服务的步骤是:1.创建一个Java接口,定义客户端要调用的方法。1.编写一个实现此接口的Java类。1.扩展HessianServlet以实现相同的接口,并将业务逻辑委托给在步骤#2中创建的Java类(可以直接在servlet中实现此逻辑,但不推荐)。1.使用Spring的ServletRegistrationBean启用servlet。hessian-demo提供了一个在没有HessianServiceExporter的Sping Boot 应用程序中基于Hessian的Web服务的工作示例。您甚至可以使用基于Jakarta的Sping Boot 3。
HessianServiceExporter
HessianServlet
ServletRegistrationBean
3条答案
按热度按时间f45qwnt81#
实现Hessian-callable服务的步骤是:
让我们看一个例子。创建一个Java接口:
字符串
编写一个实现此接口的Java类:
型
在
web.xml
文件中,配置一个servlet:型
在Spring application上下文中配置service class的示例:
型
在Spring应用程序上下文中配置导出器。bean名称必须与servlet名称匹配。
型
fruv7luv2#
客户端必须创建远程接口的代理。您可以简单地编写JUnit-Test:
字符串
hc8w905p3#
这个问题很老了,投票最多的答案已经过时了:Spring的
HessianServiceExporter
在Spring 5.3中被弃用,并在Spring 6中被删除。目前实现Hessian可呼叫服务的步骤是:
1.创建一个Java接口,定义客户端要调用的方法。
1.编写一个实现此接口的Java类。
1.扩展
HessianServlet
以实现相同的接口,并将业务逻辑委托给在步骤#2中创建的Java类(可以直接在servlet中实现此逻辑,但不推荐)。1.使用Spring的
ServletRegistrationBean
启用servlet。hessian-demo提供了一个在没有
HessianServiceExporter
的Sping Boot 应用程序中基于Hessian的Web服务的工作示例。您甚至可以使用基于Jakarta的Sping Boot 3。