Java 如何在Grizzly http服务器中为Jersey设置模板基路径?

Java 如何在Grizzly http服务器中为Jersey设置模板基路径?,java,jersey,grizzly,Java,Jersey,Grizzly,使用ApacheJersey和GrizzlyHTTP服务器,如何设置基本模板路径 因为我没有使用Servlet容器,所以我用绝对文件路径分配模板基本路径。但泽西岛的反应是404 下面是我的项目设置 项目目录: src └─ java ..... └─ resources    └─ templates └─ index.mustache public class ExampleApplication extends ResourceConfig { pub

使用ApacheJersey和GrizzlyHTTP服务器,如何设置基本模板路径

因为我没有使用Servlet容器,所以我用绝对文件路径分配模板基本路径。但泽西岛的反应是404

下面是我的项目设置

项目目录

src
 └─ java
      .....
 └─ resources
    └─ templates
       └─ index.mustache
public class ExampleApplication extends ResourceConfig {

  public CustomTableApplication() {
    packages("com.example.app");

    setupTemplateEngine();
  }

  private void setupTemplateEngine() {
    property(MvcFeature.TEMPLATE_BASE_PATH, "/templates/");
    register(MustacheMvcFeature.class);
  }
}
@Path("/")
public class Index {

  @GET
  @Template(name = "index")
  public String index() {
    return "";
  }
}
HttpServer server = new HttpServer();
NetworkListener listener = new NetworkListener("example", "localhost", 8080);
server.addListener(listener);

ServerConfiguration config = server.getServerConfiguration();
config.addHttpHandler(createJerseyHandler(), "/*");
应用程序

src
 └─ java
      .....
 └─ resources
    └─ templates
       └─ index.mustache
public class ExampleApplication extends ResourceConfig {

  public CustomTableApplication() {
    packages("com.example.app");

    setupTemplateEngine();
  }

  private void setupTemplateEngine() {
    property(MvcFeature.TEMPLATE_BASE_PATH, "/templates/");
    register(MustacheMvcFeature.class);
  }
}
@Path("/")
public class Index {

  @GET
  @Template(name = "index")
  public String index() {
    return "";
  }
}
HttpServer server = new HttpServer();
NetworkListener listener = new NetworkListener("example", "localhost", 8080);
server.addListener(listener);

ServerConfiguration config = server.getServerConfiguration();
config.addHttpHandler(createJerseyHandler(), "/*");
控制器

src
 └─ java
      .....
 └─ resources
    └─ templates
       └─ index.mustache
public class ExampleApplication extends ResourceConfig {

  public CustomTableApplication() {
    packages("com.example.app");

    setupTemplateEngine();
  }

  private void setupTemplateEngine() {
    property(MvcFeature.TEMPLATE_BASE_PATH, "/templates/");
    register(MustacheMvcFeature.class);
  }
}
@Path("/")
public class Index {

  @GET
  @Template(name = "index")
  public String index() {
    return "";
  }
}
HttpServer server = new HttpServer();
NetworkListener listener = new NetworkListener("example", "localhost", 8080);
server.addListener(listener);

ServerConfiguration config = server.getServerConfiguration();
config.addHttpHandler(createJerseyHandler(), "/*");
如何创建HttpServer

src
 └─ java
      .....
 └─ resources
    └─ templates
       └─ index.mustache
public class ExampleApplication extends ResourceConfig {

  public CustomTableApplication() {
    packages("com.example.app");

    setupTemplateEngine();
  }

  private void setupTemplateEngine() {
    property(MvcFeature.TEMPLATE_BASE_PATH, "/templates/");
    register(MustacheMvcFeature.class);
  }
}
@Path("/")
public class Index {

  @GET
  @Template(name = "index")
  public String index() {
    return "";
  }
}
HttpServer server = new HttpServer();
NetworkListener listener = new NetworkListener("example", "localhost", 8080);
server.addListener(listener);

ServerConfiguration config = server.getServerConfiguration();
config.addHttpHandler(createJerseyHandler(), "/*");

我误解了在解析模板名称时如何查找模板文件

使用资源
com.example.app.Index
和模板基本路径
/templates

相对模板参考
@Template(name=“index”)

/templates/com/example/app/Index/Index.mustache

绝对模板参考
@Template(name=“/index”)

/templates/index.mustache

有关更多详细信息,请参阅文档

请。尝试注册HttpHandler,如:config.addHttpHandler(createJerseyHandler(),“/*”);createJerseyHandler()究竟返回什么?是否有用于胡须的HTTPHandler?