首发地址 https://blog.leapmie.com/archives/344/
前言
weblogic的虚拟路径配置有两种:
- 一种是在项目下配置,即在weblogic.xml中配置,该方法配置的虚拟路径会带上项目的上下文,如项目访问路径为http://localhost:8000/myweb,则配置upload的虚拟路径地址为http://localhost:8000/myweb/upload/xxx.png,该配置方法网上随便就能搜到,不是本文重点;
- 另一种是不带项目上下文的,最终访问地址为http://localhost:8000/upload/xxx.png,本文着重探讨该方案的实现
约定
-
本例中需要访问的路径为
http://localhost:8000/upload/111.png
-
实际附件存放路径为
/var/upload/111.png
详细配置
-
在/var/upload目录下创建WEB-INF目录,然后添加
-
web.xml
内容如下<web-app></web-app>
-
weblogic.xml
内容如下<?xml version="1.0" encoding="UTF-8"?> <weblogic-web-app> <!-- 若要修改虚拟路径名称更改此处即可 --> <context-root>/upload</context-root> </weblogic-web-app>
-
-
修改domain下的config/config.xml,增加如下内容,然后启动服务即可
<app-deployment> <name>upload</name> <target>yourserver</target> <module-type>war</module-type> <source-path>/var/upload/</source-path> <deployment-order>100</deployment-order> <security-dd-model>DDOnly</security-dd-model> <staging-mode>nostage</staging-mode> <plan-staging-mode xsi:nil="true"></plan-staging-mode> <cache-in-app-directory>false</cache-in-app-directory> </app-deployment>.
-
配置详解
name
部署名称,无特殊作用target
填写为实际部署的服务名称source-path
需要映射的物理路径staging-mode
重点!!!此处必需设为nostage,表示不复制到webloigc的stage目录下- 其他配置项均为常规配置项
-
其他注意事项
- (如果是在界面上配置部署,生成的默认配置是
<staging-mode xsi:nil="true"></staging-mode>
,要修改为nostage时务必去掉xsi:nil="true"
,因为xsi:nil="true"
的意思是表示标签中的内容为空)
- (如果是在界面上配置部署,生成的默认配置是
附 关于stage
weblogic有三种部署模式
- nostage
不把项目复制到stage下,服务直接读取指定路径作为部署内容 - stage
把部署项目复制到服务的stage目录下 - External_Stage
借助第三方工具部署项目