SORU
21 Temmuz 2010, ÇARŞAMBA


Maven: web-Uygulama Projesi web.xml Özelleştirme

Web uygulama Maven bir projem var ve çalıştığı web.xml dosya Profili bağlı olarak özelleştirmek istiyorum. Beni tanımlayan Maven-Savaş-eklenti, bir "kaynak dosyaları süzülmüş olabilir." dizinini kullanıyorum Ancak, tek başına filtreleme benim için yeterli değil.

Daha ayrıntılı olarak, istiyorumvardır (veya dışarıda)bütün bölüm güvenlik, tercihe bağlı bir çalışan. Bu parçasıdır:

....
....

<security-constraint>

    <web-resource-collection>
        <web-resource-name>protected</web-resource-name>
        <url-pattern>/pages/*.xhtml</url-pattern>
        <url-pattern>/pages/*.jsp</url-pattern>
    </web-resource-collection>

    <auth-constraint>
        <role-name>*</role-name>
    </auth-constraint>

    </security-constraint>
        <login-config>
        <auth-method>${web.modules.auth.type}</auth-method>
        <realm-name>MyRealm</realm-name>
    </login-config>

<security-constraint>

....
....

Eğer bu iş kolay değil, iki web.xml dosyaları var ve uygun bir profile bağlı olarak seçmek için bir yolu var mı?

CEVAP
21 Temmuz 2010, ÇARŞAMBA


bir şekilde iki web.xml dosyaları var ve uygun bir profile bağlı olarak seçin.

Evet, her profil içinde maven-war-plugin ve yapılandırma her bir yapılandırma farklı web.xml noktası ekleyebilirsiniz.

<profiles>
    <profile>
        <id>profile1</id>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-war-plugin</artifactId>
                    <configuration>
                        <webXml>/path/to/webXml1</webXml>
                    </configuration>
                </plugin>
                 ...

Her profil maven-war-plugin yapılandırma belirtmek zorunda alternatif olarak, POM ana bölümünde varsayılan bir yapılandırma kaynağı ve sadece belirli profiller için bunu geçersiz kılabilirsiniz.

Ya da daha basit, POM <build><plugins> temel bir özelliği, webXml öznitelik bakın ve sadece farklı tercihler var değerini değiştirmek için kullanın

<properties>
    <webXmlPath>path/to/default/webXml</webXmlPath>
</properties>
<profiles>
    <profile>
        <id>profile1</id>
        <properties>
            <webXmlPath>path/to/custom/webXml</webXmlPath>
        </properties>
    </profile>
</profiles>
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <configuration>
                <webXml>${webXmlPath}</webXml>
            </configuration>
        </plugin>
        ...

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Flohoo

    Flohoo

    12 EYLÜL 2009
  • HTC Tutorials

    HTC Tutorial

    21 EYLÜL 2010
  • ShoSho

    ShoSho

    20 Ocak 2010