前端页面的iframe中要求将本地的页面加载进来(不是项目部署目录下的,是windows目录的的html,如:D:/help/help.html),在程序运行是发现Chrome浏览器报错:Not allowed to load local resource,开始以为自己的路径写的有问题,但是后来注意到了 local resource 字样,开始改变搜索方向(遇到问题基本先搜索,再总结),发现是Chrome的安全机制造成的,使用虚拟目录可以解决加载local resource的问题。
1.在websphere 安装路径下的
\WebSphere\AppServer\profiles\AppSrv01\config\cells\yourCellName\applications\你的项目.ear\deployments\你的项目名称\src.war\WEB-INF\ibm-web-ext.xml 中增加如下设置:
<enable-file-serving value="true"/>
<file-serving-attribute name="extendedDocumentRoot" value="D:/exampleDir" />
其中 D:exampleDir就是你想要放入资源的项目外路径,
2.需要在项目的部署路径下找到相应的 ibm-web-ext.xml 添加如上的相同代码。
3.如果项目中是xmi文件则需要添加下面的代码:
根目录下增加:fileServingEnabled="true"
属性中添加: <fileServingAttributes xmi:id="FileServingAttribute_1" name="extendedDocumentRoot" value="D:/exampleDir"/>
4.我的是混合的,及websphere安装目录下,xml和xmi文件都有,但是项目部署路径下就只有xmi文件,所以我分别配置的虚拟目 录,xml按xml方式配置,xmi按xmi方式配置
4.测试是否成功:如 在D:/exampleDir下面有一个help.html文件,访问方式如下:
浏览器直接输入:http://localhost:9080/项目名/help.html,正常打开html文件说明配置成功了。
参考地址:https://blog.youkuaiyun.com/qq_24154837/article/details/52825796 非常感谢 hokory