我正在开发一个需要Weblogic服务器的Web项目,并且在部署(在我的Macbook Pro上)之后我可以查看该站点的唯一方法是将应用程序名称指定为整个站点的前缀。 E.g。
http://localhost:7001/myapp-weblogic/
这打破了大量使用根URL访问资源的样式和JavaScript代码(例如/images/example.png)
虽然我可以通过编程方式将“/ my-app”添加到.jsp中的内容中,但我无法在我的.css文件中执行此操作。
我尝试在Weblogic>中设置“默认WebApp上下文根:”。控制台>环境>服务器> myserver >方案> HTTP - 但这不起作用。
这似乎应该是这么简单的事情。在IIS中,我只需在我的本地hosts文件中添加一行,并将主机名添加到我的IIS容器中 - 总共大约需要42秒。
127.0.0.1 myapp.local -> Let's me view my site at http://myapp.local
提前感谢您的任何见解!
UPDATE !! 我终于把事情搞定了。其中一些对我的设置非常具体,但希望对其他人有用。
为了让它正常工作,我需要做三件事和一件相关的事情:
所以我要做的另一件事是设置一个引用“/”的路径变量。当您请求路径(request.getContextPath();)时,如果_path变量不以“/”开头,则它不会在路径前加上“/”,如果您尝试使用<c:url context="${ _path }"
之类的东西它会引发异常。
最后一点是我在使用其他人的代码时遇到的问题。
答案 0 :(得分:3)
在application.xml中指定以下设置
<web>
<web-uri>yourweb.war</web-uri>
<context-root>/</context-root>
</web>
现在您可以在没有上下文根的情况下拨打电话
http://localhost:7001/
答案 1 :(得分:0)
我假设您正在使用weblogic来部署Java应用程序。
结构应该是'战争'文件。
有关您可以在此处找到的结构的更多信息。
http://www.openscope.net/2010/01/25/war-deployment-file-structure/
上下文根的名称(默认战争名称)也可以被覆盖
https://forums.oracle.com/forums/thread.jspa?messageID=10366462
希望它有所帮助。