您好,我是 Tomcat 开发的新手,有一个问题。
当我尝试开发 REST Servlet 时,它在 netbeans 和 tomcat 8 的开发下工作,但是当我尝试创建 .war 文件并通过 Web 界面将其加载到远程 tomcat 时,它不起作用。
所以我刚刚在 Netbeans 中创建了一个新的 Web 应用程序并对其进行了一些更改:
@Path("test1")
public class GenericResource {
@Context
private UriInfo context;
public GenericResource() {
}
@GET
@Produces("application/xml")
public String getXml() {
return "<xml rest='cool'></xml>";
}
}
和
package test;
import java.util.Set;
import javax.ws.rs.core.Application;
@javax.ws.rs.ApplicationPath("test")
public class ApplicationConfig extends Application {
@Override
public Set<Class<?>> getClasses() {
Set<Class<?>> resources = new java.util.HashSet<>();
addRestResourceClasses(resources);
return resources;
}
private void addRestResourceClasses(Set<Class<?>> resources) {
resources.add(test.GenericResource.class);
}
}
所以当我在 Netbeans 中部署它时,它可以完美地使用
http://localhost:8080/ServerTest/test/test1
但是当我创建一个 war 并将其开发到远程 tomcat 时 - 当我使用“http://xyz.at/ServerTest/test/test1”时它只显示错误 404
但是为什么?我听说当我使用 servlet 3.0 时不应该发生这种情况。
编辑:
index.html 之前可以工作 - 只有其余服务(GET、POST)还不能工作。
这很有趣,因为在 netbeans 中它工作得很好。
我刚刚注意到在开发中我有 tomcat 8.0.9 但在远程服务器上我有 8.0.15 - 这会造成麻烦吗?
最佳答案
关于REST Servlet 正在开发中,但在远程 Tomcat 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27255871/