|
| |
Find this tutorial in: /usr/local/resin/webapps/resin-doc/protocols/tutorial/hessian-service
Try the Tutorial
Writing a Hessian service as a plain-old Java object (POJO)
eliminates protocol dependencies and simplifies service testing.
The addition example built the Hessian
service as an extension of HessianService for simplicity. Most services
will want to be independent of the Hessian protocol itself.
The MathService implementation is just a Java class that implements
the MatchService API.
MathServiceImpl.java
package example;
public class MathServiceImpl implements MathService {
public int add(int a, int b)
{
return a + b;
}
}
|
The Java interface describes the remote API. This example has an
addition method, add().
Resin's proxy client implementation uses the remote interface to
expose the API to the proxy stub. Strictly speaking, though,
the Java remote interface is not required for Hessian. A non-Java client
will not use the Java interface, except possibly as documentation.
MathService.java
package example;
public interface MathService {
public int add(int a, int b);
}
|
web.xml
<servlet servlet-name="hessian"
servlet-class="com.caucho.hessian.server.HessianServlet">
<init-param service-class="example.MathServiceImpl"/>
<init-param api-class="example.MathService"/>
</servlet>
|
The client is identical to the basic example.
client.jsp
<%@ page import="com.caucho.hessian.client.HessianProxyFactory" %>
<%@ page import="example.MathService" %>
<%
HessianProxyFactory factory = new HessianProxyFactory();
// http://localhost:8080/resin-doc/protocols/tutorial/hessian-service/hessian/math
String url = ("http://" +
request.getServerName() + ":" + request.getServerPort() +
request.getContextPath() + "/hessian/math");
MathService math = (MathService) factory.create(MathService.class, url);
out.println("3 + 2 = " + math.add(3, 2));
%>
|
Try the Tutorial
Copyright © 1998-2006 Caucho Technology, Inc. All rights reserved.
Resin® is a registered trademark,
and HardCoretm and Quercustm are trademarks of Caucho Technology, Inc. | |
|