【转】Weblogic上servletContext.getRealPath函数返回Null_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > 【转】Weblogic上servletContext.getRealPath函数返回Null

【转】Weblogic上servletContext.getRealPath函数返回Null

 2013/11/19 12:27:32  qingyuexiao  程序员俱乐部  我要评论(0)
  • 摘要:------------------------------------以下为原文-------------------------------------一、问题描述:1.当应用以WAR的形式布署到WebLogic时,代码中的servletContext.getRealPath函数为空。(不包含以目录形式发布的情况)2.发布或启动应用时出现如下异常信息:CannotsetwebapprootsystempropertywhenWARfileisnotexpanded二、涉及版本
  • 标签:Web 函数 Servlet 函数返回
------------------------------------以下为原文-------------------------------------

一、问题描述:

1.当应用以WAR的形式布署到WebLogic时,代码中的servletContext.getRealPath函数为空。(不包含以目录形式发布的情况)

2.发布或启动应用时出现如下异常信息:

Cannot set web app root system property when WAR file is not expanded

二、涉及版本

WebLogic的各版本都可能有此问题。

三、问题原因:

WebLogic在发布WAR格式的应用时,servletContext.getRealPath的默认实现仅返回Null。

四、解决方案:

在应用的WEB-INF/weblogic.xml文件中(如没有请自行创建),<container-descriptor>元素内加入配置片断<show-archived-real-path-enabled>true</show-archived-real-path-enabled>。

即:
class="xml">
<?xml version="1.0" encoding="UTF-8"?>
<!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>
    <show-archived-real-path-enabled>true</show-archived-real-path-enabled>
  </container-descriptor>
</weblogic-web-app>


-------------------------------------------------------------------------------

碰到同样问题,该入weblogic.xml后,servletContext.getRealPath取值正常。

原文地址:http://wiki.bsdn.org/pages/viewpage.action?pageId=3440713
发表评论
用户名: 匿名