我目前正在尝试为我的应用程序使用嵌入式 Tomcat,并尝试对其进行设置以获取 http 请求的 URL。
一些背景:
我在这里使用与帖子的第一个答案相同的代码:Howto embed Tomcat 6?
我所做的唯一改变是:
private String catalinaHome = "/home/xyz/tomcat"; // This dir is created and has full access permissions
另外,我正在查看:http: //tomcat.apache.org/tomcat-5.5-doc/catalina/docs/api/org/apache/catalina/startup/Embedded.html
我找不到 server.xml 和 tomcat-users.xml,所以我创建了一个 tomcat-users.xml,因为我遇到了一个异常:内存数据库文件 /home/xyz/tomcat/conf/tomcat-users.xml无法读取。
tomcat-users.xml:
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>
</tomcat-users>
代码使用 container.setRealm(new MemoryRealm()); 从这里看来:http: //tomcat.apache.org/tomcat-4.1-doc/catalina/funcspecs/fs-memory-realm.html我应该有一个 server.xml 文件,并且应该已经默认创建了一个.
1] 我需要创建一个 server.xml,其中的默认值应该是什么?我已经从这里放置了一个默认文件:http ://www.akadia.com/download/soug/tomcat/html/tomcat_server_xml.html ,但只是想知道正确的做法是什么?
2]当我访问http://localhost:8089/mywebapp/index.html时,我得到的只是请求的资源()不可用,尽管我在代码中的“webappDir”有一个 index.html 页面
3]我对嵌入式tomcat唯一需要的是拦截,以便在我的代码中获取传递给tomcat的URL。然后我可以解析 URL [做我的事情],然后创建一个 http 有效负载并发回一个 http 响应。
我会很感激任何指示,尤其是对于 3] ?
谢谢!