我的属性没有注入我的perso-servlet.xml(Maven2)

时间:2010-09-07 18:56:15

标签: maven-2 settings filtering

我不明白为什么我的属性没有注入我的perso-servlet.xml:

<!--  Facebook OAuth helper -->
<bean id="FacebookOAuthHelper" class="com.myapp.businessservices.common.facebook.FacebookOAuthHelper"
    p:apiKey="${facebook.apiKey}"
    p:secretkey="${facebook.secretkey}"
    p:clientId="${facebook.clientId}"
    p:permissions="${facebook.permissions}"
    p:serverIPRedirectURI="${facebook.serverIPRedirectURI}"
    p:applicationRedirectURI="${facebook.applicationRedirectURI}"
    p:authFilterURI="${facebook.authFilterURI}"/>

我的settings.xml(Maven 2):

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                    http://maven.apache.org/xsd/settings-1.0.0.xsd">  
<profiles>
    <profile>
        <activation>
            <!-- This must be set to true to tell maven that we want to use this profile (by default). -->
            <activeByDefault>true</activeByDefault>
        </activation>
        <properties>
            <!-- Enable the debug mode (for both Flex and Java modules)-->
            <debug>true</debug>

            <!-- Facebook plateform parameters -->

            <!-- General Sharehunter application parameters -->
            <facebook.apikey>xxxx</facebook.apikey>
            <facebook.secretkey>yyyyyy</facebook.secretkey>
            <facebook.clientId>zzzzz</facebook.clientId>

事实上,当我在 FacebookOAuthHelper bean中读取(在调试模式下)这些属性时,读取的值为:

${facebook.apiKey} => for apiKey property,
${facebook.secretkey}  => for secretkey property,
etc ...

Tomcat部署是可以的。

你能帮帮我吗?

1 个答案:

答案 0 :(得分:1)

Maven并没有真正“注入”属性(正如初始标记所暗示的那样),Maven在将资源复制到构建目录时过滤资源,并在此过程中用值替换标记。

不幸的是,你没有展示任何允许理解你的项目中如何设置过滤的东西,以及为什么在Tomcat下它们可以运行(是吗?)而不是“在调试模式下”。

您需要告诉我们更多信息,解释上述内容的含义,您正在做的事情,以及显示pom.xml的相关位。