}
public void invoke(RequestWrapper rw,
AbstractHessianInput in, AbstractHessianOutput out)
throws Exception {
ServiceContext context = ServiceContext.getContext();
String serviceName = rw.getServiceName();
// backward compatibility for some frameworks that don't read
// the call type first
in.skipOptionalCall();
// Hessian 1.0 backward compatibility
String header;
while ((header = in.readHeader()) != null) {
Object value = in.readObject();
context.addHeader(header, value);
}
ServiceMetaData metaData = MetadataProcessor.getServiceMetaData(serviceName);
if (metaData == null) {
log.error("service " + serviceName+ " can't find.");
out.writeFault("NoSuchService","service " + serviceName+ " can't find.", null);