我在RAD 7.5上有一個Web應用程序。我正在使用Maven構建應用程序並在WebSphere 6.1上進行部署。java.io.FileNotFoundException的原因:類路徑資源[services.xml]無法打開,因爲它不存在
我的web.xml的部分是:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:services.xml</param-value>
</context-param>
這是我引用的services.xml的唯一地方。
我的services.xml是在文件夾
FruitApplication/src/main/resources/services.xml
與Maven構建後,services.xml的是在目標文件夾
target/FruitApplication-1.0.0/WEB-INF/classes/services.xml
在部署下面的路徑,我不斷得到下面提到錯誤。但是,在構建應用程序兩次時,它會自行消失,然後再次隨意再次出現。
這個錯誤的真正原因是什麼? 如何解決這個錯誤?
我的services.xml的頂部看起來像:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jee="http://www.springframework.org/schema/jee"
xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.1.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd">
是,這裏需要改變的東西???
下面是我使用的「行家安裝」完整的pom.xml:我已經嘗試了所有的以下三個選項
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>FruitApplication</groupId>
<artifactId>FruitApplication</artifactId>
<packaging>war</packaging>
<version>1.0.0</version>
<build>
<plugins>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>2.0.1</version>
<configuration>
<archive>
<manifestFile>
src/main/webapp/META-INF/MANIFEST.MF
</manifestFile>
</archive>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
... dependencies here ...
</dependencies>
</project>
:
<param-value>classpath:services.xml</param-value>
<param-value>classpath:/services.xml</param-value>
<param-value>WEB-INF/classes/services.xml</param-value>
如何我部署:
我通過右鍵單擊服務器並「添加或刪除應用程序」從服務器刪除應用程序
我正在執行「maven-clean」,然後在應用程序中運行爲「maven-install」,並通過右鍵單擊服務器並「添加或刪除應用程序」再次添加應用程序。
當您收到該錯誤時,您是否檢查WAR文件以查看文件是否確實存在於您期望的位置? – dbreaux
你如何部署?只要放下Maven在容器中產生的戰爭?你可以在你的問題中包含你的pom的build-> resources部分嗎? – smp7d
您是否在RAD,Websphere或兩者中遇到錯誤?由於@ smp7d建議使用資源階段幷包含將services.xml複製到顯式WEB-INF/classes和WEB-INF目錄的路徑。雖然WEB-INF不在classpath中,但可以嘗試使用它。 – Rajendra