默认情况下,访问Restlet发布的资源时,会出现如下的访问日志
2013-05-31 22:19:28 127.0.0.1 - 127.0.0.1 8183 GET / - 200 111 0 4734 https://localhost:8183 Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET4.0C; .NET4.0E) -
比如下面代码写的一个Http server的例子,该例子配置了HTTPS,Restlet内置的传输层安全ssl,应用于数据需要加密传输、同时认证服务端和客户端的场景。下面的场景可做到客户端对服务端的认证。
import java.util.logging.Level;
import org.restlet.Component;
import org.restlet.Server;
import org.restlet.data.Parameter;
import org.restlet.data.Protocol;
import org.restlet.util.Series;
/**
*
* @author bestree007
*
*/
public class HelloServer {
public static void main(String[] args) throws Exception {
Component mailServer = new Component();
mailServer.getLogger().setLevel(Level.ALL);
Server server = mailServer.getServers().add(Protocol.HTTPS, 8183);
Series<Parameter> parameters = server.getContext().getParameters();
parameters.add("keystorePath",
"C:\\Documents and Settings\\Administrator\\serverKey.jks");
parameters.add("keystorePassword", "helloworld");
parameters.add("keystoreType", "JKS");
parameters.add("keyPassword", "helloworld");
mailServer.getDefaultHost().attach(new MailServerApplication());
mailServer.start();
}
}
通过浏览器,输入网址https://localhost:8183/,一般情况下会收到安全提示。
转入正题,如何去掉服务的访问日志,在服务的代码中加上
mailServer.getLogger().setLevel(Level.SEVERE);
在不改动代码的情下,因为Restlet默认使用的是java提供的日志机制,需要修改jdk路径或者容器(比如如果作为应用部署到tomcat下)路径下的logging.properties文件,修改成SEVERE即可。