Restlet 2.3 如何设置临时目录

Restlet 2.3 How to set temp directory

我正在使用带有 Jetty ext 的 Restlet 2.3。如何设置jar解压到的temp目录?

在另一个项目中仅使用 jetty 可以通过以下方式实现:

private void resetTempDirectory(WebAppContext context, String currentDir) {
        File tmpDir = new File(currentDir, ".tmp");
        tmpDir.deleteOnExit();
        tmpDir.mkdir();
        context.setTempDirectory(tmpDir);
    }

您可以在这里找到 Jetty 服务器连接器支持的所有参数:http://restlet.com/technical-resources/restlet-framework/javadocs/2.3/jse/ext/。临时目录似乎没有参数。

这里的信息是使用上下文配置服务器连接器的方法:http://restlet.com/technical-resources/restlet-framework/guide/2.3/core/base/connectors

我看了一下 Jetty 扩展。 Restlet 利用 class ServerJettyServerCall 分别创建 Jetty 服务器和处理请求。我看不到 class WebAppContext.

的任何用途

就是说,我不确定 Jetty/Restlet 是否解压;-) 您能给我一些关于您在其他项目中配置/使用 Jetty 的方式的提示吗?谢谢!

希望对你有帮助, 蒂埃里

如果你想解压一个文件到一个临时目录,你可以简单地使用"java.io.tmpdir"系统属性。

当您 运行 使用 Jetty 扩展的 Restlet 应用程序时,您不是 运行 连接 Jetty 的 servlet 容器,而是连接 Jetty 中处理套接字的部分。假设您正在 运行JVM 中运行一个程序。