在我非常简单的WebLogic 11g应用程序中,我遇到了令人沮丧的虚拟目录映射问题。我安装了WebLogic 11g OEPE,它安装了WebLogic Server 10.35。我相信这是正确安装的,因为我能够部署一个更复杂的应用程序,工作正常...除了我的虚拟目录映射问题。
我想从Web应用程序之外的目录H:\ Backup。
访问文件以下是我的整个应用程序,这些是我的完全文件。
wl_test / index.html中
<html>
<head><title>WebLogic Test</title></head>
<body>
<h1>This is another new test<br>
</body>
</html>
wl_test / WEB-INF / web.xml中
<web-app>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>
wl_test / WEB-INF / weblogic.xml中
<weblogic-web-app>
<virtual-directory-mapping>
<local-path>H:/Backup/</local-path>
<url-pattern>/files/*</url-pattern>
<url-pattern>*.txt</url-pattern>
</virtual-directory-mapping>
</weblogic-web-app>
当我访问HTML文件' http:// localhost:7002 / wl_test / index.html '时,它加载完全正常。
但是,当我尝试加载以下两个URL中的任何一个时,它们都会因HTTP 404错误而失败。是的,这两个文件,one.ini和asdf.txt都存在于H:\ Backup目录中。
这个琐碎的设置可能有什么问题?
我开始认为我不明白这是如何起作用的。
答案 0 :(得分:4)
我想我明白了改变了什么以及如何解决所有问题。
虚拟目录映射存在两个问题。
首先, local-path 不能是MS-DOS SUBSTed驱动器。我不明白为什么,但WebLogic不喜欢它。
其次,当 url-pattern 包含 / files / * 等文件夹时,该文件夹必须存在于 local-path 中。目录
这些都是在JRun服务器中允许的,这是从它移植的。
叹息, 兰迪斯蒂鲍尔
答案 1 :(得分:0)
我认为关于多个url-pattern元素的组合有一点傻瓜。这是一个示例,显示了我的档案中的共享404文件。
NotFoundWeb.war / WEB-INF / web.xml的一部分如下所示:
<error-page>
<error-code>404</error-code>
<location>/error/404.html</location>
</error-page>
NotFoundWeb.war / WEB-INF / weblogic.xml的一部分如下所示:
<wls:virtual-directory-mapping>
<wls:local-path>d:\temp\notfound</wls:local-path>
<wls:url-pattern>*.html</wls:url-pattern>
</wls:virtual-directory-mapping>
我在文件系统上有一个文件: d:\ TEMP \ NOTFOUND \错误\ 404.html
所以在运行时输入类似的内容: http://localhost:7001/NotFoundWeb/somebadurl
我从文件系统中获取了错误页面。
答案 2 :(得分:0)
GeneratedReports和/ app / reports是文件系统中的本地文件夹。这样,您可以将任何类型的文件放入生成的“报告”文件夹中:
<!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN" "http://www.bea.com/servers/wls810/dtd/weblogic810-web-jar.dtd">
<weblogic-web-app>
<container-descriptor>
<index-directory-enabled>true</index-directory-enabled>
</container-descriptor>
<virtual-directory-mapping>
<local-path>/app/reports</local-path>
<url-pattern>/generatedReports/*</url-pattern>
</virtual-directory-mapping>
</weblogic-web-app>